VTK  9.1.0
vtkCompositePolyDataMapper.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkCompositePolyDataMapper.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 vtkCompositePolyDataMapper_h
29#define vtkCompositePolyDataMapper_h
30
31#include "vtkMapper.h"
32#include "vtkRenderingCoreModule.h" // For export macro
33
35class vtkInformation;
36class vtkRenderer;
37class vtkActor;
38class vtkCompositePolyDataMapperInternals;
39
40class VTKRENDERINGCORE_EXPORT vtkCompositePolyDataMapper : public vtkMapper
41{
42
43public:
46 void PrintSelf(ostream& os, vtkIndent indent) override;
47
52 void Render(vtkRenderer* ren, vtkActor* a) override;
53
55
58 double* GetBounds() VTK_SIZEHINT(6) override;
59 void GetBounds(double bounds[6]) override { this->Superclass::GetBounds(bounds); }
61
66
68
73 bool HasOpaqueGeometry() override;
76
77protected:
80
87
91 int FillInputPortInformation(int port, vtkInformation* info) override;
92
98
103
108
113
119 vtkCompositePolyDataMapperInternals* Internal;
120
126
127private:
129 void operator=(const vtkCompositePolyDataMapper&) = delete;
130};
131
132#endif
virtual double * GetBounds()=0
Return bounding box (array of six doubles) of data expressed as (xmin,xmax, ymin,ymax,...
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:155
a class that renders hierarchical polygonal data
void BuildPolyDataMapper()
This is the build method for creating the internal polydata mapper that do the actual work.
void Render(vtkRenderer *ren, vtkActor *a) override
Standard method for rendering a mapper.
vtkCompositePolyDataMapperInternals * Internal
These are the internal polydata mapper that do the rendering.
vtkExecutive * CreateDefaultExecutive() override
We need to override this method because the standard streaming demand driven pipeline is not what we ...
vtkTimeStamp InternalMappersBuildTime
Time stamp for when we need to update the internal mappers.
void ComputeBounds()
Need to loop over the hierarchy to compute bounds.
void ReleaseGraphicsResources(vtkWindow *) override
Release the underlying resources associated with this mapper.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkCompositePolyDataMapper * New()
double * GetBounds() override
Standard vtkProp method to get 3D bounds of a 3D prop.
~vtkCompositePolyDataMapper() override
virtual vtkPolyDataMapper * MakeAMapper()
BuildPolyDataMapper uses this for each mapper.
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...
int FillInputPortInformation(int port, vtkInformation *info) override
Need to define the type of data handled by this mapper.
vtkTimeStamp BoundsMTime
Time stamp for computation of bounds.
Superclass for all pipeline executives in VTK.
Definition: vtkExecutive.h:76
a simple class to control print indentation
Definition: vtkIndent.h:113
Store vtkAlgorithm input/output information.
abstract class specifies interface to map data to graphics primitives
Definition: vtkMapper.h:171
map vtkPolyData to graphics primitives
abstract specification for renderers
Definition: vtkRenderer.h:182
record modification and/or execution time
Definition: vtkTimeStamp.h:52
window superclass for vtkRenderWindow
Definition: vtkWindow.h:39
#define VTK_SIZEHINT(...)