2016-08-05 5 views
1

나는 Blender 나 Maya와 같은 3d 어플리케이션으로부터 export 된 파일을 가지고있다. 파일을 읽을 수 있습니다. 각 삼각형과 정점 목록을 설명하는 인덱스로 끝납니다.3d mesh에서 연결된 삼각형을 찾는 법

파일에 연결된 메시가 두 개 이상있을 수 있습니다 (예 : 두 개의 구체). 연결된 삼각형을 찾아서 개별 메쉬를 선택하고 싶습니다. 이 작업을 수행하는 가장 좋은 방법은 무엇입니까? 어떤 기하학적 알고리즘을 사용할 수 있습니까? 어떤예요? 다중 스레드 일 수 있습니까?

+0

이것은 메시가 씬 그래프에서 노드를 분리하고 내보내기 타임에 전체 장면을 하나의 노드로 병합하지 않음으로써 더 잘 수행됩니다. – samgak

+0

참. 하지만 모든 파일을 저작 할 수 없기 때문에이를 보장 할 수는 없습니다. 제가 할 수있는 것은 정보를 추출하는 것뿐입니다. 3d 패키지에는 connectred 또는 linked 선택 명령이 있습니다. 나는 그들이 어떻게하는지 궁금해. – user6682440

+0

연결된 경우 꼭 꼭지점을 공유하거나 교차하는 것을 의미합니까? 첫 번째 경우 각 버텍스에 대한 인접성 정보를 생성하고 (해시 사용?) 임의의 버텍스부터 시작하여 버텍스를 방문한대로 표시합니다. – samgak

답변

2

그래프 솔루션이 필요합니다.

모든 데이터를 취하면 그래프의 노드가 정점이되고, 정점을 연결하는 에지가 그래프의 노드를 연결합니다. 방문한 모든 노드를 표시하는 DSF/BFS를 실행하십시오. 표시된 모든 노드는 동일한 오브젝트에 속합니다.

표시되지 않은 노드부터 다시 실행하여 추가 개체를 찾습니다.

그래프가 더 쉽다고 생각하면 병렬로 구성 할 수 있지만 기하학적 데이터로도 그래프를 구성 할 수 있어야합니다.

관련 문제