2017-12-05 23 views
1

ParaView에 표시 될 때 다른 영역에 속한 비 구조적 그리드의 표시를 독립적으로 전환 할 수 있기를 원합니다. 따라서 아래 그림과 같이 vtkMultiBlockDataSet을 사용하여 vtm 파일이 출력되었습니다. 그러나 PraView로 표시하려고 할 때 두 개의 vtkcell이 겹치는 곳에 깜박임이 발생했습니다. 깜박임 제거 방법을 알려 주시면 기쁘게 생각합니다. PraView로 표시하려고 할 때 두 개의 vtkcell이 중첩되는 위치에서 깜박임이 발생합니다.

vtkSmartPointer<vtkMultiBlockDataSet> mb = 
    vtkSmartPointer<vtkMultiBlockDataSet>::New(); 
int numRegions = 2; 
mb->SetNumberOfBlocks(numRegions); 
mb->SetBlock(0, MakeHexahedron()); 
mb->SetBlock(1, MakeHexagonalPrism()); 

vtkSmartPointer<vtkXMLMultiBlockDataWriter> writer = 
    vtkSmartPointer<vtkXMLMultiBlockDataWriter>::New(); 
writer->SetFileName(filename); 
writer->SetInputData(mb); 
writer->Write(); 

MakeHexahedron()MakeHexagonalPrism() 복귀 vtkSmartPointer<vtkUnstructuredGrid>, 두 vtkcells의 표면이 서로 접촉하고있다.

나는 vtk 7, 우분투 16.04, paraview 5.2를 사용하고 있습니다.

답변

1

vtkMultiBlockDataSet을 사용할 때 vtkExtractBlock 클래스 나 ParaView의 해당 필터를 사용하여 각 요소와 독립적으로 상호 작용할 수 있다고 생각합니다. 그러나 제 생각에는 데이터 세트가 공통 셀을 공유하는 한 렌더링시 깜박 거립니다.

이 문제를 해결하는 또 다른 방법은 vtkAppendFilter 데이터 집합을 추가하고 Clean to grid ParaView 필터를 사용하여 공용 셀을 제거함으로써 깜박임을 제거하는 것입니다.