Section: Visualization Toolkit Graphics Classes
The filter works as follows. It operates like any other filter (i.e., checking and managing modified and execution times, processing Update() and Execute() methods, managing release of data, etc.), but the difference is that the Execute() method simply invokes a user-specified function with an optional (void *) argument (typically the "this" pointer in C++). It is also possible to specify a function to delete the argument via ExecuteMethodArgDelete().
To use the filter, you write a procedure to process the input datasets, process the data, and generate output data. Typically, this means grabbing the input point or cell data (using GetInput() and maybe GetInputList()), operating on it (creating new point and cell attributes such as scalars, vectors, etc.), and then setting the point and/or cell attributes in the output dataset (you'll need to use GetOutput() to access the output). (Note: besides C++, it is possible to do the same thing in Tcl, Java, or other languages that wrap the C++ core.) Remember, proper filter protocol requires that you don't modify the input data - you create new output data from the input.
To create an instance of class vtkProgrammableAttributeDataFilter, simply invoke its constructor as follows
obj = vtkProgrammableAttributeDataFilter
obj
is an instance of the vtkProgrammableAttributeDataFilter class.
string = obj.GetClassName ()
int = obj.IsA (string name)
vtkProgrammableAttributeDataFilter = obj.NewInstance ()
vtkProgrammableAttributeDataFilter = obj.SafeDownCast (vtkObject o)
obj.AddInput (vtkDataSet in)
- Add a dataset to the list of data to process.
obj.RemoveInput (vtkDataSet in)
- Remove a dataset from the list of data to process.
vtkDataSetCollection = obj.GetInputList ()
- Return the list of inputs.