pyvista/pymeshfix

Python Wrapper for MeshFix: easily repair holes in surface meshes

해결하는 문제

PyMeshFix는 구멍, 자기 교차, 특이점, 퇴화 요소와 같이 원시 디지털화된 3D 메쉬 모델의 일반적인 결함을 수정합니다. 폴리곤 메쉬를 입력으로 받아 결함이 없는 영역은 그대로 유지하면서 고체 객체를 감싸는 깨끗하고 방수 기능이 있는 삼각형 메쉬를 생성합니다.

작동 방식

Cython을 사용하여 C++ MeshFix 라이브러리 (v2.1)를 래핑함으로써 C++의 속도와 Python의 사용 편의성을 결합했습니다. 입력은 파일이나 정점 및 면으로 구성된 numpy 배열로 제공할 수 있습니다. 복구 프로세스는 고수준 인터페이스 (MeshFix 클래스) 또는 저수준 Cython 래퍼 (PyTMesh)를 통해 실행할 수 있으며, 후자는 작은 경계 메우기, 가까운 구성 요소 결합, 자기 교차 정리와 같은 단계를 더 세밀하게 제어할 수 있습니다. 출력은 파일로 저장하거나 배열로 반환할 수 있으며, 선택적으로 PyVista를 사용하여 시각화할 수 있습니다.

대상 사용자

폴리곤 메쉬를 다루는 개발자 및 연구자, 특히 원시 스캔 데이터나 디지털화된 3D 데이터를 다루는 분들에게 적합합니다. 추가 처리, 분석 또는 3D 프린팅을 위해 닫힌 방수 메쉬가 필요한 모든 분들에게 유용합니다. 선택적인 PyVista 통합은 플로팅 및 VTK 기반 워크플로우를 원하는 Python 사용자에게 매우 편리합니다.

주요 특징

  • pip를 통한 쉬운 설치로 C++ MeshFix의 속도를 Python에서 활용할 수 있습니다.
  • 파일 기반 복구와 메모리 내 numpy 배열 복구를 모두 지원합니다.
  • 고수준 MeshFix 클래스와 세밀한 제어를 위한 저수준 PyTMesh 래퍼라는 두 가지 사용 수준을 제공합니다.
  • 직접적인 플로팅 및 메쉬 로딩을 위한 예제와 선택적인 PyVista 통합이 포함되어 있습니다.
  • 수상 경력이 있는 MeshFix 알고리즘을 기반으로 하며, 여러 가지 편의성 개선 사항이 포함되어 있습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트