VTK  9.0.3
vtkRenderer.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkRenderer.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 =========================================================================*/
41 #ifndef vtkRenderer_h
42 #define vtkRenderer_h
43 
44 #include "vtkRenderingCoreModule.h" // For export macro
45 #include "vtkViewport.h"
46 
47 #include "vtkActorCollection.h" // Needed for access in inline members
48 #include "vtkVolumeCollection.h" // Needed for access in inline members
49 
50 class vtkFXAAOptions;
51 class vtkRenderWindow;
52 class vtkVolume;
53 class vtkCuller;
54 class vtkActor;
55 class vtkActor2D;
56 class vtkCamera;
58 class vtkInformation;
59 class vtkLightCollection;
61 class vtkLight;
64 class vtkRenderPass;
65 class vtkTexture;
66 
67 class VTKRENDERINGCORE_EXPORT vtkRenderer : public vtkViewport
68 {
69 public:
70  vtkTypeMacro(vtkRenderer, vtkViewport);
71  void PrintSelf(ostream& os, vtkIndent indent) override;
72 
78  static vtkRenderer* New();
79 
81 
86  void AddActor(vtkProp* p);
87  void AddVolume(vtkProp* p);
88  void RemoveActor(vtkProp* p);
91 
96 
101 
106 
110  vtkLightCollection* GetLights();
111 
119 
123  void CreateLight(void);
124 
130  virtual vtkLight* MakeLight();
131 
133 
139  vtkGetMacro(TwoSidedLighting, vtkTypeBool);
140  vtkSetMacro(TwoSidedLighting, vtkTypeBool);
141  vtkBooleanMacro(TwoSidedLighting, vtkTypeBool);
143 
145 
158  vtkSetMacro(LightFollowCamera, vtkTypeBool);
159  vtkGetMacro(LightFollowCamera, vtkTypeBool);
160  vtkBooleanMacro(LightFollowCamera, vtkTypeBool);
162 
164 
172  vtkGetMacro(AutomaticLightCreation, vtkTypeBool);
173  vtkSetMacro(AutomaticLightCreation, vtkTypeBool);
174  vtkBooleanMacro(AutomaticLightCreation, vtkTypeBool);
176 
183 
188 
193 
198 
205 
211  virtual vtkCamera* MakeCamera();
212 
214 
220  vtkSetMacro(Erase, vtkTypeBool);
221  vtkGetMacro(Erase, vtkTypeBool);
222  vtkBooleanMacro(Erase, vtkTypeBool);
224 
226 
231  vtkSetMacro(Draw, vtkTypeBool);
232  vtkGetMacro(Draw, vtkTypeBool);
233  vtkBooleanMacro(Draw, vtkTypeBool);
235 
241 
248 
253 
258 
262  vtkCullerCollection* GetCullers();
263 
265 
268  vtkSetVector3Macro(Ambient, double);
269  vtkGetVectorMacro(Ambient, double, 3);
271 
273 
277  vtkSetMacro(AllocatedRenderTime, double);
278  virtual double GetAllocatedRenderTime();
280 
287  virtual double GetTimeFactor();
288 
295  virtual void Render();
296 
300  virtual void DeviceRender(){};
301 
309 
320 
325  virtual void ClearLights(void) {}
326 
330  virtual void Clear() {}
331 
336 
341 
346  void ComputeVisiblePropBounds(double bounds[6]);
347 
352 
357  virtual void ResetCameraClippingRange();
358 
360 
366  virtual void ResetCameraClippingRange(double bounds[6]);
367  virtual void ResetCameraClippingRange(
368  double xmin, double xmax, double ymin, double ymax, double zmin, double zmax);
370 
372 
377  vtkSetClampMacro(NearClippingPlaneTolerance, double, 0, 0.99);
378  vtkGetMacro(NearClippingPlaneTolerance, double);
380 
382 
387  vtkSetClampMacro(ClippingRangeExpansion, double, 0, 0.99);
388  vtkGetMacro(ClippingRangeExpansion, double);
390 
397  virtual void ResetCamera();
398 
408  virtual void ResetCamera(double bounds[6]);
409 
413  virtual void ResetCamera(
414  double xmin, double xmax, double ymin, double ymax, double zmin, double zmax);
415 
417 
422  void SetRenderWindow(vtkRenderWindow*);
423  vtkRenderWindow* GetRenderWindow() { return this->RenderWindow; }
424  vtkWindow* GetVTKWindow() override;
426 
428 
434  vtkSetMacro(BackingStore, vtkTypeBool);
435  vtkGetMacro(BackingStore, vtkTypeBool);
436  vtkBooleanMacro(BackingStore, vtkTypeBool);
438 
440 
445  vtkSetMacro(Interactive, vtkTypeBool);
446  vtkGetMacro(Interactive, vtkTypeBool);
447  vtkBooleanMacro(Interactive, vtkTypeBool);
449 
451 
462  virtual void SetLayer(int layer);
463  vtkGetMacro(Layer, int);
465 
467 
477  vtkGetMacro(PreserveColorBuffer, vtkTypeBool);
478  vtkSetMacro(PreserveColorBuffer, vtkTypeBool);
479  vtkBooleanMacro(PreserveColorBuffer, vtkTypeBool);
481 
483 
487  vtkSetMacro(PreserveDepthBuffer, vtkTypeBool);
488  vtkGetMacro(PreserveDepthBuffer, vtkTypeBool);
489  vtkBooleanMacro(PreserveDepthBuffer, vtkTypeBool);
491 
496  int Transparent();
497 
501  void WorldToView() override;
502 
504 
507  void ViewToWorld() override;
508  void ViewToWorld(double& wx, double& wy, double& wz) override;
510 
514  void WorldToView(double& wx, double& wy, double& wz) override;
515 
517 
520  void WorldToPose(double& wx, double& wy, double& wz) override;
521  void PoseToWorld(double& wx, double& wy, double& wz) override;
522  void ViewToPose(double& wx, double& wy, double& wz) override;
523  void PoseToView(double& wx, double& wy, double& wz) override;
525 
530  double GetZ(int x, int y);
531 
535  vtkMTimeType GetMTime() override;
536 
538 
541  vtkGetMacro(LastRenderTimeInSeconds, double);
543 
545 
551  vtkGetMacro(NumberOfPropsRendered, int);
553 
555 
562  vtkAssemblyPath* PickProp(double selectionX, double selectionY) override
563  {
564  return this->PickProp(selectionX, selectionY, selectionX, selectionY);
565  }
567  double selectionX1, double selectionY1, double selectionX2, double selectionY2) override;
569 
575  virtual void StereoMidpoint() { return; }
576 
584 
590  vtkTypeBool IsActiveCameraCreated() { return (this->ActiveCamera != nullptr); }
591 
593 
603  vtkSetMacro(UseDepthPeeling, vtkTypeBool);
604  vtkGetMacro(UseDepthPeeling, vtkTypeBool);
605  vtkBooleanMacro(UseDepthPeeling, vtkTypeBool);
607 
613  vtkSetMacro(UseDepthPeelingForVolumes, bool);
614  vtkGetMacro(UseDepthPeelingForVolumes, bool);
615  vtkBooleanMacro(UseDepthPeelingForVolumes, bool);
616 
618 
627  vtkSetClampMacro(OcclusionRatio, double, 0.0, 0.5);
628  vtkGetMacro(OcclusionRatio, double);
630 
632 
637  vtkSetMacro(MaximumNumberOfPeels, int);
638  vtkGetMacro(MaximumNumberOfPeels, int);
640 
642 
647  vtkGetMacro(LastRenderingUsedDepthPeeling, vtkTypeBool);
649 
651 
658  vtkGetObjectMacro(Delegate, vtkRendererDelegate);
660 
662 
667  vtkGetObjectMacro(Selector, vtkHardwareSelector);
669 
671 
679  vtkGetObjectMacro(BackgroundTexture, vtkTexture);
681 
683 
688  vtkGetObjectMacro(RightBackgroundTexture, vtkTexture);
690 
692 
696  vtkSetMacro(TexturedBackground, bool);
697  vtkGetMacro(TexturedBackground, bool);
698  vtkBooleanMacro(TexturedBackground, bool);
700 
701  // method to release graphics resources in any derived renderers.
703 
705 
708  vtkSetMacro(UseFXAA, bool);
709  vtkGetMacro(UseFXAA, bool);
710  vtkBooleanMacro(UseFXAA, bool);
712 
714 
717  vtkGetObjectMacro(FXAAOptions, vtkFXAAOptions);
720 
722 
726  vtkSetMacro(UseShadows, vtkTypeBool);
727  vtkGetMacro(UseShadows, vtkTypeBool);
728  vtkBooleanMacro(UseShadows, vtkTypeBool);
730 
732 
736  vtkSetMacro(UseHiddenLineRemoval, vtkTypeBool);
737  vtkGetMacro(UseHiddenLineRemoval, vtkTypeBool);
738  vtkBooleanMacro(UseHiddenLineRemoval, vtkTypeBool);
740 
741  // Set/Get a custom render pass.
742  // Initial value is NULL.
744  vtkGetObjectMacro(Pass, vtkRenderPass);
745 
747 
750  vtkGetObjectMacro(Information, vtkInformation);
753 
755 
761  vtkSetMacro(UseImageBasedLighting, bool);
762  vtkGetMacro(UseImageBasedLighting, bool);
763  vtkBooleanMacro(UseImageBasedLighting, bool);
765 
767 
778  vtkGetObjectMacro(EnvironmentTexture, vtkTexture);
779  virtual void SetEnvironmentTexture(vtkTexture* texture, bool isSRGB = false);
781 
783 
786  vtkGetVector3Macro(EnvironmentUp, double);
787  vtkSetVector3Macro(EnvironmentUp, double);
789 
791 
794  vtkGetVector3Macro(EnvironmentRight, double);
795  vtkSetVector3Macro(EnvironmentRight, double);
797 
798 protected:
800  ~vtkRenderer() override;
801 
802  // internal method to expand bounding box to consider model transform
803  // matrix or model view transform matrix based on whether or not deering
804  // frustum is used.
805  virtual void ExpandBounds(double bounds[6], vtkMatrix4x4* matrix);
806 
809 
812 
815 
816  double Ambient[3];
819  double TimeFactor;
823  unsigned char* BackingImage;
824  int BackingStoreSize[2];
826 
828 
830 
831  // Allocate the time for each prop
832  void AllocateTime();
833 
834  // Internal variables indicating the number of props
835  // that have been or will be rendered in each category.
837 
838  // A temporary list of props used for culling, and traversal
839  // of all props when rendering
842 
843  // Indicates if the renderer should receive events from an interactor.
844  // Typically only used in conjunction with transparent renderers.
846 
847  // Shows what layer this renderer belongs to. Only of interested when
848  // there are layered renderers.
849  int Layer;
852 
853  // Holds the result of ComputeVisiblePropBounds so that it is visible from
854  // wrapped languages
855  double ComputedVisiblePropBounds[6];
856 
865 
871 
879 
886 
891 
897  virtual int UpdateGeometry(vtkFrameBufferObjectBase* fbo = nullptr);
898 
907 
914 
919  virtual int UpdateCamera(void);
920 
927 
932  virtual int UpdateLights(void) { return 0; }
933 
940 
945  bool UseFXAA;
946 
951 
957 
963 
971 
977 
988 
995 
1002 
1003  // HARDWARE SELECTION ----------------------------------------
1004  friend class vtkHardwareSelector;
1005 
1010  {
1011  this->Selector = selector;
1012  this->Modified();
1013  }
1014 
1015  // End Ivars for visible cell selecting.
1017 
1018  //---------------------------------------------------------------
1019  friend class vtkRendererDelegate;
1021 
1025 
1026  friend class vtkRenderPass;
1028 
1029  // Arbitrary extra information associated with this renderer
1031 
1034 
1035  double EnvironmentUp[3];
1036  double EnvironmentRight[3];
1037 
1038 private:
1039  vtkRenderer(const vtkRenderer&) = delete;
1040  void operator=(const vtkRenderer&) = delete;
1041 };
1042 
1044 {
1045  return this->Lights;
1046 }
1047 
1052 {
1053  return this->Cullers;
1054 }
1055 
1056 #endif
a actor that draws 2D data
Definition: vtkActor2D.h:40
an ordered list of actors
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:46
a list of nodes that form an assembly path
a virtual camera for 3D rendering
Definition: vtkCamera.h:46
an ordered list of Cullers
a superclass for prop cullers
Definition: vtkCuller.h:38
Configuration for FXAA implementations.
abstract interface to OpenGL FBOs
a simple class to control print indentation
Definition: vtkIndent.h:34
Store vtkAlgorithm input/output information.
an ordered list of lights
a virtual light for 3D rendering
Definition: vtkLight.h:57
represent and manipulate 4x4 transformation matrices
Definition: vtkMatrix4x4.h:36
virtual void Modified()
Update the modification time for this object.
an ordered list of Props
abstract superclass for all actors, volumes and annotations
Definition: vtkProp.h:54
Perform part of the rendering of a vtkRenderer.
Definition: vtkRenderPass.h:57
create a window for renderers to draw into
Render the props of a vtkRenderer.
abstract specification for renderers
Definition: vtkRenderer.h:68
void RemoveVolume(vtkProp *p)
virtual void SetLayer(int layer)
Set/Get the layer that this renderer belongs to.
void ViewToWorld(double &wx, double &wy, double &wz) override
virtual void SetFXAAOptions(vtkFXAAOptions *)
virtual void ClearLights(void)
Internal method temporarily removes lights before reloading them into graphics pipeline.
Definition: vtkRenderer.h:325
void AddCuller(vtkCuller *)
Add an culler to the list of cullers.
void SetPass(vtkRenderPass *p)
vtkTypeBool PreserveDepthBuffer
Definition: vtkRenderer.h:851
vtkLight * CreatedLight
Definition: vtkRenderer.h:808
vtkRenderPass * Pass
Definition: vtkRenderer.h:1027
vtkTypeBool UseShadows
If this flag is on and the rendering engine supports it render shadows Initial value is off.
Definition: vtkRenderer.h:956
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkRenderer * New()
Create a vtkRenderer with a black background, a white ambient light, two-sided lighting turned on,...
double LastRenderTimeInSeconds
Definition: vtkRenderer.h:827
double GetTiledAspectRatio()
Compute the aspect ratio of this renderer for the current tile.
vtkCamera * GetActiveCameraAndResetIfCreated()
Get the current camera and reset it only if it gets created automatically (see GetActiveCamera).
void AddLight(vtkLight *)
Add a light to the list of lights.
vtkCullerCollection * GetCullers()
Return the collection of cullers.
Definition: vtkRenderer.h:1051
virtual vtkLight * MakeLight()
Create a new Light sutible for use with this type of Renderer.
virtual void SetRightBackgroundTexture(vtkTexture *)
Set/Get the texture to be used for the right eye background.
virtual void SetInformation(vtkInformation *)
virtual int UpdateLights(void)
Ask all lights to load themselves into rendering pipeline.
Definition: vtkRenderer.h:932
virtual vtkTypeBool UpdateLightsGeometryToFollowCamera(void)
Ask the lights in the scene that are not in world space (for instance, Headlights or CameraLights tha...
~vtkRenderer() override
virtual int UpdateGeometry(vtkFrameBufferObjectBase *fbo=nullptr)
Ask all props to update and draw any opaque and translucent geometry.
vtkWindow * GetVTKWindow() override
Return the vtkWindow that owns this vtkViewport.
vtkActorCollection * GetActors()
Return any actors in this renderer.
int Transparent()
Returns a boolean indicating if this renderer is transparent.
virtual int UpdateCamera(void)
Ask the active camera to do whatever it needs to do prior to rendering.
bool UseImageBasedLighting
Definition: vtkRenderer.h:1032
int VisibleActorCount()
Returns the number of visible actors.
vtkTypeBool BackingStore
Definition: vtkRenderer.h:822
vtkTexture * EnvironmentTexture
Definition: vtkRenderer.h:1033
void RemoveLight(vtkLight *)
Remove a light from the list of lights.
bool UseDepthPeelingForVolumes
This flag is on and the GPU supports it, depth-peel volumes along with the translucent geometry.
Definition: vtkRenderer.h:976
void RemoveActor(vtkProp *p)
virtual void SetLeftBackgroundTexture(vtkTexture *)
Set/Get the texture to be used for the monocular or stereo left eye background.
void SetSelector(vtkHardwareSelector *selector)
Called by vtkHardwareSelector when it begins rendering for selection.
Definition: vtkRenderer.h:1009
vtkMTimeType GetMTime() override
Return the MTime of the renderer also considering its ivars.
int MaximumNumberOfPeels
In case of depth peeling, define the maximum number of peeling layers.
Definition: vtkRenderer.h:994
vtkTypeBool LastRenderingUsedDepthPeeling
Tells if the last call to DeviceRenderTranslucentPolygonalGeometry() actually used depth peeling.
Definition: vtkRenderer.h:1001
void AllocateTime()
vtkRenderWindow * RenderWindow
Definition: vtkRenderer.h:817
int VisibleVolumeCount()
Returns the number of visible volumes.
double * ComputeVisiblePropBounds()
Wrapper-friendly version of ComputeVisiblePropBounds.
vtkTypeBool AutomaticLightCreation
Definition: vtkRenderer.h:821
int NumberOfPropsRendered
Definition: vtkRenderer.h:836
virtual void StereoMidpoint()
Do anything necessary between rendering the left and right viewpoints in a stereo render.
Definition: vtkRenderer.h:575
virtual vtkTypeBool UpdateLightGeometry(void)
Update the geometry of the lights in the scene that are not in world space (for instance,...
virtual int UpdateOpaquePolygonalGeometry()
Ask all props to update and draw any opaque polygonal geometry.
double TimeFactor
Definition: vtkRenderer.h:819
bool TexturedBackground
Definition: vtkRenderer.h:1022
vtkVolumeCollection * Volumes
Definition: vtkRenderer.h:814
virtual void ExpandBounds(double bounds[6], vtkMatrix4x4 *matrix)
void RemoveCuller(vtkCuller *)
Remove an actor from the list of cullers.
double OcclusionRatio
In case of use of depth peeling technique for rendering translucent material, define the threshold un...
Definition: vtkRenderer.h:987
vtkAssemblyPath * PickProp(double selectionX, double selectionY) override
Return the prop (via a vtkAssemblyPath) that has the highest z value at the given x,...
Definition: vtkRenderer.h:562
void PoseToView(double &wx, double &wy, double &wz) override
vtkTypeBool Erase
When this flag is off, the renderer will not erase the background or the Zbuffer.
Definition: vtkRenderer.h:878
vtkPropCollection * GL2PSSpecialPropCollection
Temporary collection used by vtkRenderWindow::CaptureGL2PSSpecialProps.
Definition: vtkRenderer.h:890
bool UseFXAA
If this flag is on and the rendering engine supports it, FXAA will be used to antialias the scene.
Definition: vtkRenderer.h:945
double ClippingRangeExpansion
Specify enlargement of bounds when resetting the camera clipping range.
Definition: vtkRenderer.h:870
int CaptureGL2PSSpecialProp(vtkProp *)
This function is called to capture an instance of vtkProp that requires special handling during vtkRe...
vtkTypeBool IsActiveCameraCreated()
This method returns 1 if the ActiveCamera has already been set or automatically created by the render...
Definition: vtkRenderer.h:590
unsigned char * BackingImage
Definition: vtkRenderer.h:823
vtkRendererDelegate * Delegate
Definition: vtkRenderer.h:1020
void SetLightCollection(vtkLightCollection *lights)
Set the collection of lights.
virtual void ReleaseGraphicsResources(vtkWindow *)
void PoseToWorld(double &wx, double &wy, double &wz) override
void RemoveAllLights()
Remove all lights from the list of lights.
vtkTexture * BackgroundTexture
Definition: vtkRenderer.h:1023
virtual vtkCamera * MakeCamera()
Create a new Camera sutible for use with this type of Renderer.
double GetZ(int x, int y)
Given a pixel location, return the Z value.
vtkProp ** PropArray
Definition: vtkRenderer.h:840
vtkCullerCollection * Cullers
Definition: vtkRenderer.h:811
vtkCamera * GetActiveCamera()
Get the current camera.
void AddActor(vtkProp *p)
Add/Remove different types of props to the renderer.
int PropArrayCount
Definition: vtkRenderer.h:841
virtual double GetTimeFactor()
Get the ratio between allocated time and actual render time.
double AllocatedRenderTime
Definition: vtkRenderer.h:818
double NearClippingPlaneTolerance
Specifies the minimum distance of the near clipping plane as a percentage of the far clipping plane d...
Definition: vtkRenderer.h:864
vtkTypeBool Draw
When this flag is off, render commands are ignored.
Definition: vtkRenderer.h:885
vtkHardwareSelector * Selector
Definition: vtkRenderer.h:1016
virtual void DeviceRender()
Create an image.
Definition: vtkRenderer.h:300
vtkTypeBool TwoSidedLighting
Definition: vtkRenderer.h:820
vtkTexture * RightBackgroundTexture
Definition: vtkRenderer.h:1024
vtkTypeBool UseDepthPeeling
If this flag is on and the GPU supports it, depth peeling is used for rendering translucent materials...
Definition: vtkRenderer.h:970
vtkTypeBool UseHiddenLineRemoval
When this flag is on and the rendering engine supports it, wireframe polydata will be rendered using ...
Definition: vtkRenderer.h:962
void WorldToPose(double &wx, double &wy, double &wz) override
Convert to from pose coordinates.
vtkLightCollection * Lights
Definition: vtkRenderer.h:810
void CreateLight(void)
Create and add a light to renderer.
vtkTexture * GetLeftBackgroundTexture()
void ViewToWorld() override
Convert view point coordinates to world coordinates.
vtkVolumeCollection * GetVolumes()
Return the collection of volumes.
void SetActiveCamera(vtkCamera *)
Specify the camera to use for this renderer.
virtual void SetEnvironmentTexture(vtkTexture *texture, bool isSRGB=false)
vtkTimeStamp RenderTime
Definition: vtkRenderer.h:825
virtual void Render()
CALLED BY vtkRenderWindow ONLY.
virtual int UpdateTranslucentPolygonalGeometry()
Ask all props to update and draw any translucent polygonal geometry.
vtkLightCollection * GetLights()
Return the collection of lights.
Definition: vtkRenderer.h:1043
vtkTypeBool LightFollowCamera
Definition: vtkRenderer.h:829
vtkFXAAOptions * FXAAOptions
Holds the FXAA configuration.
Definition: vtkRenderer.h:950
void ViewToPose(double &wx, double &wy, double &wz) override
void WorldToView() override
Convert world point coordinates to view coordinates.
virtual void DeviceRenderOpaqueGeometry(vtkFrameBufferObjectBase *fbo=nullptr)
Render opaque polygonal geometry.
vtkAssemblyPath * PickProp(double selectionX1, double selectionY1, double selectionX2, double selectionY2) override
Return the Prop that has the highest z value at the given x1, y1 and x2,y2 positions in the viewport.
virtual void SetBackgroundTexture(vtkTexture *)
void AddVolume(vtkProp *p)
void WorldToView(double &wx, double &wy, double &wz) override
Convert world point coordinates to view coordinates.
virtual double GetAllocatedRenderTime()
virtual void Clear()
Clear the image to the background color.
Definition: vtkRenderer.h:330
void ComputeVisiblePropBounds(double bounds[6])
Compute the bounding box of all the visible props Used in ResetCamera() and ResetCameraClippingRange(...
virtual void DeviceRenderTranslucentPolygonalGeometry(vtkFrameBufferObjectBase *fbo=nullptr)
Render translucent polygonal geometry.
vtkTypeBool PreserveColorBuffer
Definition: vtkRenderer.h:850
void SetGL2PSSpecialPropCollection(vtkPropCollection *)
Set the prop collection object used during vtkRenderWindow::CaptureGL2PSSpecialProps().
vtkActorCollection * Actors
Definition: vtkRenderer.h:813
void SetDelegate(vtkRendererDelegate *d)
Set/Get a custom Render call.
vtkTypeBool Interactive
Definition: vtkRenderer.h:845
vtkInformation * Information
Definition: vtkRenderer.h:1030
vtkCamera * ActiveCamera
Definition: vtkRenderer.h:807
handles properties associated with a texture map
Definition: vtkTexture.h:66
record modification and/or execution time
Definition: vtkTimeStamp.h:33
abstract specification for Viewports
Definition: vtkViewport.h:45
virtual vtkAssemblyPath * PickProp(double selectionX, double selectionY)=0
Return the Prop that has the highest z value at the given x, y position in the viewport.
an ordered list of volumes
represents a volume (data & properties) in a rendered scene
Definition: vtkVolume.h:45
window superclass for vtkRenderWindow
Definition: vtkWindow.h:38
int vtkTypeBool
Definition: vtkABI.h:69
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:293
#define VTK_SIZEHINT(...)