N 차원 들로네 테셀레이션 소프트웨어 라이브러리


10

N- 차원 공간 (N> = 2)에 불규칙한 간격으로 알려진 점 / 노드 세트가 있으며이 점의 들로네 삼각 분할을 생성하고 해당 요소를 반환하는 방법을 원합니다.

ND 들로네 삼각 분할을 수행 할 기존 메시 라이브러리가 있습니까?

(공간의 어느 지점에서나 메쉬 보간을 선형 보간의 기초로 사용하고 싶기 때문에이 작업을 수행하고 있습니다. 제안과 다른 점이 있으면 치수에 대해 템플릿 된 C ++ 클래스가 현재 치수를 처리합니다 ...)


안녕하세요 mirams, scicomp에 오신 것을 환영합니다! 이 질문에 관심이있을 수도 있습니다 : scicomp.stackexchange.com/questions/770/…
Paul

링크 주셔서 감사합니다, 나는 내 자신의 mesher를 작성하지 않기를 바랐다. Tetgen (3D 용)은 많은 코드 줄로 실행됩니다. 여러 번 해결해야 할 문제인 것 같습니다.
mirams 2016 년


들로네 삼각 분할 (Delaunay Triangulation)은 일반적으로 더 높은 차원 공간에서 볼록 껍질로부터 파생됩니다. 아래의 qhull 설명을 참조하십시오.
meawoppl 2016 년

3D는 그렇게 어렵지는 않지만 4D의 경우 정제 할 때 매우 어렵습니다. MathOverflow에 대한 질문을했지만 아직 답이 없습니다. mathoverflow.net/questions/130878/…
Shuhao Cao

답변:


4

리프팅 알고리즘을 통해 볼록 껍질 소프트웨어 (예 : QHull)를 사용하여이 작업을 수행 할 수 있다고 생각합니다. 적어도 matlab의 "delaunayn"명령에 대한 문서는 많은 것을 나타내는 것 같습니다.


2
4D를 테스트했는데 QHull에서 제대로 작동하는 것 같습니다 (파이썬에서는 scipy.spatial을 통해 사용합니다).
Ethan Coon

1
당신은 qhull을 이길 수 없습니다. Scipy를 통해 최대 6 차원까지 사용했습니다.
meawoppl 2016 년

흠-이것은 qhull.org/news/qhull-news.html 에서 이상적이지 않습니다. " 3d 이상의 모든 사용자에서 옵션 'Qt'는 인접하고 비 임시적인 패싯에 대해 적합한 삼각 분할을 생성하지 않습니다. 입력 사이트의 규칙적인 3 차원 배열이있는 경우 들로네 삼각 분할은 큐브로 구성됩니다 .'Qt '옵션은 각 큐브를 4 면체로 삼각 분할합니다 각 큐브 내에서 삼각 분할은 일관되지만 인접 큐브간에 반드시 일치하지는 않습니다. [C. Bertoglio; C. de Visser].이 문제를 해결하는 방법은 알려져 있지 않습니다. " 그래도 시도해 볼 가치가 있습니다.
mirams 2016 년


0

또한 Matlab에서 이것을 할 수있는 것으로 보이는 distmesh를 발견했습니다.

Distmesh 홈페이지

유한 요소 메쉬 (QHull을 통해)에 대한 테셀레이션을 수행하지만 거리 함수를 기반으로 영역 / 표면을 정의하기위한 인터페이스가 훌륭합니다. 수학적으로 표면을 정의하고 내부 노드의 위치를 ​​신경 쓰지 않는 경우에 더 좋습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.