VTK
|
Split a field into single component fields. More...
#include <vtkSplitField.h>
Classes | |
struct | Component |
Public Types | |
enum | FieldLocations { DATA_OBJECT = 0, POINT_DATA = 1, CELL_DATA = 2 } |
typedef vtkDataSetAlgorithm | Superclass |
Public Member Functions | |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
void | PrintSelf (ostream &os, vtkIndent indent) |
void | SetInputField (int attributeType, int fieldLoc) |
void | SetInputField (const char *name, int fieldLoc) |
void | SetInputField (const char *name, const char *fieldLoc) |
void | Split (int component, const char *arrayName) |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkSplitField * | SafeDownCast (vtkObject *o) |
static vtkSplitField * | New () |
Protected Types | |
enum | FieldTypes { NAME, ATTRIBUTE } |
Protected Member Functions | |
vtkSplitField () | |
virtual | ~vtkSplitField () |
int | RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
vtkDataArray * | SplitArray (vtkDataArray *da, int component) |
Component * | GetNextComponent (Component *op) |
Component * | GetFirst () |
void | AddComponent (Component *op) |
Component * | FindComponent (int index) |
void | DeleteAllComponents () |
void | PrintComponent (Component *op, ostream &os, vtkIndent indent) |
void | PrintAllComponents (ostream &os, vtkIndent indent) |
Protected Attributes | |
char * | FieldName |
int | FieldType |
int | AttributeType |
int | FieldLocation |
Component * | Head |
Component * | Tail |
Static Protected Attributes | |
static char | FieldLocationNames [3][12] |
static char | AttributeNames [vtkDataSetAttributes::NUM_ATTRIBUTES][10] |
Split a field into single component fields.
vtkSplitField is used to split a multi-component field (vtkDataArray) into multiple single component fields. The new fields are put in the same field data as the original field. The output arrays are of the same type as the input array. Example:
sf->SetInputField("gradient", vtkSplitField::POINT_DATA); sf->Split(0, "firstcomponent");
tells vtkSplitField to extract the first component of the field called gradient and create an array called firstcomponent (the new field will be in the output's point data). The same can be done from Tcl:
sf SetInputField gradient POINT_DATA sf Split 0 firstcomponent AttributeTypes: SCALARS, VECTORS, NORMALS, TCOORDS, TENSORS Field locations: DATA_OBJECT, POINT_DATA, CELL_DATA
Note that, by default, the original array is also passed through.
Definition at line 65 of file vtkSplitField.h.
Reimplemented from vtkDataSetAlgorithm.
Definition at line 68 of file vtkSplitField.h.
Definition at line 90 of file vtkSplitField.h.
enum vtkSplitField::FieldTypes [protected] |
Definition at line 122 of file vtkSplitField.h.
vtkSplitField::vtkSplitField | ( | ) | [protected] |
virtual vtkSplitField::~vtkSplitField | ( | ) | [protected, virtual] |
virtual const char* vtkSplitField::GetClassName | ( | ) | [virtual] |
Reimplemented from vtkDataSetAlgorithm.
static int vtkSplitField::IsTypeOf | ( | const char * | name | ) | [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 vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkDataSetAlgorithm.
virtual int vtkSplitField::IsA | ( | const char * | name | ) | [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 vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkDataSetAlgorithm.
static vtkSplitField* vtkSplitField::SafeDownCast | ( | vtkObject * | o | ) | [static] |
Reimplemented from vtkDataSetAlgorithm.
void vtkSplitField::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 vtkDataSetAlgorithm.
static vtkSplitField* vtkSplitField::New | ( | ) | [static] |
Create a new vtkSplitField.
Reimplemented from vtkDataSetAlgorithm.
Use the given attribute in the field data given by fieldLoc as input.
void vtkSplitField::SetInputField | ( | const char * | name, |
int | fieldLoc | ||
) |
Use the array with given name in the field data given by fieldLoc as input.
void vtkSplitField::SetInputField | ( | const char * | name, |
const char * | fieldLoc | ||
) |
Helper method used by other language bindings. Allows the caller to specify arguments as strings instead of enums.
void vtkSplitField::Split | ( | int | component, |
const char * | arrayName | ||
) |
Create a new array with the given component.
int vtkSplitField::RequestData | ( | vtkInformation * | , |
vtkInformationVector ** | , | ||
vtkInformationVector * | |||
) | [protected, virtual] |
This is called within ProcessRequest when a request asks the algorithm to do its work. This is the method you should override to do whatever the algorithm is designed to do. This happens during the fourth pass in the pipeline execution process.
Reimplemented from vtkDataSetAlgorithm.
vtkDataArray* vtkSplitField::SplitArray | ( | vtkDataArray * | da, |
int | component | ||
) | [protected] |
Definition at line 150 of file vtkSplitField.h.
Component* vtkSplitField::GetFirst | ( | ) | [inline, protected] |
Definition at line 152 of file vtkSplitField.h.
void vtkSplitField::AddComponent | ( | Component * | op | ) | [protected] |
void vtkSplitField::DeleteAllComponents | ( | ) | [protected] |
void vtkSplitField::PrintAllComponents | ( | ostream & | os, |
vtkIndent | indent | ||
) | [protected] |
char* vtkSplitField::FieldName [protected] |
Definition at line 134 of file vtkSplitField.h.
int vtkSplitField::FieldType [protected] |
Definition at line 135 of file vtkSplitField.h.
int vtkSplitField::AttributeType [protected] |
Definition at line 136 of file vtkSplitField.h.
int vtkSplitField::FieldLocation [protected] |
Definition at line 137 of file vtkSplitField.h.
char vtkSplitField::FieldLocationNames[3][12] [static, protected] |
Definition at line 139 of file vtkSplitField.h.
char vtkSplitField::AttributeNames[vtkDataSetAttributes::NUM_ATTRIBUTES][10] [static, protected] |
Definition at line 140 of file vtkSplitField.h.
Component* vtkSplitField::Head [protected] |
Definition at line 146 of file vtkSplitField.h.
Component* vtkSplitField::Tail [protected] |
Definition at line 147 of file vtkSplitField.h.