VTK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
vtkMergeFields Class Reference

Merge multiple fields into one. More...

#include <vtkMergeFields.h>

Inherits vtkDataSetAlgorithm.

Collaboration diagram for vtkMergeFields:
[legend]

Classes

struct  Component
 

Public Types

enum  FieldLocations { DATA_OBJECT =0, POINT_DATA =1, CELL_DATA =2 }
 
typedef vtkDataSetAlgorithm Superclass
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkMergeFieldsNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
void SetOutputField (const char *name, int fieldLoc)
 
void SetOutputField (const char *name, const char *fieldLoc)
 
void Merge (int component, const char *arrayName, int sourceComp)
 
virtual void SetNumberOfComponents (int)
 
virtual int GetNumberOfComponents ()
 

Static Public Member Functions

static int IsTypeOf (const char *type)
 
static vtkMergeFieldsSafeDownCast (vtkObjectBase *o)
 
static vtkMergeFieldsNew ()
 

Protected Types

enum  FieldType { NAME, ATTRIBUTE }
 

Protected Member Functions

virtual vtkObjectBase * NewInstanceInternal () const
 
 vtkMergeFields ()
 
virtual ~vtkMergeFields ()
 
int RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
 
int MergeArray (vtkDataArray *in, vtkDataArray *out, int inComp, int outComp)
 
ComponentGetNextComponent (Component *op)
 
ComponentGetFirst ()
 
void AddComponent (Component *op)
 
ComponentFindComponent (int index)
 
void DeleteAllComponents ()
 
void PrintComponent (Component *op, ostream &os, vtkIndent indent)
 
void PrintAllComponents (ostream &os, vtkIndent indent)
 

Protected Attributes

char * FieldName
 
int FieldLocation
 
int NumberOfComponents
 
int OutputDataType
 
ComponentHead
 
ComponentTail
 

Static Protected Attributes

static char FieldLocationNames [3][12]
 

Detailed Description

Merge multiple fields into one.

vtkMergeFields is used to merge mutliple field into one. The new field is put in the same field data as the original field. For example

mf->SetOutputField("foo", vtkMergeFields::POINT_DATA);
mf->SetNumberOfComponents(2);
mf->Merge(0, "array1", 1);
mf->Merge(1, "array2", 0);

will tell vtkMergeFields to use the 2nd component of array1 and the 1st component of array2 to create a 2 component field called foo. The same can be done using Tcl:

mf SetOutputField foo POINT_DATA
mf Merge 0 array1 1
mf Merge 1 array2 0

Field locations: DATA_OBJECT, POINT_DATA, CELL_DATA
See Also
vtkFieldData vtkDataSet vtkDataObjectToDataSetFilter vtkDataSetAttributes vtkDataArray vtkRearrangeFields vtkSplitField vtkAssignAttribute
Tests:
vtkMergeFields (Tests)

Definition at line 56 of file vtkMergeFields.h.

Member Typedef Documentation

typedef vtkDataSetAlgorithm vtkMergeFields::Superclass

Definition at line 59 of file vtkMergeFields.h.

Member Enumeration Documentation

Enumerator
DATA_OBJECT 
POINT_DATA 
CELL_DATA 

Definition at line 85 of file vtkMergeFields.h.

enum vtkMergeFields::FieldType
protected
Enumerator
NAME 
ATTRIBUTE 

Definition at line 118 of file vtkMergeFields.h.

Constructor & Destructor Documentation

vtkMergeFields::vtkMergeFields ( )
protected
virtual vtkMergeFields::~vtkMergeFields ( )
protectedvirtual

Member Function Documentation

static int vtkMergeFields::IsTypeOf ( const char *  type)
static
virtual int vtkMergeFields::IsA ( const char *  type)
virtual
static vtkMergeFields* vtkMergeFields::SafeDownCast ( vtkObjectBase *  o)
static
virtual vtkObjectBase* vtkMergeFields::NewInstanceInternal ( ) const
protectedvirtual
vtkMergeFields* vtkMergeFields::NewInstance ( ) const
void vtkMergeFields::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
static vtkMergeFields* vtkMergeFields::New ( )
static

Create a new vtkMergeFields.

void vtkMergeFields::SetOutputField ( const char *  name,
int  fieldLoc 
)

The output field will have the given name and it will be in fieldLoc (the input fields also have to be in fieldLoc).

void vtkMergeFields::SetOutputField ( const char *  name,
const char *  fieldLoc 
)

Helper method used by the other language bindings. Allows the caller to specify arguments as strings instead of enums.Returns an operation id which can later be used to remove the operation.

void vtkMergeFields::Merge ( int  component,
const char *  arrayName,
int  sourceComp 
)

Add a component (arrayName,sourceComp) to the output field.

virtual void vtkMergeFields::SetNumberOfComponents ( int  )
virtual

Set the number of the components in the output field. This has to be set before execution. Default value is 0.

virtual int vtkMergeFields::GetNumberOfComponents ( )
virtual

Set the number of the components in the output field. This has to be set before execution. Default value is 0.

int vtkMergeFields::RequestData ( vtkInformation *  ,
vtkInformationVector **  ,
vtkInformationVector *   
)
protected
int vtkMergeFields::MergeArray ( vtkDataArray *  in,
vtkDataArray *  out,
int  inComp,
int  outComp 
)
protected
Component* vtkMergeFields::GetNextComponent ( Component op)
inlineprotected

Definition at line 145 of file vtkMergeFields.h.

Component* vtkMergeFields::GetFirst ( )
inlineprotected

Definition at line 147 of file vtkMergeFields.h.

void vtkMergeFields::AddComponent ( Component op)
protected
Component* vtkMergeFields::FindComponent ( int  index)
protected
void vtkMergeFields::DeleteAllComponents ( )
protected
void vtkMergeFields::PrintComponent ( Component op,
ostream &  os,
vtkIndent  indent 
)
protected
void vtkMergeFields::PrintAllComponents ( ostream &  os,
vtkIndent  indent 
)
protected

Member Data Documentation

char* vtkMergeFields::FieldName
protected

Definition at line 130 of file vtkMergeFields.h.

int vtkMergeFields::FieldLocation
protected

Definition at line 131 of file vtkMergeFields.h.

int vtkMergeFields::NumberOfComponents
protected

Definition at line 132 of file vtkMergeFields.h.

int vtkMergeFields::OutputDataType
protected

Definition at line 133 of file vtkMergeFields.h.

char vtkMergeFields::FieldLocationNames[3][12]
staticprotected

Definition at line 135 of file vtkMergeFields.h.

Component* vtkMergeFields::Head
protected

Definition at line 141 of file vtkMergeFields.h.

Component* vtkMergeFields::Tail
protected

Definition at line 142 of file vtkMergeFields.h.


The documentation for this class was generated from the following file: