2017-01-24 4 views
0

나는 한 달 동안 VTK를 사용 해왔고, 나는 그것이 최고의 시각화 도구라는 것을 알아 냈다. PhD는 VTK를 사용하여 수백 개의 타원체와 점군을 시각화하려고합니다. 지금까지, 나는 첨부 된 그림과 같이 타원체와 구름을 성공적으로 시각화했다. 그러나 개발되어야합니다. 일부 음영 및 조명 효과가 없으면 개별 타원체 (녹색으로 표시)를 구별하는 것이 불가능합니다. 예를 들어, 왼쪽 상단에 몇 개의 타원체가 있지만 구별 할 수는 없습니다. 이 문제에 대해 저를 도울 수 있습니까? 어떻게 구분할 수 있습니까? 나는 당신의 의견을 기다리고 있습니다. Elipsoids and point cloud기하학적 모양의 시각화 향상

+0

테두리를 추가하려 했습니까? –

답변

0

실루엣을 사용하여 개체를 구분할 수 있습니다. vtkPolyDataSilhouette 클래스를 사용하여 실루엣을 추출하고 시각화하는 코드를 첨부하십시오.

vtkSmartPointer<vtkPolyDataSilhouette> silhouette = vtkSmartPointer<vtkPolyDataSilhouette>::New(); 
silhouette->SetInputData(surface->GetOutput()); 
silhouette->SetCamera(renderer->GetActiveCamera()); 
silhouette->SetEnableFeatureAngle(1); 
silhouette->SetFeatureAngle(90); 

vtkSmartPointer<vtkPolyDataMapper> silhouetteMapper = vtkSmartPointer<vtkPolyDataMapper>::New(); 
silhouetteMapper->SetInputConnection(silhouette->GetOutputPort()); 
silhouetteMapper->Update(); 

vtkSmartPointer<vtkActor> silhouetteActor = vtkSmartPointer<vtkActor>::New(); 
silhouetteActor->SetMapper(silhouetteMapper); 

renderer->AddActor(silhouetteActor); 

또 다른 방법은 추출하여 vtkContourFilter 클래스를 사용하여 윤곽을 시각화한다. 다음은 수업 사용 방법의 예를 찾을 수 있습니다. https://itk.org/Wiki/VTK/Examples/Cxx/PolyData/ExternalContour

+0

diffuse color 속성을 사용했으며 훨씬 더 좋습니다. 그건 그렇고, 내가 vtkPolyDataSilhouette 클래스를 시도했지만 vtkParametricSuperEllipsoid 클래스 GetOutput() metfod를 지원하지 않습니다 오류 메시지가있어. – user887912