VTK
vtkCompositePolyDataMapper2.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkCompositePolyDataMapper2.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
28 #ifndef vtkCompositePolyDataMapper2_h
29 #define vtkCompositePolyDataMapper2_h
30 
31 #include "vtkRenderingOpenGLModule.h" // For export macro
33 #include "vtkSmartPointer.h" // for vtkSmartPointer
34 
36 
37 class VTKRENDERINGOPENGL_EXPORT vtkCompositePolyDataMapper2 : public vtkPainterPolyDataMapper
38 {
39 public:
42  void PrintSelf(ostream& os, vtkIndent indent);
43 
54  virtual bool GetIsOpaque();
55 
57 
63 
65 
68  void SetBlockVisibility(unsigned int index, bool visible);
69  bool GetBlockVisibility(unsigned int index) const;
70  void RemoveBlockVisibility(unsigned int index);
73 
75 
78  void SetBlockColor(unsigned int index, double color[3]);
79  void SetBlockColor(unsigned int index, double r, double g, double b)
80  {
81  double color[3] = {r, g, b};
82  this->SetBlockColor(index, color);
83  }
84  double* GetBlockColor(unsigned int index);
85  void RemoveBlockColor(unsigned int index);
88 
90 
93  void SetBlockOpacity(unsigned int index, double opacity);
94  double GetBlockOpacity(unsigned int index);
95  void RemoveBlockOpacity(unsigned int index);
98 
99 protected:
102 
109 
114 
118  virtual void ComputeBounds();
119 
124  virtual void UpdatePainterInformation();
125 
130 
135 
137 
138 private:
139  vtkMTimeType LastOpaqueCheckTime;
140  bool LastOpaqueCheckValue;
141 
142 private:
143  vtkCompositePolyDataMapper2(const vtkCompositePolyDataMapper2&) VTK_DELETE_FUNCTION;
144  void operator=(const vtkCompositePolyDataMapper2&) VTK_DELETE_FUNCTION;
145 
146 };
147 
148 #endif
rendering attributes for a multi-block dataset.
mapper for composite dataset consisting of polygonal data.
void RemoveBlockVisibility(unsigned int index)
void SetBlockColor(unsigned int index, double color[3])
Set/get the color for a block given its flat index.
virtual void UpdatePainterInformation()
Called when the PainterInformation becomes obsolete.
virtual void ComputeBounds()
Need to loop over the hierarchy to compute bounds.
virtual bool GetIsOpaque()
Returns if the mapper does not expect to have translucent geometry.
double GetBlockOpacity(unsigned int index)
void SetBlockVisibility(unsigned int index, bool visible)
Set/get the visibility for a block given its flat index.
vtkTimeStamp BoundsMTime
Time stamp for computation of bounds.
vtkSmartPointer< vtkCompositeDataDisplayAttributes > CompositeAttributes
Composite data set attributes.
vtkExecutive * CreateDefaultExecutive()
We need to override this method because the standard streaming demand driven pipeline is not what we ...
bool GetBlockVisibility(unsigned int index) const
void SetBlockOpacity(unsigned int index, double opacity)
Set/get the opacity for a block given its flat index.
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
void RemoveBlockColor(unsigned int index)
static vtkCompositePolyDataMapper2 * New()
vtkCompositeDataDisplayAttributes * GetCompositeDataDisplayAttributes()
virtual int FillInputPortInformation(int port, vtkInformation *info)
Need to define the type of data handled by this mapper.
void SetBlockColor(unsigned int index, double r, double g, double b)
void RemoveBlockOpacity(unsigned int index)
double * GetBlockColor(unsigned int index)
void SetCompositeDataDisplayAttributes(vtkCompositeDataDisplayAttributes *attributes)
Set/get the composite data set attributes.
Superclass for all pipeline executives in VTK.
Definition: vtkExecutive.h:50
a simple class to control print indentation
Definition: vtkIndent.h:40
Store vtkAlgorithm input/output information.
PolyDataMapper using painters.
Abstract class for drawing poly data.
Definition: vtkPainter.h:62
record modification and/or execution time
Definition: vtkTimeStamp.h:36
@ info
Definition: vtkX3D.h:376
@ port
Definition: vtkX3D.h:447
@ color
Definition: vtkX3D.h:221
@ index
Definition: vtkX3D.h:246
vtkTypeUInt64 vtkMTimeType
Definition: vtkType.h:248