#include <vtkProgrammableAttributeDataFilter.h>
Inheritance diagram for vtkProgrammableAttributeDataFilter:
Public Methods | |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
void | PrintSelf (ostream &os, vtkIndent indent) |
void | AddInput (vtkDataSet *in) |
void | RemoveInput (vtkDataSet *in) |
vtkDataSetCollection * | GetInputList () |
void | SetExecuteMethod (void(*f)(void *), void *arg) |
void | SetExecuteMethodArgDelete (void(*f)(void *)) |
void | AddInput (vtkDataSet &in) |
void | RemoveInput (vtkDataSet &in) |
Static Public Methods | |
vtkProgrammableAttributeDataFilter * | New () |
int | IsTypeOf (const char *type) |
vtkProgrammableAttributeDataFilter * | SafeDownCast (vtkObject *o) |
Protected Methods | |
vtkProgrammableAttributeDataFilter () | |
~vtkProgrammableAttributeDataFilter () | |
vtkProgrammableAttributeDataFilter (const vtkProgrammableAttributeDataFilter &) | |
void | operator= (const vtkProgrammableAttributeDataFilter &) |
void | Execute () |
Protected Attributes | |
vtkDataSetCollection * | InputList |
void(* | ExecuteMethod )(void *) |
void(* | ExecuteMethodArgDelete )(void *) |
void * | ExecuteMethodArg |
vtkProgrammableAttributeDataFilter is a filter that allows you to write a custom procedure to manipulate attribute data - either point or cell data. For example, you could generate scalars based on a complex formula; convert vectors to normals; compute scalar values as a function of vectors, texture coords, and/or any other point data attribute; and so on. The filter takes multiple inputs (input plus an auxiliary input list), so you can write procedures that combine several dataset point attributes. Note that the output of the filter is the same type (topology/geometry) as the input.
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.
Definition at line 113 of file vtkProgrammableAttributeDataFilter.h.
|
|
|
|
|
Definition at line 147 of file vtkProgrammableAttributeDataFilter.h. |
|
Instantiate object with no start, end, or progress methods. Reimplemented from vtkDataSetSource. |
|
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. |
|
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. |
|
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. |
|
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. |
|
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. |
|
Add a dataset to the list of data to process. |
|
Remove a dataset from the list of data to process. |
|
Return the list of inputs. Definition at line 127 of file vtkProgrammableAttributeDataFilter.h. |
|
Specify the function to use to operate on the point attribute data. Note that the function takes a single (void *) argument. |
|
Set the arg delete method. This is used to free user memory. |
|
For legacy compatibility. Do not use. Definition at line 138 of file vtkProgrammableAttributeDataFilter.h. |
|
Definition at line 140 of file vtkProgrammableAttributeDataFilter.h. |
|
Definition at line 148 of file vtkProgrammableAttributeDataFilter.h. |
|
Reimplemented from vtkSource. |
|
Definition at line 151 of file vtkProgrammableAttributeDataFilter.h. |
|
|
|
|
|
Definition at line 154 of file vtkProgrammableAttributeDataFilter.h. |