#include <vtkPrimitivePainter.h>
This is the abstract superclass for classes that handle single type of primitive i.e. verts, lines, polys or tstrips. Concrete subclasses will pass a Render() call to the delegate painter, if any, only if it could not render.
Definition at line 37 of file vtkPrimitivePainter.h.
Reimplemented from vtkPolyDataPainter.
Reimplemented in vtkLinesPainter, vtkPointsPainter, vtkPolygonsPainter, and vtkTStripsPainter.
Definition at line 40 of file vtkPrimitivePainter.h.
anonymous enum [protected] |
VTK_PDM_NORMALS | |
VTK_PDM_COLORS | |
VTK_PDM_TCOORDS | |
VTK_PDM_CELL_COLORS | |
VTK_PDM_CELL_NORMALS | |
VTK_PDM_OPAQUE_COLORS | |
VTK_PDM_FIELD_COLORS | |
VTK_PDM_EDGEFLAGS | |
VTK_PDM_GENERIC_VERTEX_ATTRIBUTES |
Definition at line 54 of file vtkPrimitivePainter.h.
vtkPrimitivePainter::vtkPrimitivePainter | ( | ) | [protected] |
vtkPrimitivePainter::~vtkPrimitivePainter | ( | ) | [protected] |
virtual const char* vtkPrimitivePainter::GetClassName | ( | ) | [virtual] |
Reimplemented from vtkPolyDataPainter.
Reimplemented in vtkLinesPainter, vtkPointsPainter, vtkPolygonsPainter, and vtkTStripsPainter.
static int vtkPrimitivePainter::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 vtkPolyDataPainter.
Reimplemented in vtkLinesPainter, vtkPointsPainter, vtkPolygonsPainter, and vtkTStripsPainter.
virtual int vtkPrimitivePainter::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 vtkPolyDataPainter.
Reimplemented in vtkLinesPainter, vtkPointsPainter, vtkPolygonsPainter, and vtkTStripsPainter.
static vtkPrimitivePainter* vtkPrimitivePainter::SafeDownCast | ( | vtkObject * | o | ) | [static] |
Reimplemented from vtkPolyDataPainter.
Reimplemented in vtkLinesPainter, vtkPointsPainter, vtkPolygonsPainter, and vtkTStripsPainter.
void vtkPrimitivePainter::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 vtkPolyDataPainter.
Reimplemented in vtkLinesPainter, vtkPointsPainter, vtkPolygonsPainter, and vtkTStripsPainter.
virtual int vtkPrimitivePainter::GetSupportedPrimitive | ( | ) | [virtual] |
Get the type of primitive supported by this painter. This must be set by concrete subclasses.
virtual void vtkPrimitivePainter::PrepareForRendering | ( | vtkRenderer * | , | |
vtkActor * | ||||
) | [protected, virtual] |
Some subclasses may need to do some preprocessing before the actual rendering can be done eg. build effecient representation for the data etc. This should be done here. This method get called after the ProcessInformation() but before RenderInternal(). This method is overridden to update the output data as per the input.
Reimplemented from vtkPainter.
virtual void vtkPrimitivePainter::ProcessInformation | ( | vtkInformation * | ) | [protected, virtual] |
Called before RenderInternal() if the Information has been changed since the last time this method was called.
Reimplemented from vtkPolyDataPainter.
virtual vtkDataObject* vtkPrimitivePainter::GetOutput | ( | ) | [protected, virtual] |
Subclasses need to override this to return the output of the pipeline.
Reimplemented from vtkPainter.
virtual int vtkPrimitivePainter::RenderPrimitive | ( | unsigned long | flags, | |
vtkDataArray * | n, | |||
vtkUnsignedCharArray * | c, | |||
vtkDataArray * | t, | |||
vtkRenderer * | ren | |||
) | [protected, pure virtual] |
The actual rendering happens here. This method is called only when SupportedPrimitive is present in typeflags when Render() is invoked. This method returns 1 when the rendering was successful. Concrete Primitive painters may support rendering a primitive only when the input data satifies certain criteria. The return value is used to decide if the subclasses succeeded in rendereing. If not the render request is forwarded to the delegate. On success, the request forwareded to the delegate does not include a request to render the supported primitive type.
Implemented in vtkLinesPainter, vtkPointsPainter, vtkPolygonsPainter, and vtkTStripsPainter.
virtual void vtkPrimitivePainter::RenderInternal | ( | vtkRenderer * | renderer, | |
vtkActor * | actor, | |||
unsigned long | typeflags, | |||
bool | forceCompileOnly | |||
) | [protected, virtual] |
Based on the input polydata, setups certains flags and call RenderPrimitive() which is overridden by subclasses. If RenderPrimitive() is successful, the request forwarded to the delegate painter is with typeflags = (typeflags & ~this->SupportedPrimitive) i.e. the request is to render everything other than what the subclass rendered.
Reimplemented from vtkPainter.
Reimplemented in vtkLinesPainter.
virtual void vtkPrimitivePainter::ReportReferences | ( | vtkGarbageCollector * | collector | ) | [protected, virtual] |
Take part in garbage collection.
Reimplemented from vtkPainter.
virtual void vtkPrimitivePainter::SetSupportedPrimitive | ( | int | ) | [protected, virtual] |
int vtkPrimitivePainter::SupportedPrimitive [protected] |
Definition at line 111 of file vtkPrimitivePainter.h.
int vtkPrimitivePainter::DisableScalarColor [protected] |
Definition at line 112 of file vtkPrimitivePainter.h.
vtkPolyData* vtkPrimitivePainter::OutputData [protected] |
Definition at line 116 of file vtkPrimitivePainter.h.
vtkTimeStamp vtkPrimitivePainter::OutputUpdateTime [protected] |
Definition at line 117 of file vtkPrimitivePainter.h.
bool vtkPrimitivePainter::GenericVertexAttributes [protected] |
Definition at line 118 of file vtkPrimitivePainter.h.
bool vtkPrimitivePainter::MultiTextureAttributes [protected] |
Definition at line 119 of file vtkPrimitivePainter.h.