VTK  9.6.20260614
vtkRenderer.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
137
138#ifndef vtkRenderer_h
139#define vtkRenderer_h
140
141#include "vtkRenderingCoreModule.h" // For export macro
142#include "vtkViewport.h"
143#include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
144
145#include "vtkActorCollection.h" // Needed for access in inline members
146#include "vtkMatrix3x3.h"
147#include "vtkVolumeCollection.h" // Needed for access in inline members
148
149#include <array> // To store matrices
150
151VTK_ABI_NAMESPACE_BEGIN
152class vtkFXAAOptions;
153class vtkRenderWindow;
154class vtkVolume;
155class vtkCuller;
156class vtkActor;
157class vtkActor2D;
158class vtkCamera;
160class vtkInformation;
163class vtkLight;
166class vtkRenderPass;
167class vtkTexture;
168
169class vtkRecti;
170class vtkVector3d;
171
172class VTKRENDERINGCORE_EXPORT VTK_MARSHALAUTO vtkRenderer : public vtkViewport
173{
174public:
175 vtkTypeMacro(vtkRenderer, vtkViewport);
176 void PrintSelf(ostream& os, vtkIndent indent) override;
177
183 static vtkRenderer* New();
184
186
200
206
212
218
223
231
236
242 virtual vtkLight* MakeLight();
243
245
253 vtkBooleanMacro(TwoSidedLighting, vtkTypeBool);
255
257
274
276
288
295
301
307
312
319
326
328
334 vtkSetMacro(Erase, vtkTypeBool);
335 vtkGetMacro(Erase, vtkTypeBool);
336 vtkBooleanMacro(Erase, vtkTypeBool);
338
340
345 vtkSetMacro(Draw, vtkTypeBool);
346 vtkGetMacro(Draw, vtkTypeBool);
347 vtkBooleanMacro(Draw, vtkTypeBool);
349
355
362
368
374
379
381
384 vtkSetVector3Macro(Ambient, double);
385 vtkGetVectorMacro(Ambient, double, 3);
387
389
393 vtkSetMacro(AllocatedRenderTime, double);
394 virtual double GetAllocatedRenderTime();
396
403 virtual double GetTimeFactor();
404
411 virtual void Render();
412
416 virtual void DeviceRender() {}
417
425
436
441 virtual void ClearLights() {}
442
446 virtual void Clear() {}
447
452
457
462 void ComputeVisiblePropBounds(double bounds[6]);
463
468
474
476
479 virtual void ResetCameraClippingRange(const double bounds[6]);
481 double xmin, double xmax, double ymin, double ymax, double zmin, double zmax);
483
485
490 vtkSetClampMacro(NearClippingPlaneTolerance, double, 0, 0.99);
491 vtkGetMacro(NearClippingPlaneTolerance, double);
493
495
500 vtkSetClampMacro(ClippingRangeExpansion, double, 0, 0.99);
501 vtkGetMacro(ClippingRangeExpansion, double);
503
511 virtual bool ResetCamera();
512
522 virtual void ResetCamera(const double bounds[6]);
523
527 virtual void ResetCamera(
528 double xmin, double xmax, double ymin, double ymax, double zmin, double zmax);
529
538 virtual bool ResetCameraScreenSpace(double offsetRatio = 0.9);
539
548 virtual void ResetCameraScreenSpace(const double bounds[6], double offsetRatio = 0.9);
549
551
556
562 void ZoomToBoxUsingViewAngle(const vtkRecti& box, double offsetRatio = 1.0);
563
570 virtual void ResetCameraScreenSpace(double xmin, double xmax, double ymin, double ymax,
571 double zmin, double zmax, double offsetRatio = 0.9);
572
574
583
585
593 vtkBooleanMacro(BackingStore, vtkTypeBool);
595
597
604 vtkBooleanMacro(Interactive, vtkTypeBool);
606
608
619 virtual void SetLayer(int layer);
620 vtkGetMacro(Layer, int);
622
624
638
640
648
654
658 void WorldToView() override;
659
661
664 void ViewToWorld() override;
665 void ViewToWorld(double& wx, double& wy, double& wz) override;
667
671 void WorldToView(double& wx, double& wy, double& wz) override;
672
674
677 void WorldToPose(double& wx, double& wy, double& wz) override;
678 void PoseToWorld(double& wx, double& wy, double& wz) override;
679 void ViewToPose(double& wx, double& wy, double& wz) override;
680 void PoseToView(double& wx, double& wy, double& wz) override;
682
695 double GetZ(int x, int y);
696
698
705 vtkSetMacro(SafeGetZ, bool);
706 vtkGetMacro(SafeGetZ, bool);
707 vtkBooleanMacro(SafeGetZ, bool);
709
714
716
719 vtkGetMacro(LastRenderTimeInSeconds, double);
721
723
729 vtkGetMacro(NumberOfPropsRendered, int);
731
733
740 vtkAssemblyPath* PickProp(double selectionX, double selectionY) override
741 {
742 return this->PickProp(selectionX, selectionY, selectionX, selectionY);
743 }
745 double selectionX1, double selectionY1, double selectionX2, double selectionY2) override;
747
749
759 vtkAssemblyPath* PickProp(double selectionX, double selectionY, int fieldAssociation,
760 vtkSmartPointer<vtkSelection> selection) override
761 {
762 return this->PickProp(
763 selectionX, selectionY, selectionX, selectionY, fieldAssociation, selection);
764 }
765 vtkAssemblyPath* PickProp(double selectionX1, double selectionY1, double selectionX2,
766 double selectionY2, int fieldAssociation, vtkSmartPointer<vtkSelection> selection) override;
768
774 virtual void StereoMidpoint() {}
775
783
789 vtkTypeBool IsActiveCameraCreated() { return (this->ActiveCamera != nullptr); }
790
792
804 vtkBooleanMacro(UseDepthPeeling, vtkTypeBool);
806
812 vtkSetMacro(UseDepthPeelingForVolumes, bool);
813 vtkGetMacro(UseDepthPeelingForVolumes, bool);
814 vtkBooleanMacro(UseDepthPeelingForVolumes, bool);
815
817
826 vtkSetClampMacro(OcclusionRatio, double, 0.0, 0.5);
827 vtkGetMacro(OcclusionRatio, double);
829
831
836 vtkSetMacro(MaximumNumberOfPeels, int);
837 vtkGetMacro(MaximumNumberOfPeels, int);
839
841
848
850
854 vtkSetMacro(UseSSAO, bool);
855 vtkGetMacro(UseSSAO, bool);
856 vtkBooleanMacro(UseSSAO, bool);
858
860
864 vtkSetMacro(SSAORadius, double);
865 vtkGetMacro(SSAORadius, double);
867
869
873 vtkSetMacro(SSAOBias, double);
874 vtkGetMacro(SSAOBias, double);
876
878
882 vtkSetMacro(SSAOKernelSize, unsigned int);
883 vtkGetMacro(SSAOKernelSize, unsigned int);
885
887
892 vtkSetMacro(SSAOBlur, bool);
893 vtkGetMacro(SSAOBlur, bool);
894 vtkBooleanMacro(SSAOBlur, bool);
896
898
905 vtkGetObjectMacro(Delegate, vtkRendererDelegate);
907
909
914 vtkGetObjectMacro(Selector, vtkHardwareSelector);
916
918
926 vtkGetObjectMacro(BackgroundTexture, vtkTexture);
928
930
937
939
943 vtkSetMacro(TexturedBackground, bool);
944 vtkGetMacro(TexturedBackground, bool);
945 vtkBooleanMacro(TexturedBackground, bool);
947
948 // method to release graphics resources in any derived renderers.
950
952
955 vtkSetMacro(UseFXAA, bool);
956 vtkGetMacro(UseFXAA, bool);
957 vtkBooleanMacro(UseFXAA, bool);
959
961
964 vtkGetObjectMacro(FXAAOptions, vtkFXAAOptions);
967
969
973 vtkSetMacro(UseShadows, vtkTypeBool);
974 vtkGetMacro(UseShadows, vtkTypeBool);
975 vtkBooleanMacro(UseShadows, vtkTypeBool);
977
979
987
988 // Set/Get a custom render pass.
989 // Initial value is NULL.
991 vtkGetObjectMacro(Pass, vtkRenderPass);
992
994
997 vtkGetObjectMacro(Information, vtkInformation);
1000
1002
1008 vtkSetMacro(UseImageBasedLighting, bool);
1009 vtkGetMacro(UseImageBasedLighting, bool);
1010 vtkBooleanMacro(UseImageBasedLighting, bool);
1012
1014
1019 VTK_MARSHALGETTER(EnvironmentTextureProperty)
1020 vtkGetObjectMacro(EnvironmentTexture, vtkTexture);
1021 VTK_MARSHALSETTER(EnvironmentTextureProperty)
1023 virtual void SetEnvironmentTexture(vtkTexture* texture, bool isSRGB = false);
1025
1027
1034 virtual double* GetEnvironmentUp();
1035 virtual void GetEnvironmentUp(double& vectorUpX, double& vectorUpY, double& vectorUpZ);
1036 virtual void GetEnvironmentUp(double vectorUp[3]);
1037 virtual void SetEnvironmentUp(double vectorUpX, double vectorUpY, double vectorUpZ);
1038 virtual void SetEnvironmentUp(double vectorUp[3]);
1040
1042
1049 virtual double* GetEnvironmentRight();
1051 double& vectorRightX, double& vectorRightY, double& vectorRightZ);
1052 virtual void GetEnvironmentRight(double vectorRight[3]);
1053 virtual void SetEnvironmentRight(double vectorRightX, double vectorRightY, double vectorRightZ);
1054 virtual void SetEnvironmentRight(double vectorRight[3]);
1056
1058
1063 vtkGetSmartPointerMacro(EnvironmentRotationMatrix, vtkMatrix3x3);
1066
1068
1071 vtkSetMacro(SkyboxBlurEnabled, bool);
1072 vtkGetMacro(SkyboxBlurEnabled, bool);
1073 vtkBooleanMacro(SkyboxBlurEnabled, bool);
1075
1077
1081 vtkSetMacro(SkyboxBlurRadius, float);
1082 vtkGetMacro(SkyboxBlurRadius, float);
1084
1086
1097 vtkSetMacro(UseOIT, bool);
1098 vtkGetMacro(UseOIT, bool);
1099 vtkBooleanMacro(UseOIT, bool);
1101
1102protected:
1104 ~vtkRenderer() override;
1105
1106 // internal method to expand bounding box to consider model transform
1107 // matrix or model view transform matrix based on whether or not deering
1108 // frustum is used. 'bounds' buffer is mutated to the expanded box.
1109 virtual void ExpandBounds(double bounds[6], vtkMatrix4x4* matrix);
1110
1113
1116
1119
1120 double Ambient[3];
1127 unsigned char* BackingImage;
1130
1132
1134
1135 // Allocate the time for each prop
1137
1138 // Internal variables indicating the number of props
1139 // that have been or will be rendered in each category.
1141
1142 // A temporary list of props used for culling, and traversal
1143 // of all props when rendering
1144 std::vector<vtkProp*> PropArray;
1146
1147 // Indicates if the renderer should receive events from an interactor.
1148 // Typically only used in conjunction with transparent renderers.
1150
1151 // Shows what layer this renderer belongs to. Only of interested when
1152 // there are layered renderers.
1156
1157 // Holds the result of ComputeVisiblePropBounds so that it is visible from
1158 // wrapped languages
1160
1169
1175
1183
1190
1195
1200 const std::array<double, 16>& GetCompositeProjectionTransformationMatrix();
1201
1206 const std::array<double, 16>& GetProjectionTransformationMatrix();
1207
1212 const std::array<double, 16>& GetViewTransformMatrix();
1213
1219 virtual int UpdateGeometry(vtkFrameBufferObjectBase* fbo = nullptr);
1220
1229
1236
1241 virtual int UpdateCamera();
1242
1249
1254 virtual int UpdateLights() { return 0; }
1255
1262
1268
1273
1279
1285
1293
1299
1310
1317
1318 bool UseSSAO = false;
1319 double SSAORadius = 0.5;
1320 double SSAOBias = 0.01;
1321 unsigned int SSAOKernelSize = 32;
1322 bool SSAOBlur = false;
1323
1335 bool UseOIT = true;
1336
1343
1344 // HARDWARE SELECTION ----------------------------------------
1346
1351 {
1352 this->Selector = selector;
1353 this->Modified();
1354 }
1355
1356 // End Ivars for visible cell selecting.
1358
1359 //---------------------------------------------------------------
1362
1366
1367 friend class vtkRenderPass;
1369
1370 // Arbitrary extra information associated with this renderer
1372
1375
1376private:
1380 void ComputeRotationMatrixForwardVector();
1381
1385 std::array<double, 16> CompositeProjectionTransformationMatrix;
1386
1390 double LastCompositeProjectionTransformationMatrixTiledAspectRatio;
1391
1395 vtkMTimeType LastCompositeProjectionTransformationMatrixCameraModified;
1396
1400 std::array<double, 16> ProjectionTransformationMatrix;
1401
1405 double LastProjectionTransformationMatrixTiledAspectRatio;
1406
1410 vtkMTimeType LastProjectionTransformationMatrixCameraModified;
1411
1415 std::array<double, 16> ViewTransformMatrix;
1416
1420 vtkMTimeType LastViewTransformCameraModified;
1421
1425 bool SafeGetZ = false;
1426
1430 vtkSmartPointer<vtkMatrix3x3> EnvironmentRotationMatrix;
1431
1433
1436 bool SkyboxBlurEnabled = false;
1437 float SkyboxBlurRadius = 20.0f;
1439
1444 double EnvironmentUp[3] = { 0.0, 1.0, 0.0 };
1445 double EnvironmentRight[3] = { 1.0, 0.0, 0.0 };
1446
1447 vtkRenderer(const vtkRenderer&) = delete;
1448 void operator=(const vtkRenderer&) = delete;
1449};
1450
1452{
1453 return this->Lights;
1454}
1455
1460{
1461 return this->Cullers;
1462}
1463
1464VTK_ABI_NAMESPACE_END
1465#endif
a actor that draws 2D data
Definition vtkActor2D.h:145
an ordered list of actors
represents an object (geometry & properties) in a rendered scene
Definition vtkActor.h:151
a list of nodes that form an assembly path
a virtual camera for 3D rendering
Definition vtkCamera.h:151
an ordered list of Cullers
a superclass for prop cullers
Definition vtkCuller.h:31
Configuration for FXAA implementations.
abstract interface to OpenGL FBOs
a simple class to control print indentation
Definition vtkIndent.h:108
Store vtkAlgorithm input/output information.
an ordered list of lights
a virtual light for 3D rendering
Definition vtkLight.h:159
represent and manipulate 3x3 transformation matrices
represent and manipulate 4x4 transformation matrices
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:69
Perform part of the rendering of a vtkRenderer.
create a window for renderers to draw into
Render the props of a vtkRenderer.
virtual void GetEnvironmentRight(double vectorRight[3])
Set/Get the environment right vector.
void RemoveVolume(vtkProp *p)
Add/Remove different types of props to the renderer.
virtual void SetLayer(int layer)
Set/Get the layer that this renderer belongs to.
vtkCamera * GetActiveCameraAndResetIfCreated()
Get the current camera and reset it only if it gets created automatically (see GetActiveCamera).
void ViewToWorld(double &wx, double &wy, double &wz) override
Convert view point coordinates to world coordinates.
virtual void SetFXAAOptions(vtkFXAAOptions *)
The configuration object for FXAA antialiasing.
virtual int UpdateCamera()
Ask the active camera to do whatever it needs to do prior to rendering.
void SetEnvironmentRotationMatrix(vtkMatrix3x3 *matrix)
Set/Get the environment rotation matrix.
virtual void GetEnvironmentUp(double &vectorUpX, double &vectorUpY, double &vectorUpZ)
Set/Get the environment up vector.
vtkAssemblyPath * PickProp(double selectionX, double selectionY, int fieldAssociation, vtkSmartPointer< vtkSelection > selection) override
Return the prop (via a vtkAssemblyPath) that has the highest z value at the given x,...
friend class vtkRendererDelegate
vtkCamera * GetActiveCamera()
Get the current camera.
virtual void SetEnvironmentUp(double vectorUpX, double vectorUpY, double vectorUpZ)
Set/Get the environment up vector.
void AddCuller(vtkCuller *)
Add an culler to the list of cullers.
virtual vtkTypeBool UpdateLightGeometry()
Update the geometry of the lights in the scene that are not in world space (for instance,...
void SetPass(vtkRenderPass *p)
virtual int UpdateLights()
Ask all lights to load themselves into rendering pipeline.
vtkTypeBool PreserveDepthBuffer
vtkLight * CreatedLight
vtkRenderPass * Pass
virtual void GetEnvironmentRight(double &vectorRightX, double &vectorRightY, double &vectorRightZ)
Set/Get the environment right vector.
vtkTypeBool UseShadows
If this flag is on and the rendering engine supports it render shadows Initial value is off.
double SSAOBias
vtkActorCollection * GetActors()
Return any actors in this renderer.
const std::array< double, 16 > & GetViewTransformMatrix()
Gets the ActiveCamera ViewTransformMatrix, only computing it if necessary.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
double LastRenderTimeInSeconds
double GetTiledAspectRatio()
Compute the aspect ratio of this renderer for the current tile.
void CreateLight()
Create and add a light to renderer.
vtkAssemblyPath * PickProp(double selectionX1, double selectionY1, double selectionX2, double selectionY2, int fieldAssociation, vtkSmartPointer< vtkSelection > selection) override
Return the prop (via a vtkAssemblyPath) that has the highest z value at the given x,...
void AddLight(vtkLight *)
Add a light to the list of lights.
vtkCullerCollection * GetCullers()
Return the collection of cullers.
virtual vtkCamera * MakeCamera()
Create a new Camera 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 *)
Set/Get the information object associated with this algorithm.
~vtkRenderer() override
virtual int UpdateGeometry(vtkFrameBufferObjectBase *fbo=nullptr)
Ask all props to update and draw any opaque and translucent geometry.
bool UseImageBasedLighting
int VisibleActorCount()
Returns the number of visible actors.
vtkVector3d DisplayToWorld(const vtkVector3d &display)
Convert a vtkVector3d from display space to world space.
virtual bool ResetCameraScreenSpace(double offsetRatio=0.9)
Automatically set up the camera based on the visible actors.
double ComputedVisiblePropBounds[6]
virtual void GetEnvironmentUp(double vectorUp[3])
Set/Get the environment up vector.
virtual void SetEnvironmentRight(double vectorRight[3])
Set/Get the environment right vector.
vtkTypeBool BackingStore
const std::array< double, 16 > & GetCompositeProjectionTransformationMatrix()
Gets the ActiveCamera CompositeProjectionTransformationMatrix, only computing it if necessary.
virtual vtkLight * MakeLight()
Create a new Light sutible for use with this type of Renderer.
vtkTexture * EnvironmentTexture
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.
void RemoveActor(vtkProp *p)
Add/Remove different types of props to the renderer.
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.
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.
vtkTypeBool LastRenderingUsedDepthPeeling
Tells if the last call to DeviceRenderTranslucentPolygonalGeometry() actually used depth peeling.
void AllocateTime()
vtkRenderWindow * RenderWindow
int VisibleVolumeCount()
Returns the number of visible volumes.
vtkTypeBool AutomaticLightCreation
int NumberOfPropsRendered
double Ambient[3]
virtual void StereoMidpoint()
Do anything necessary between rendering the left and right viewpoints in a stereo render.
virtual int UpdateOpaquePolygonalGeometry()
Ask all props to update and draw any opaque polygonal geometry.
void SetEnvironmentTextureProperty(vtkTexture *texture)
Set/Get the environment texture used for image based lighting.
double TimeFactor
bool TexturedBackground
vtkVolumeCollection * Volumes
bool UseOIT
If UseOIT is on and there are translucent props in the scene, the renderer will use the OrderIndepend...
vtkWindow * GetVTKWindow() override
Specify the rendering window in which to draw.
virtual void ExpandBounds(double bounds[6], vtkMatrix4x4 *matrix)
void RemoveCuller(vtkCuller *)
Remove an actor from the list of cullers.
virtual double * GetEnvironmentRight()
Set/Get the environment right vector.
virtual void ResetCameraClippingRange()
Reset the camera clipping range based on the bounds of the visible actors.
virtual double * GetEnvironmentUp()
Set/Get the environment up vector.
double OcclusionRatio
In case of use of depth peeling technique for rendering translucent material, define the threshold un...
const std::array< double, 16 > & GetProjectionTransformationMatrix()
Gets the ActiveCamera ProjectionTransformationMatrix, only computing it if necessary.
friend class vtkRenderPass
virtual bool ResetCamera()
Automatically set up the camera based on the visible actors.
void PoseToView(double &wx, double &wy, double &wz) override
Convert to from pose coordinates.
vtkTypeBool Erase
When this flag is off, the renderer will not erase the background or the Zbuffer.
vtkPropCollection * GL2PSSpecialPropCollection
Temporary collection used by vtkRenderWindow::CaptureGL2PSSpecialProps.
bool UseFXAA
If this flag is on and the rendering engine supports it, FXAA will be used to antialias the scene.
vtkVolumeCollection * GetVolumes()
Return the collection of volumes.
vtkTexture * GetLeftBackgroundTexture()
Set/Get the texture to be used for the monocular or stereo left eye background.
double ClippingRangeExpansion
Specify enlargement of bounds when resetting the camera clipping range.
vtkAssemblyPath * PickProp(double selectionX1, double selectionY1, double selectionX2, double selectionY2) override
Return the prop (via a vtkAssemblyPath) that has the highest z value at the given x,...
void ZoomToBoxUsingViewAngle(const vtkRecti &box, double offsetRatio=1.0)
Automatically set up the camera focal point and zoom factor to observe the box in display coordinates...
int CaptureGL2PSSpecialProp(vtkProp *)
This function is called to capture an instance of vtkProp that requires special handling during vtkRe...
vtkTypeBool Transparent()
Returns a boolean indicating if this renderer is transparent.
vtkTypeBool IsActiveCameraCreated()
This method returns 1 if the ActiveCamera has already been set or automatically created by the render...
int BackingStoreSize[2]
unsigned char * BackingImage
static vtkRenderer * New()
Create a vtkRenderer with a black background, a white ambient light, two-sided lighting turned on,...
vtkRendererDelegate * Delegate
void SetLightCollection(vtkLightCollection *lights)
Set the collection of lights.
virtual void ReleaseGraphicsResources(vtkWindow *)
virtual void SetEnvironmentRight(double vectorRightX, double vectorRightY, double vectorRightZ)
Set/Get the environment right vector.
void PoseToWorld(double &wx, double &wy, double &wz) override
Convert to from pose coordinates.
void RemoveAllLights()
Remove all lights from the list of lights.
vtkTexture * BackgroundTexture
double GetZ(int x, int y)
Given a pixel location in window-system coordinates, return the Z value.
friend class vtkHardwareSelector
double * ComputeVisiblePropBounds()
Wrapper-friendly version of ComputeVisiblePropBounds.
vtkCullerCollection * Cullers
virtual void SetEnvironmentUp(double vectorUp[3])
Set/Get the environment up vector.
void AddActor(vtkProp *p)
Add/Remove different types of props to the renderer.
virtual double GetTimeFactor()
Get the ratio between allocated time and actual render time.
double AllocatedRenderTime
vtkRenderWindow * GetRenderWindow()
Specify the rendering window in which to draw.
double NearClippingPlaneTolerance
Specifies the minimum distance of the near clipping plane as a percentage of the far clipping plane d...
vtkTypeBool Draw
When this flag is off, render commands are ignored.
vtkHardwareSelector * Selector
virtual void DeviceRender()
Create an image.
vtkTypeBool TwoSidedLighting
vtkTexture * RightBackgroundTexture
vtkProp * BackgroundProp
virtual vtkTypeBool UpdateLightsGeometryToFollowCamera()
Ask the lights in the scene that are not in world space (for instance, Headlights or CameraLights tha...
vtkTypeBool UseDepthPeeling
If this flag is on and the GPU supports it, depth peeling is used for rendering translucent materials...
vtkTypeBool UseHiddenLineRemoval
When this flag is on and the rendering engine supports it, wireframe polydata will be rendered using ...
void WorldToPose(double &wx, double &wy, double &wz) override
Convert to from pose coordinates.
vtkLightCollection * Lights
void ViewToWorld() override
Convert view point coordinates to world coordinates.
void SetActiveCamera(vtkCamera *)
Specify the camera to use for this renderer.
virtual void SetEnvironmentTexture(vtkTexture *texture, bool isSRGB=false)
Set/Get the environment texture used for image based lighting.
vtkTimeStamp RenderTime
virtual void Render()
CALLED BY vtkRenderWindow ONLY.
virtual int UpdateTranslucentPolygonalGeometry()
Ask all props to update and draw any translucent polygonal geometry.
virtual void ClearLights()
Internal method temporarily removes lights before reloading them into graphics pipeline.
vtkLightCollection * GetLights()
Return the collection of lights.
vtkTypeBool LightFollowCamera
vtkFXAAOptions * FXAAOptions
Holds the FXAA configuration.
std::vector< vtkProp * > PropArray
void SetRenderWindow(vtkRenderWindow *)
Specify the rendering window in which to draw.
void ViewToPose(double &wx, double &wy, double &wz) override
Convert to from pose coordinates.
void WorldToView() override
Convert world point coordinates to view coordinates.
virtual void DeviceRenderOpaqueGeometry(vtkFrameBufferObjectBase *fbo=nullptr)
Render opaque polygonal geometry.
virtual void SetBackgroundTexture(vtkTexture *)
Set/Get the texture to be used for the monocular or stereo left eye background.
void AddVolume(vtkProp *p)
Add/Remove different types of props to the renderer.
void WorldToView(double &wx, double &wy, double &wz) override
Convert world point coordinates to view coordinates.
virtual double GetAllocatedRenderTime()
Set/Get the amount of time this renderer is allowed to spend rendering its scene.
virtual void Clear()
Clear the image to the background color.
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
void SetGL2PSSpecialPropCollection(vtkPropCollection *)
Set the prop collection object used during vtkRenderWindow::CaptureGL2PSSpecialProps().
double SSAORadius
unsigned int SSAOKernelSize
vtkActorCollection * Actors
void SetDelegate(vtkRendererDelegate *d)
Set/Get a custom Render call.
vtkTypeBool Interactive
vtkInformation * Information
vtkAssemblyPath * PickProp(double selectionX, double selectionY) override
Return the prop (via a vtkAssemblyPath) that has the highest z value at the given x,...
vtkCamera * ActiveCamera
Hold a reference to a vtkObjectBase instance.
handles properties associated with a texture map
Definition vtkTexture.h:168
record modification and/or execution time
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:130
window superclass for vtkRenderWindow
Definition vtkWindow.h:61
int vtkTypeBool
Definition vtkABI.h:64
vtkTypeUInt32 vtkMTimeType
Definition vtkType.h:318
#define VTK_MARSHALSETTER(property)
#define VTK_SIZEHINT(...)
#define VTK_MARSHALGETTER(property)
#define VTK_MARSHAL_EXCLUDE_REASON_IS_INTERNAL
#define VTK_MARSHALAUTO
#define VTK_MARSHALEXCLUDE(reason)