def __init__(self, module_manager): SimpleVTKClassModuleBase.__init__( self, module_manager, vtk.vtkMultiBlockMergeFilter(), 'Processing.', ('vtkMultiBlockDataSet',), ('vtkMultiBlockDataSet',), replaceDoc=True, inputFunctions=None, outputFunctions=None)
def __init__(self, module_manager): SimpleVTKClassModuleBase.__init__(self, module_manager, vtk.vtkMultiBlockMergeFilter(), 'Processing.', ('vtkMultiBlockDataSet', ), ('vtkMultiBlockDataSet', ), replaceDoc=True, inputFunctions=None, outputFunctions=None)
def __youngs_material_interface__(GetOutput): # Reconstruct material interface # http://vtk.org/gitweb?p=VTK.git;a=blob;f=Examples/Graphics/Python/SingleYoungsMaterialInterface.py if (not GetOutput.IsA("vtkCompositeDataSet")): print "[__youngs_material_interface__] ERROR: \'%s\' != \'vtkCompositeDataSet\' " % GetOutput.GetClassName( ) sys.exit() meshMB = vtk.vtkMultiBlockDataSet() meshMB.SafeDownCast(GetOutput) meshMB.Update() interface = vtk.vtkYoungsMaterialInterface() if vtk.VTK_MAJOR_VERSION <= 5: interface.SetInput(meshMB) else: interface.SetInputData(meshMB) interface.SetNumberOfMaterials(1) interface.SetMaterialVolumeFractionArray(0, "CurrentFlatIndex") interface.SetVolumeFractionRange(.001, .999) interface.FillMaterialOn() #interface.UseAllBlocksOff() #interface.UseAllBlocksOn() interface.Update() Merge = vtk.vtkMultiBlockMergeFilter() if vtk.VTK_MAJOR_VERSION <= 5: Merge.AddInput(interface.GetOutput()) else: Merge.AddInputData(interface.GetOutput()) Merge.Update() #__save_vtp__("XXX", Merge.GetOutput() ) __save_vtm__("XXX", Merge.GetOutput()) #__save_vtm__("XXX", interface.GetOutput() ) return interface
def load_vtk_structured(self, file_name): self.fname = file_name #reader = vtk.vtkUnstructuredGridReader() reader = vtk.vtkXMLMultiBlockDataReader() reader.SetFileName(file_name) reader.Update() Merge = vtk.vtkMultiBlockMergeFilter() Merge.AddInput(reader.GetOutput()) Merge.Update() Mb = vtk.vtkStructuredGridOutlineFilter() if vtk.VTK_MAJOR_VERSION <= 5: Mb.SetInput(Merge.GetOutput()) else: Mb.SetInputData(Merge.GetOutput()) Geom01 = vtk.vtkCompositeDataGeometryFilter() Geom01.SetInputConnection(Merge.GetOutputPort()) self.output = Geom01.GetOutput() self.vtk_pts = self.output.GetPointData() self.vtk_n_pts = self.output.GetNumberOfPoints() self.vtk_n_cells = self.output.GetNumberOfCells() self.vtk_n_props = self.vtk_pts.GetNumberOfArrays() self.reader = reader #get_range = self.output.GetScalarRange() #print get_range print " [Vtk_unstructured_reader]:" print " Cells: %d" % (self.vtk_n_cells) print " Point: %d" % (self.vtk_n_pts) print " Props: ", for i in range(self.vtk_n_props): print "\'%s\'" % (self.vtk_pts.GetArrayName(i)), print print "\n+[Vtk_multiblock_reader]: \'%s\'" % file_name
def set_multiblock_merge(self): meshMB = self.eg.GetOutput() Merge = vtk.vtkMultiBlockMergeFilter() if vtk.VTK_MAJOR_VERSION <= 5: Merge.AddInput(meshMB) else: Merge.AddInputData(meshMB) Merge.Update() self.Merge = Merge.GetOutput().GetBlock(0) self.PtsIds = vtk.vtkIntArray() self.PtsIds.SetName("PtsIds") self.PtsIds.SetNumberOfComponents(meshMB.GetNumberOfBlocks()) self.PtsIds.SetNumberOfTuples(self.Merge.GetNumberOfPoints()) k = 0 for i in range(self.Merge.GetNumberOfPoints()): for j in range(meshMB.GetNumberOfBlocks()): self.PtsIds.SetValue(k, -1) k += 1 self.CellIds = vtk.vtkIntArray() self.CellIds.SetName("CellIds") self.CellIds.SetNumberOfComponents(meshMB.GetNumberOfBlocks()) self.CellIds.SetNumberOfTuples(self.Merge.GetNumberOfCells()) k = 0 for i in range(self.Merge.GetNumberOfCells()): for j in range(meshMB.GetNumberOfBlocks()): self.CellIds.SetValue(k, -(j + 1)) k += 1 self.pointLocator = vtk.vtkPointLocator() self.pointLocator.SetDataSet(self.Merge) self.pointLocator.BuildLocator() print "[set_multiblock_merge] "
def set_composite(self): self.Merge = vtk.vtkMultiBlockMergeFilter() self.AppendFilter = vtk.vtkAppendFilter() __set_composite__(self.Obj, self.Merge, self.AppendFilter)
def set_composite(self): self.Merge = vtk.vtkMultiBlockMergeFilter() self.AppendFilter = vtk.vtkAppendFilter() #self.AppendFilter = vtk.vtkAppendPolyData() tools.__set_composite__(self.Obj, self.Merge, self.AppendFilter)