VTK  9.1.0
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 =========================================================================*/
32 #ifndef vtkRenderer_h
33 #define vtkRenderer_h
34 
35 #include "vtkRenderingCoreModule.h" // For export macro
36 #include "vtkViewport.h"
37 
38 #include "vtkActorCollection.h" // Needed for access in inline members
39 #include "vtkVolumeCollection.h" // Needed for access in inline members
40 
41 #include <array> // To store matrices
42 
43 class vtkFXAAOptions;
44 class vtkRenderWindow;
45 class vtkVolume;
46 class vtkCuller;
47 class vtkActor;
48 class vtkActor2D;
49 class vtkCamera;
51 class vtkInformation;
52 class vtkLightCollection;
54 class vtkLight;
57 class vtkRenderPass;
58 class vtkTexture;
59 
60 class vtkRecti;
61 class vtkVector3d;
62 
63 class VTKRENDERINGCORE_EXPORT vtkRenderer : public vtkViewport
64 {
65 public:
66  vtkTypeMacro(vtkRenderer, vtkViewport);
67  void PrintSelf(ostream& os, vtkIndent indent) override;
68 
74  static vtkRenderer* New();
75 
77 
82  void AddActor(vtkProp* p);
83  void AddVolume(vtkProp* p);
84  void RemoveActor(vtkProp* p);
87 
92 
97 
102 
106  vtkLightCollection* GetLights();
107 
115 
119  void CreateLight(void);
120 
126  virtual vtkLight* MakeLight();
127 
129 
135  vtkGetMacro(TwoSidedLighting, vtkTypeBool);
136  vtkSetMacro(TwoSidedLighting, vtkTypeBool);
137  vtkBooleanMacro(TwoSidedLighting, vtkTypeBool);
139 
141 
154  vtkSetMacro(LightFollowCamera, vtkTypeBool);
155  vtkGetMacro(LightFollowCamera, vtkTypeBool);
156  vtkBooleanMacro(LightFollowCamera, vtkTypeBool);
158 
160 
168  vtkGetMacro(AutomaticLightCreation, vtkTypeBool);
169  vtkSetMacro(AutomaticLightCreation, vtkTypeBool);
170  vtkBooleanMacro(AutomaticLightCreation, vtkTypeBool);
172 
179 
184 
189 
194 
201 
207  virtual vtkCamera* MakeCamera();
208 
210 
216  vtkSetMacro(Erase, vtkTypeBool);
217  vtkGetMacro(Erase, vtkTypeBool);
218  vtkBooleanMacro(Erase, vtkTypeBool);
220 
222 
227  vtkSetMacro(Draw, vtkTypeBool);
228  vtkGetMacro(Draw, vtkTypeBool);
229  vtkBooleanMacro(Draw, vtkTypeBool);
231 
237 
244 
249 
254 
258  vtkCullerCollection* GetCullers();
259 
261 
264  vtkSetVector3Macro(Ambient, double);
265  vtkGetVectorMacro(Ambient, double, 3);
267 
269 
273  vtkSetMacro(AllocatedRenderTime, double);
274  virtual double GetAllocatedRenderTime();
276 
283  virtual double GetTimeFactor();
284 
291  virtual void Render();
292 
296  virtual void DeviceRender(){};
297 
305 
316 
321  virtual void ClearLights(void) {}
322 
326  virtual void Clear() {}
327 
332 
337 
342  void ComputeVisiblePropBounds(double bounds[6]);
343 
348 
353  virtual void ResetCameraClippingRange();
354 
356 
359  virtual void ResetCameraClippingRange(const double bounds[6]);
360  virtual void ResetCameraClippingRange(
361  double xmin, double xmax, double ymin, double ymax, double zmin, double zmax);
363 
365 
370  vtkSetClampMacro(NearClippingPlaneTolerance, double, 0, 0.99);
371  vtkGetMacro(NearClippingPlaneTolerance, double);
373 
375 
380  vtkSetClampMacro(ClippingRangeExpansion, double, 0, 0.99);
381  vtkGetMacro(ClippingRangeExpansion, double);
383 
390  virtual void ResetCamera();
391 
401  virtual void ResetCamera(const double bounds[6]);
402 
406  virtual void ResetCamera(
407  double xmin, double xmax, double ymin, double ymax, double zmin, double zmax);
408 
413  virtual void ResetCameraScreenSpace();
414 
420  virtual void ResetCameraScreenSpace(const double bounds[6]);
421 
422  using vtkViewport::DisplayToWorld;
423 
427  vtkVector3d DisplayToWorld(const vtkVector3d& display);
428 
434  void ZoomToBoxUsingViewAngle(const vtkRecti& box, const double offsetRatio = 1.0);
435 
439  virtual void ResetCameraScreenSpace(
440  double xmin, double xmax, double ymin, double ymax, double zmin, double zmax);
441 
443 
448  void SetRenderWindow(vtkRenderWindow*);
449  vtkRenderWindow* GetRenderWindow() { return this->RenderWindow; }
450  vtkWindow* GetVTKWindow() override;
452 
454 
460  vtkSetMacro(BackingStore, vtkTypeBool);
461  vtkGetMacro(BackingStore, vtkTypeBool);
462  vtkBooleanMacro(BackingStore, vtkTypeBool);
464 
466 
471  vtkSetMacro(Interactive, vtkTypeBool);
472  vtkGetMacro(Interactive, vtkTypeBool);
473  vtkBooleanMacro(Interactive, vtkTypeBool);
475 
477 
488  virtual void SetLayer(int layer);
489  vtkGetMacro(Layer, int);
491 
493 
503  vtkGetMacro(PreserveColorBuffer, vtkTypeBool);
504  vtkSetMacro(PreserveColorBuffer, vtkTypeBool);
505  vtkBooleanMacro(PreserveColorBuffer, vtkTypeBool);
507 
509 
513  vtkSetMacro(PreserveDepthBuffer, vtkTypeBool);
514  vtkGetMacro(PreserveDepthBuffer, vtkTypeBool);
515  vtkBooleanMacro(PreserveDepthBuffer, vtkTypeBool);
517 
522  int Transparent();
523 
527  void WorldToView() override;
528 
530 
533  void ViewToWorld() override;
534  void ViewToWorld(double& wx, double& wy, double& wz) override;
536 
540  void WorldToView(double& wx, double& wy, double& wz) override;
541 
543 
546  void WorldToPose(double& wx, double& wy, double& wz) override;
547  void PoseToWorld(double& wx, double& wy, double& wz) override;
548  void ViewToPose(double& wx, double& wy, double& wz) override;
549  void PoseToView(double& wx, double& wy, double& wz) override;
551 
556  double GetZ(int x, int y);
557 
561  vtkMTimeType GetMTime() override;
562 
564 
567  vtkGetMacro(LastRenderTimeInSeconds, double);
569 
571 
577  vtkGetMacro(NumberOfPropsRendered, int);
579 
581 
588  vtkAssemblyPath* PickProp(double selectionX, double selectionY) override
589  {
590  return this->PickProp(selectionX, selectionY, selectionX, selectionY);
591  }
593  double selectionX1, double selectionY1, double selectionX2, double selectionY2) override;
595 
601  virtual void StereoMidpoint() { return; }
602 
610 
616  vtkTypeBool IsActiveCameraCreated() { return (this->ActiveCamera != nullptr); }
617 
619 
629  vtkSetMacro(UseDepthPeeling, vtkTypeBool);
630  vtkGetMacro(UseDepthPeeling, vtkTypeBool);
631  vtkBooleanMacro(UseDepthPeeling, vtkTypeBool);
633 
639  vtkSetMacro(UseDepthPeelingForVolumes, bool);
640  vtkGetMacro(UseDepthPeelingForVolumes, bool);
641  vtkBooleanMacro(UseDepthPeelingForVolumes, bool);
642 
644 
653  vtkSetClampMacro(OcclusionRatio, double, 0.0, 0.5);
654  vtkGetMacro(OcclusionRatio, double);
656 
658 
663  vtkSetMacro(MaximumNumberOfPeels, int);
664  vtkGetMacro(MaximumNumberOfPeels, int);
666 
668 
673  vtkGetMacro(LastRenderingUsedDepthPeeling, vtkTypeBool);
675 
677 
681  vtkSetMacro(UseSSAO, bool);
682  vtkGetMacro(UseSSAO, bool);
683  vtkBooleanMacro(UseSSAO, bool);
685 
687 
691  vtkSetMacro(SSAORadius, double);
692  vtkGetMacro(SSAORadius, double);
694 
696 
700  vtkSetMacro(SSAOBias, double);
701  vtkGetMacro(SSAOBias, double);
703 
705 
709  vtkSetMacro(SSAOKernelSize, unsigned int);
710  vtkGetMacro(SSAOKernelSize, unsigned int);
712 
714 
719  vtkSetMacro(SSAOBlur, bool);
720  vtkGetMacro(SSAOBlur, bool);
721  vtkBooleanMacro(SSAOBlur, bool);
723 
725 
732  vtkGetObjectMacro(Delegate, vtkRendererDelegate);
734 
736 
741  vtkGetObjectMacro(Selector, vtkHardwareSelector);
743 
745 
753  vtkGetObjectMacro(BackgroundTexture, vtkTexture);
755 
757 
762  vtkGetObjectMacro(RightBackgroundTexture, vtkTexture);
764 
766 
770  vtkSetMacro(TexturedBackground, bool);
771  vtkGetMacro(TexturedBackground, bool);
772  vtkBooleanMacro(TexturedBackground, bool);
774 
775  // method to release graphics resources in any derived renderers.
777 
779 
782  vtkSetMacro(UseFXAA, bool);
783  vtkGetMacro(UseFXAA, bool);
784  vtkBooleanMacro(UseFXAA, bool);
786 
788 
791  vtkGetObjectMacro(FXAAOptions, vtkFXAAOptions);
794 
796 
800  vtkSetMacro(UseShadows, vtkTypeBool);
801  vtkGetMacro(UseShadows, vtkTypeBool);
802  vtkBooleanMacro(UseShadows, vtkTypeBool);
804 
806 
810  vtkSetMacro(UseHiddenLineRemoval, vtkTypeBool);
811  vtkGetMacro(UseHiddenLineRemoval, vtkTypeBool);
812  vtkBooleanMacro(UseHiddenLineRemoval, vtkTypeBool);
814 
815  // Set/Get a custom render pass.
816  // Initial value is NULL.
818  vtkGetObjectMacro(Pass, vtkRenderPass);
819 
821 
824  vtkGetObjectMacro(Information, vtkInformation);
827 
829 
835  vtkSetMacro(UseImageBasedLighting, bool);
836  vtkGetMacro(UseImageBasedLighting, bool);
837  vtkBooleanMacro(UseImageBasedLighting, bool);
839 
841 
852  vtkGetObjectMacro(EnvironmentTexture, vtkTexture);
853  virtual void SetEnvironmentTexture(vtkTexture* texture, bool isSRGB = false);
855 
857 
860  vtkGetVector3Macro(EnvironmentUp, double);
861  vtkSetVector3Macro(EnvironmentUp, double);
863 
865 
868  vtkGetVector3Macro(EnvironmentRight, double);
869  vtkSetVector3Macro(EnvironmentRight, double);
871 
872 protected:
874  ~vtkRenderer() override;
875 
876  // internal method to expand bounding box to consider model transform
877  // matrix or model view transform matrix based on whether or not deering
878  // frustum is used. 'bounds' buffer is mutated to the expanded box.
879  virtual void ExpandBounds(double bounds[6], vtkMatrix4x4* matrix);
880 
883 
886 
889 
890  double Ambient[3];
893  double TimeFactor;
897  unsigned char* BackingImage;
898  int BackingStoreSize[2];
900 
902 
904 
905  // Allocate the time for each prop
906  void AllocateTime();
907 
908  // Internal variables indicating the number of props
909  // that have been or will be rendered in each category.
911 
912  // A temporary list of props used for culling, and traversal
913  // of all props when rendering
916 
917  // Indicates if the renderer should receive events from an interactor.
918  // Typically only used in conjunction with transparent renderers.
920 
921  // Shows what layer this renderer belongs to. Only of interested when
922  // there are layered renderers.
923  int Layer;
926 
927  // Holds the result of ComputeVisiblePropBounds so that it is visible from
928  // wrapped languages
929  double ComputedVisiblePropBounds[6];
930 
939 
945 
953 
960 
965 
970  const std::array<double, 16>& GetCompositeProjectionTransformationMatrix();
971 
976  const std::array<double, 16>& GetProjectionTransformationMatrix();
977 
982  const std::array<double, 16>& GetViewTransformMatrix();
983 
989  virtual int UpdateGeometry(vtkFrameBufferObjectBase* fbo = nullptr);
990 
999 
1006 
1011  virtual int UpdateCamera(void);
1012 
1019 
1024  virtual int UpdateLights(void) { return 0; }
1025 
1032 
1037  bool UseFXAA;
1038 
1043 
1049 
1055 
1063 
1069 
1080 
1087 
1088  bool UseSSAO = false;
1089  double SSAORadius = 0.5;
1090  double SSAOBias = 0.01;
1091  unsigned int SSAOKernelSize = 32;
1092  bool SSAOBlur = false;
1093 
1100 
1101  // HARDWARE SELECTION ----------------------------------------
1102  friend class vtkHardwareSelector;
1103 
1108  {
1109  this->Selector = selector;
1110  this->Modified();
1111  }
1112 
1113  // End Ivars for visible cell selecting.
1115 
1116  //---------------------------------------------------------------
1117  friend class vtkRendererDelegate;
1119 
1123 
1124  friend class vtkRenderPass;
1126 
1127  // Arbitrary extra information associated with this renderer
1129 
1132 
1133  double EnvironmentUp[3];
1134  double EnvironmentRight[3];
1135 
1136 private:
1140  std::array<double, 16> CompositeProjectionTransformationMatrix;
1141 
1145  double LastCompositeProjectionTransformationMatrixTiledAspectRatio;
1146 
1150  vtkMTimeType LastCompositeProjectionTransformationMatrixCameraModified;
1151 
1155  std::array<double, 16> ProjectionTransformationMatrix;
1156 
1160  double LastProjectionTransformationMatrixTiledAspectRatio;
1161 
1165  vtkMTimeType LastProjectionTransformationMatrixCameraModified;
1166 
1170  std::array<double, 16> ViewTransformMatrix;
1171 
1175  vtkMTimeType LastViewTransformCameraModified;
1176 
1177  vtkRenderer(const vtkRenderer&) = delete;
1178  void operator=(const vtkRenderer&) = delete;
1179 };
1180 
1182 {
1183  return this->Lights;
1184 }
1185 
1190 {
1191  return this->Cullers;
1192 }
1193 
1194 #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:48
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:64
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
These methods map from one coordinate system to another.
virtual void SetFXAAOptions(vtkFXAAOptions *)
const std::array< double, 16 > & GetViewTransformMatrix()
Gets the ActiveCamera ViewTransformMatrix, only computing it if necessary.
virtual void ClearLights(void)
Internal method temporarily removes lights before reloading them into graphics pipeline.
Definition: vtkRenderer.h:321
void AddCuller(vtkCuller *)
Add an culler to the list of cullers.
void SetPass(vtkRenderPass *p)
vtkTypeBool PreserveDepthBuffer
Definition: vtkRenderer.h:925
vtkLight * CreatedLight
Definition: vtkRenderer.h:882
vtkRenderPass * Pass
Definition: vtkRenderer.h:1125
vtkTypeBool UseShadows
If this flag is on and the rendering engine supports it render shadows Initial value is off.
Definition: vtkRenderer.h:1048
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:901
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:1189
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:1024
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:1130
int VisibleActorCount()
Returns the number of visible actors.
vtkTypeBool BackingStore
Definition: vtkRenderer.h:896
vtkTexture * EnvironmentTexture
Definition: vtkRenderer.h:1131
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:1068
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:1107
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:1086
vtkTypeBool LastRenderingUsedDepthPeeling
Tells if the last call to DeviceRenderTranslucentPolygonalGeometry() actually used depth peeling.
Definition: vtkRenderer.h:1099
void AllocateTime()
vtkRenderWindow * RenderWindow
Definition: vtkRenderer.h:891
int VisibleVolumeCount()
Returns the number of visible volumes.
double * ComputeVisiblePropBounds()
Wrapper-friendly version of ComputeVisiblePropBounds.
vtkTypeBool AutomaticLightCreation
Definition: vtkRenderer.h:895
int NumberOfPropsRendered
Definition: vtkRenderer.h:910
virtual void StereoMidpoint()
Do anything necessary between rendering the left and right viewpoints in a stereo render.
Definition: vtkRenderer.h:601
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:893
bool TexturedBackground
Definition: vtkRenderer.h:1120
vtkVolumeCollection * Volumes
Definition: vtkRenderer.h:888
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:1079
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:588
void PoseToView(double &wx, double &wy, double &wz) override
These methods map from one coordinate system to another.
vtkTypeBool Erase
When this flag is off, the renderer will not erase the background or the Zbuffer.
Definition: vtkRenderer.h:952
vtkPropCollection * GL2PSSpecialPropCollection
Temporary collection used by vtkRenderWindow::CaptureGL2PSSpecialProps.
Definition: vtkRenderer.h:964
bool UseFXAA
If this flag is on and the rendering engine supports it, FXAA will be used to antialias the scene.
Definition: vtkRenderer.h:1037
double ClippingRangeExpansion
Specify enlargement of bounds when resetting the camera clipping range.
Definition: vtkRenderer.h:944
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:616
unsigned char * BackingImage
Definition: vtkRenderer.h:897
vtkRendererDelegate * Delegate
Definition: vtkRenderer.h:1118
void SetLightCollection(vtkLightCollection *lights)
Set the collection of lights.
virtual void ReleaseGraphicsResources(vtkWindow *)
void PoseToWorld(double &wx, double &wy, double &wz) override
These methods map from one coordinate system to another.
void RemoveAllLights()
Remove all lights from the list of lights.
vtkTexture * BackgroundTexture
Definition: vtkRenderer.h:1121
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:914
vtkCullerCollection * Cullers
Definition: vtkRenderer.h:885
vtkCamera * GetActiveCamera()
Get the current camera.
void AddActor(vtkProp *p)
Add/Remove different types of props to the renderer.
int PropArrayCount
Definition: vtkRenderer.h:915
virtual double GetTimeFactor()
Get the ratio between allocated time and actual render time.
double AllocatedRenderTime
Definition: vtkRenderer.h:892
const std::array< double, 16 > & GetProjectionTransformationMatrix()
Gets the ActiveCamera ProjectionTransformationMatrix, only computing it if necessary.
double NearClippingPlaneTolerance
Specifies the minimum distance of the near clipping plane as a percentage of the far clipping plane d...
Definition: vtkRenderer.h:938
vtkTypeBool Draw
When this flag is off, render commands are ignored.
Definition: vtkRenderer.h:959
vtkHardwareSelector * Selector
Definition: vtkRenderer.h:1114
virtual void DeviceRender()
Create an image.
Definition: vtkRenderer.h:296
vtkTypeBool TwoSidedLighting
Definition: vtkRenderer.h:894
vtkTexture * RightBackgroundTexture
Definition: vtkRenderer.h:1122
vtkTypeBool UseDepthPeeling
If this flag is on and the GPU supports it, depth peeling is used for rendering translucent materials...
Definition: vtkRenderer.h:1062
vtkTypeBool UseHiddenLineRemoval
When this flag is on and the rendering engine supports it, wireframe polydata will be rendered using ...
Definition: vtkRenderer.h:1054
void WorldToPose(double &wx, double &wy, double &wz) override
Convert to from pose coordinates.
vtkLightCollection * Lights
Definition: vtkRenderer.h:884
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:899
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:1181
vtkTypeBool LightFollowCamera
Definition: vtkRenderer.h:903
vtkFXAAOptions * FXAAOptions
Holds the FXAA configuration.
Definition: vtkRenderer.h:1042
void ViewToPose(double &wx, double &wy, double &wz) override
These methods map from one coordinate system to another.
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:326
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:924
void SetGL2PSSpecialPropCollection(vtkPropCollection *)
Set the prop collection object used during vtkRenderWindow::CaptureGL2PSSpecialProps().
vtkActorCollection * Actors
Definition: vtkRenderer.h:887
void SetDelegate(vtkRendererDelegate *d)
Set/Get a custom Render call.
vtkTypeBool Interactive
Definition: vtkRenderer.h:919
vtkInformation * Information
Definition: vtkRenderer.h:1128
vtkCamera * ActiveCamera
Definition: vtkRenderer.h:881
const std::array< double, 16 > & GetCompositeProjectionTransformationMatrix()
Gets the ActiveCamera CompositeProjectionTransformationMatrix, only computing it if necessary.
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:47
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:36
int vtkTypeBool
Definition: vtkABI.h:69
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:287
#define VTK_SIZEHINT(...)