Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

vtkRearrangeFields Class Reference

Move/copy fields between field data, point data and cell data. More...

#include <vtkRearrangeFields.h>

Inheritance diagram for vtkRearrangeFields:

Inheritance graph
[legend]
Collaboration diagram for vtkRearrangeFields:

Collaboration graph
[legend]
List of all members.

Public Types

enum  OperationType { COPY = 0, MOVE = 1 }
enum  FieldLocation { DATA_OBJECT = 0, POINT_DATA = 1, CELL_DATA = 2 }
enum  FieldType { NAME, ATTRIBUTE }

Public Methods

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
int AddOperation (int operationType, int attributeType, int fromFieldLoc, int toFieldLoc)
int AddOperation (int operationType, const char *name, int fromFieldLoc, int toFieldLoc)
int AddOperation (const char *operationType, const char *attributeType, const char *fromFieldLoc, const char *toFieldLoc)
int RemoveOperation (int operationId)
int RemoveOperation (int operationType, int attributeType, int fromFieldLoc, int toFieldLoc)
int RemoveOperation (int operationType, const char *name, int fromFieldLoc, int toFieldLoc)
int RemoveOperation (const char *operationType, const char *attributeType, const char *fromFieldLoc, const char *toFieldLoc)
void RemoveAllOperations ()

Static Public Methods

int IsTypeOf (const char *type)
vtkRearrangeFields * SafeDownCast (vtkObject *o)
vtkRearrangeFields * New ()

Protected Methods

 vtkRearrangeFields ()
virtual ~vtkRearrangeFields ()
void Execute ()
OperationGetNextOperation (Operation *op)
OperationGetFirst ()
void AddOperation (Operation *op)
void DeleteOperation (Operation *op, Operation *before)
OperationFindOperation (int id, Operation *&before)
OperationFindOperation (const char *name, Operation *&before)
OperationFindOperation (int operationType, const char *name, int fromFieldLoc, int toFieldLoc, Operation *&before)
OperationFindOperation (int operationType, int attributeType, int fromFieldLoc, int toFieldLoc, Operation *&before)
int CompareOperationsByType (const Operation *op1, const Operation *op2)
int CompareOperationsByName (const Operation *op1, const Operation *op2)
void DeleteAllOperations ()
void ApplyOperation (Operation *op, vtkDataSet *input, vtkDataSet *output)
vtkFieldDataGetFieldDataFromLocation (vtkDataSet *ds, int fieldLoc)
void PrintAllOperations (ostream &os, vtkIndent indent)
void PrintOperation (Operation *op, ostream &os, vtkIndent indent)

Protected Attributes

OperationHead
OperationTail
int LastId

Static Protected Attributes

char OperationTypeNames [2][5]
char FieldLocationNames [3][12]
char AttributeNames [vtkDataSetAttributes::NUM_ATTRIBUTES][10]

Detailed Description

Move/copy fields between field data, point data and cell data.

Date:
2001/11/13 14:13:50
Revision:
1.6

vtkRearrangeFields is used to copy/move fields (vtkDataArrays) between data object's field data, point data and cell data. To specify which fields are copied/moved, the user adds operations. There are two types of operations: 1. the type which copies/moves an attribute's data (i.e. the field will be copied but will not be an attribute in the target), 2. the type which copies/moves fields by name. For example:

 rf->AddOperation(vtkRearrangeFields::COPY, "foo", 
                  vtkRearrangeFields::DATA_OBJECT, 
                  vtkRearrangeFields::POINT_DATA);
 
adds an operation which copies a field (data array) called foo from the data object's field data to point data. From Tcl, the same operation can be added as follows:
 rf AddOperation COPY foo DATA_OBJECT POINT_DATA
 
The same can be done using Python and Java bindings by passing strings as arguments.
 Operation types: COPY, MOVE
 AttributeTypes: SCALARS, VECTORS, NORMALS, TCOORDS, TENSORS
 Field data locations: DATA_OBJECT, POINT_DATA, CELL_DATA
 

Warning:
When using Tcl, Java, Python or Visual Basic bindings, the array name can not be one of the AttributeTypes when calling AddOperation() which takes strings as arguments. The Tcl (Java etc.) command will always assume the string corresponds to an attribute type when the argument is one of the AttributeTypes. In this situation, use the AddOperation() which takes enums.
See also:
vtkFieldData vtkDataSet vtkDataObjectToDataSetFilter vtkDataSetAttributes vtkDataArray vtkAssignAttribute vtkSplitField vtkMergeFields
Examples:
vtkRearrangeFields (Examples)
Tests:
vtkRearrangeFields (Tests)

Definition at line 98 of file vtkRearrangeFields.h.


Member Enumeration Documentation

enum vtkRearrangeFields::OperationType
 

Enumeration values:
COPY 
MOVE 

Definition at line 108 of file vtkRearrangeFields.h.

enum vtkRearrangeFields::FieldLocation
 

Enumeration values:
DATA_OBJECT 
POINT_DATA 
CELL_DATA 

Definition at line 113 of file vtkRearrangeFields.h.

enum vtkRearrangeFields::FieldType
 

Enumeration values:
NAME 
ATTRIBUTE 

Definition at line 172 of file vtkRearrangeFields.h.


Constructor & Destructor Documentation

vtkRearrangeFields::vtkRearrangeFields   [protected]
 

virtual vtkRearrangeFields::~vtkRearrangeFields   [protected, virtual]
 


Member Function Documentation

virtual const char* vtkRearrangeFields::GetClassName   [virtual]
 

Return the class name as a string. This method is defined in all subclasses of vtkObject with the vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkDataSetToDataSetFilter.

int vtkRearrangeFields::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 vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkDataSetToDataSetFilter.

virtual int vtkRearrangeFields::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 vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkDataSetToDataSetFilter.

vtkRearrangeFields* vtkRearrangeFields::SafeDownCast vtkObject   o [static]
 

Will cast the supplied object to vtkObject* is this is a safe operation (i.e., a safe downcast); otherwise NULL is returned. This method is defined in all subclasses of vtkObject with the vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkDataSetToDataSetFilter.

void vtkRearrangeFields::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 vtkSource.

vtkRearrangeFields* vtkRearrangeFields::New   [static]
 

Create a new vtkRearrangeFields with an empty operation list.

Reimplemented from vtkDataSetSource.

int vtkRearrangeFields::AddOperation int    operationType,
int    attributeType,
int    fromFieldLoc,
int    toFieldLoc
 

Add an operation which copies an attribute's field (data array) from one field data to another. Returns an operation id which can later be used to remove the operation.

int vtkRearrangeFields::AddOperation int    operationType,
const char *    name,
int    fromFieldLoc,
int    toFieldLoc
 

Add an operation which copies an attribute's field (data array) from one field data to another. Returns an operation id which can later be used to remove the operation.

int vtkRearrangeFields::AddOperation const char *    operationType,
const char *    attributeType,
const char *    fromFieldLoc,
const char *    toFieldLoc
 

Add an operation which copies an attribute's field (data array) from one field data to another. Returns an operation id which can later be used to remove the operation.

int vtkRearrangeFields::RemoveOperation int    operationId
 

Remove an operation with the given id.

int vtkRearrangeFields::RemoveOperation int    operationType,
int    attributeType,
int    fromFieldLoc,
int    toFieldLoc
 

Remove an operation with the given id.

int vtkRearrangeFields::RemoveOperation int    operationType,
const char *    name,
int    fromFieldLoc,
int    toFieldLoc
 

Remove an operation with the given id.

int vtkRearrangeFields::RemoveOperation const char *    operationType,
const char *    attributeType,
const char *    fromFieldLoc,
const char *    toFieldLoc
 

Remove an operation with the given id.

void vtkRearrangeFields::RemoveAllOperations   [inline]
 

Remove all operations.

Definition at line 163 of file vtkRearrangeFields.h.

void vtkRearrangeFields::Execute   [protected, virtual]
 

This method is the old style execute method

Reimplemented from vtkSource.

Operation* vtkRearrangeFields::GetNextOperation Operation   op [inline, protected]
 

Definition at line 209 of file vtkRearrangeFields.h.

Operation* vtkRearrangeFields::GetFirst   [inline, protected]
 

Definition at line 211 of file vtkRearrangeFields.h.

void vtkRearrangeFields::AddOperation Operation   op [protected]
 

void vtkRearrangeFields::DeleteOperation Operation   op,
Operation   before
[protected]
 

Operation* vtkRearrangeFields::FindOperation int    id,
Operation *&    before
[protected]
 

Operation* vtkRearrangeFields::FindOperation const char *    name,
Operation *&    before
[protected]
 

Operation* vtkRearrangeFields::FindOperation int    operationType,
const char *    name,
int    fromFieldLoc,
int    toFieldLoc,
Operation *&    before
[protected]
 

Operation* vtkRearrangeFields::FindOperation int    operationType,
int    attributeType,
int    fromFieldLoc,
int    toFieldLoc,
Operation *&    before
[protected]
 

int vtkRearrangeFields::CompareOperationsByType const Operation   op1,
const Operation   op2
[protected]
 

int vtkRearrangeFields::CompareOperationsByName const Operation   op1,
const Operation   op2
[protected]
 

void vtkRearrangeFields::DeleteAllOperations   [protected]
 

void vtkRearrangeFields::ApplyOperation Operation   op,
vtkDataSet   input,
vtkDataSet   output
[protected]
 

vtkFieldData* vtkRearrangeFields::GetFieldDataFromLocation vtkDataSet   ds,
int    fieldLoc
[protected]
 

void vtkRearrangeFields::PrintAllOperations ostream &    os,
vtkIndent    indent
[inline, protected]
 

Definition at line 239 of file vtkRearrangeFields.h.

void vtkRearrangeFields::PrintOperation Operation   op,
ostream &    os,
vtkIndent    indent
[inline, protected]
 

Definition at line 254 of file vtkRearrangeFields.h.


Member Data Documentation

Operation* vtkRearrangeFields::Head [protected]
 

Definition at line 202 of file vtkRearrangeFields.h.

Operation* vtkRearrangeFields::Tail [protected]
 

Definition at line 203 of file vtkRearrangeFields.h.

int vtkRearrangeFields::LastId [protected]
 

Definition at line 206 of file vtkRearrangeFields.h.

char vtkRearrangeFields::OperationTypeNames[2][5] [static, protected]
 

Definition at line 235 of file vtkRearrangeFields.h.

char vtkRearrangeFields::FieldLocationNames[3][12] [static, protected]
 

Definition at line 236 of file vtkRearrangeFields.h.

char vtkRearrangeFields::AttributeNames[vtkDataSetAttributes::NUM_ATTRIBUTES][10] [static, protected]
 

Definition at line 237 of file vtkRearrangeFields.h.


The documentation for this class was generated from the following file:
Generated on Thu Mar 28 14:41:07 2002 for VTK by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001