2015-02-03 2 views
4

나는 각 점에서 메쉬와 법선의 3D 점 집합을 가지고 있습니다. 점은 임의의 평면을 따라 3D 모델을 절단하여 얻은 동일한 평면에 놓입니다.3D 평면의 동일 평면 집합을 평면 2D 좌표에 매핑

문제는 -이 3D 점을 평면 2 차원 좌표 (u, v)에 매핑해야합니다.이 평면 좌표는 메쉬의 델라 네이 삼각 분할을 형성하는 데 사용할 수 있습니다. 그래서 저는이 3 차원 동일 점을 평면 2D 좌표로 변환하는 변환 행렬이 필요합니다.

감사합니다.

+0

나는 왜 당신이 매트릭스를 필요로하는지 모르겠다. C++을 사용하는 경우 CGAL 라이브러리에는 2D 삼각 측량을 수행하는 방법에 대한 예가 있습니다. 여기에서 3D 동일 평면 점 [http://doc.cgal.org/latest/Triangulation_2/index.html#title14]을 참조하십시오. – sloriot

+0

사실 삼각형 화를 위해 "삼각형"라이브러리를 사용하고 있는데, 2D 좌표가 필요합니다. 그래서 포인트를 로컬 2D 포인트로 변환해야합니다. – Nidhi

+1

그런 다음 u = y 및 v = z를 사용합니다. – sloriot

답변

1

간단한 해결책은 법선 벡터에 모든 점에서 수직 인 평면을 정의하는 것입니다. 이 경우, 각 벡터의 Z 구성 요소가 표면의 점과 동일하게 정의 된 평면에서 표면의 2 차원 표현을 제공하도록 0으로 지정하면됩니다. 그런 다음 변형 (또는 올바르게 rotation) 행렬이 평면에 대해 정의됩니다.

접근 방법에 대한 자세한 내용은 plane (Geometry)이고, 수행 방법에 대한 자세한 내용은 Defining a plane in R3 with a point and normal vector입니다.