vtkMergeCells Class Reference
#include <vtkMergeCells.h>
Inheritance diagram for vtkMergeCells:
[legend]Collaboration diagram for vtkMergeCells:
[legend]List of all members.
Detailed Description
merges any number of vtkDataSets back into a single
vtkUnstructuredGrid
Designed to work with distributed vtkDataSets, this class will take vtkDataSets and merge them back into a single vtkUnstructuredGrid.
The vtkPoints object of the unstructured grid will have data type VTK_FLOAT, regardless of the data type of the points of the input vtkDataSets. If this is a problem, someone must let me know.
It is assumed the different DataSets have the same field arrays. If the name of a global point ID array is provided, this class will refrain from including duplicate points in the merged Ugrid. This class differs from vtkAppendFilter in these ways: (1) it uses less memory than that class (which uses memory equal to twice the size of the final Ugrid) but requires that you know the size of the final Ugrid in advance (2) this class assumes the individual DataSets have the same field arrays, while vtkAppendFilter intersects the field arrays (3) this class knows duplicate points may be appearing in the DataSets and can filter those out, (4) this class is not a filter.
- Created by:
-
- CVS contributions (if > 5%):
- Law, Charles (91%)
- Fisk, Lee Ann (6%)
- CVS logs (CVSweb):
.h (/Parallel/vtkMergeCells
.h)
.cxx (/Parallel/vtkMergeCells
.cxx)
Definition at line 67 of file vtkMergeCells.h.
Member Typedef Documentation
Constructor & Destructor Documentation
vtkMergeCells::vtkMergeCells |
( |
|
) |
[protected] |
|
Member Function Documentation
virtual const char* vtkMergeCells::GetClassName |
( |
|
) |
[virtual] |
|
int vtkMergeCells::IsTypeOf |
( |
const char * |
type |
) |
[static] |
|
|
Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.
Reimplemented from vtkObject. |
virtual int vtkMergeCells::IsA |
( |
const char * |
type |
) |
[virtual] |
|
|
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.
Reimplemented from vtkObject. |
virtual void vtkMergeCells::PrintSelf |
( |
ostream & |
os, |
|
|
vtkIndent |
indent |
|
) |
[virtual] |
|
|
Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from vtkObject. |
|
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
Reimplemented from vtkObject. |
|
Set the vtkUnstructuredGrid object that will become the union of the DataSets specified in MergeDataSet calls. vtkMergeCells assumes this grid is empty at first. |
virtual void vtkMergeCells::SetTotalNumberOfCells |
( |
vtkIdType |
|
) |
[virtual] |
|
virtual vtkIdType vtkMergeCells::GetTotalNumberOfCells |
( |
|
) |
[virtual] |
|
virtual void vtkMergeCells::SetTotalNumberOfPoints |
( |
vtkIdType |
|
) |
[virtual] |
|
|
Specify the total number of points in the final vtkUnstructuredGrid Make this call before any call to MergeDataSet(). This is an upper bound, since some points may be duplicates. |
virtual vtkIdType vtkMergeCells::GetTotalNumberOfPoints |
( |
|
) |
[virtual] |
|
virtual void vtkMergeCells::SetGlobalIdArrayName |
( |
const char * |
|
) |
[virtual] |
|
|
vtkMergeCells attempts eliminate duplicate points when merging data sets. This is done most efficiently if a global point ID field array is available. Set the name of the point array if you have one. |
virtual char* vtkMergeCells::GetGlobalIdArrayName |
( |
|
) |
[virtual] |
|
virtual void vtkMergeCells::SetPointMergeTolerance |
( |
float |
|
) |
[virtual] |
|
|
vtkMergeCells attempts eliminate duplicate points when merging data sets. If no global point ID field array name is provided, it will use a point locator to find duplicate points. You can set a tolerance for that locator here. The default tolerance is 10e-4. |
virtual float vtkMergeCells::GetPointMergeTolerance |
( |
|
) |
[virtual] |
|
virtual void vtkMergeCells::SetGlobalCellIdArrayName |
( |
const char * |
|
) |
[virtual] |
|
|
vtkMergeCells will detect and filter out duplicate cells if you provide it the name of a global cell ID array. |
virtual char* vtkMergeCells::GetGlobalCellIdArrayName |
( |
|
) |
[virtual] |
|
virtual void vtkMergeCells::SetMergeDuplicatePoints |
( |
int |
|
) |
[virtual] |
|
|
vtkMergeCells attempts eliminate duplicate points when merging data sets. If for some reason you don't want it to do this, than MergeDuplicatePointsOff(). |
virtual int vtkMergeCells::GetMergeDuplicatePoints |
( |
|
) |
[virtual] |
|
virtual void vtkMergeCells::MergeDuplicatePointsOn |
( |
|
) |
[virtual] |
|
virtual void vtkMergeCells::MergeDuplicatePointsOff |
( |
|
) |
[virtual] |
|
virtual void vtkMergeCells::SetTotalNumberOfDataSets |
( |
int |
|
) |
[virtual] |
|
|
We need to know the number of different data sets that will be merged into one so we can pre-allocate some arrays. This can be an upper bound, not necessarily exact. |
virtual int vtkMergeCells::GetTotalNumberOfDataSets |
( |
|
) |
[virtual] |
|
int vtkMergeCells::MergeDataSet |
( |
vtkDataSet * |
set |
) |
|
|
|
Provide a DataSet to be merged in to the final UnstructuredGrid. This call returns after the merge has completed. Be sure to call SetTotalNumberOfCells, SetTotalNumberOfPoints, and SetTotalNumberOfDataSets before making this call. Return 0 if OK, -1 if error. |
void vtkMergeCells::Finish |
( |
|
) |
|
|
|
Call Finish() after merging last DataSet to free unneeded memory and to make sure the ugrid's GetNumberOfPoints() reflects the actual number of points set, not the number allocated. |
The documentation for this class was generated from the following file: