31 #ifndef vtkCompositePolyDataMapper_h
32 #define vtkCompositePolyDataMapper_h
37 #include "vtkRenderingCoreModule.h"
44 VTK_ABI_NAMESPACE_BEGIN
120 double color[3] = { r, g, b };
124 double* GetBlockColor(
unsigned int index);
126 void RemoveBlockColor(
unsigned int index);
127 void RemoveBlockColors();
134 void SetBlockOpacity(
unsigned int index,
double opacity);
135 double GetBlockOpacity(
unsigned int index);
136 void RemoveBlockOpacity(
unsigned int index);
137 void RemoveBlockOpacities();
145 int GetBlockScalarMode(
unsigned int index);
146 void RemoveBlockScalarMode(
unsigned int index);
147 void RemoveBlockScalarModes();
155 int GetBlockArrayAccessMode(
unsigned int index);
156 void RemoveBlockArrayAccessMode(
unsigned int index);
157 void RemoveBlockArrayAccessModes();
165 int GetBlockArrayComponent(
unsigned int index);
166 void RemoveBlockArrayComponent(
unsigned int index);
167 void RemoveBlockArrayComponents();
175 int GetBlockArrayId(
unsigned int index);
176 void RemoveBlockArrayId(
unsigned int index);
177 void RemoveBlockArrayIds();
186 void RemoveBlockArrayName(
unsigned int index);
187 void RemoveBlockArrayNames();
196 void RemoveBlockFieldDataTupleId(
unsigned int index);
197 void RemoveBlockFieldDataTupleIds();
207 vtkSetMacro(ColorMissingArraysWithNanColor,
bool);
208 vtkGetMacro(ColorMissingArraysWithNanColor,
bool);
209 vtkBooleanMacro(ColorMissingArraysWithNanColor,
bool);
217 void SetInputArrayToProcess(
218 int idx,
int port,
int connection,
int fieldAssociation, const
char*
name) override;
219 void SetInputArrayToProcess(
220 int idx,
int port,
int connection,
int fieldAssociation,
int fieldAttributeType) override;
233 void ProcessSelectorPixelBuffers(
239 void SetVBOShiftScaleMethod(
int method) override;
246 void SetPauseShiftScale(
bool pauseShiftScale) override;
260 vtkSetStringMacro(PointIdArrayName);
261 vtkGetStringMacro(PointIdArrayName);
262 vtkSetStringMacro(CellIdArrayName);
263 vtkGetStringMacro(CellIdArrayName);
272 vtkSetStringMacro(ProcessIdArrayName);
273 vtkGetStringMacro(ProcessIdArrayName);
286 vtkSetStringMacro(CompositeIdArrayName);
287 vtkGetStringMacro(CompositeIdArrayName);
372 bool ColorMissingArraysWithNanColor =
false;
380 char* PointIdArrayName =
nullptr;
381 char* CellIdArrayName =
nullptr;
382 char* ProcessIdArrayName =
nullptr;
383 char* CompositeIdArrayName =
nullptr;
386 bool HasTranslucentGeometry =
false;
395 std::array<double, 3> ColorResult = {};
398 std::unique_ptr<vtkInternals> Internals;
401 VTK_ABI_NAMESPACE_END
abstract class specifies interface to map data
represents an object (geometry & properties) in a rendered scene
Superclass for all sources, filters, and sinks in VTK.
Rendering attributes for a multi-block dataset.
abstract superclass for composite (multi-block or AMR) datasets
Delegates rendering of multiple polydata that share similar signatures.
a class that renders hierarchical polygonal data
vtkCompositeDataDisplayAttributes * GetCompositeDataDisplayAttributes()
Set/get the composite data set attributes.
bool GetBlockVisibility(unsigned int index)
Set/get the visibility for a block given its flat index.
void ComputeBounds() override
Need to loop over the hierarchy to compute bounds.
void SetCompositeDataDisplayAttributes(vtkCompositeDataDisplayAttributes *attributes)
Set/get the composite data set attributes.
vtkPolyDataMapper::MapperHashType GenerateHash(vtkPolyData *polydata) override
Creates an empty polydata mapper and asks the mapper to hash the polydata.
vtkStateStorage TranslucentState
vtkStateStorage TempState
vtkNew< vtkPolyDataMapper > PrototypeMapper
A prototype of the object factory override mapper.
void RemoveBlockVisibility(unsigned int index)
Set/get the visibility for a block given its flat index.
void SetBlockVisibility(unsigned int index, bool visible)
Set/get the visibility for a block given its flat index.
bool RecursiveHasTranslucentGeometry(vtkDataObject *dobj, unsigned int &flat_index)
void Render(vtkRenderer *renderer, vtkActor *actor) override
Standard method for rendering a mapper.
void ShallowCopy(vtkAbstractMapper *mapper) override
Make a shallow copy of this mapper.
void ReleaseGraphicsResources(vtkWindow *) override
Release the underlying resources associated with this mapper.
static vtkCompositePolyDataMapper * New()
vtkSmartPointer< vtkCompositeDataDisplayAttributes > CompositeAttributes
Composite data set attributes.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetBlockColor(unsigned int index, const double color[3])
Set/get the color for a block given its flat index.
vtkTimeStamp DelegatorMTime
void RemoveBlockVisibilities()
Set/get the visibility for a block given its flat index.
virtual void PostRender(const std::vector< vtkSmartPointer< vtkCompositePolyDataMapperDelegator >> &, vtkRenderer *, vtkActor *)
Invoked just after all delegators render their datasets.
vtkStateStorage RenderValuesState
void BuildRenderValues(vtkRenderer *renderer, vtkActor *actor, vtkDataObject *dobj, unsigned int &flat_index)
virtual vtkDataObjectTreeIterator * MakeAnIterator(vtkCompositeDataSet *dataset)
Initialize an iterator for the composite dataset.
bool HasTranslucentPolygonalGeometry() override
Some introspection on the type of data the mapper will render used by props to determine if they shou...
bool HasOpaqueGeometry() override
Some introspection on the type of data the mapper will render used by props to determine if they shou...
void SetBlockColor(unsigned int index, double r, double g, double b)
Set/get the color for a block given its flat index.
vtkTimeStamp BoundsMTime
Time stamp for computation of bounds.
double * GetBounds() override
Standard vtkProp method to get 3D bounds of a 3D prop.
superclass for composite data iterators
general representation of visualization data
Superclass for all pipeline executives in VTK.
a simple class to control print indentation
double * GetBounds() override
Return bounding box (array of six doubles) of data expressed as (xmin,xmax, ymin,ymax,...
map vtkPolyData to graphics primitives
std::uintptr_t MapperHashType
concrete dataset represents vertices, lines, polygons, and triangle strips
abstract superclass for all actors, volumes and annotations
abstract specification for renderers
Hold a reference to a vtkObjectBase instance.
Class to make storing and comparing state quick and easy.
record modification and/or execution time
window superclass for vtkRenderWindow
void GetBounds(T a, double bds[6])
#define VTK_DEPRECATED_IN_9_3_0(reason)
vtkTypeUInt32 vtkMTimeType
#define VTK_SIZEHINT(...)