VTK  9.6.2
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
134
135#ifndef vtkRenderer_h
136#define vtkRenderer_h
137
138#include "vtkRenderingCoreModule.h" // For export macro
139#include "vtkViewport.h"
140#include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
141
142#include "vtkActorCollection.h" // Needed for access in inline members
143#include "vtkMatrix3x3.h"
144#include "vtkVolumeCollection.h" // Needed for access in inline members
145
146#include <array> // To store matrices
147
148VTK_ABI_NAMESPACE_BEGIN
149class vtkFXAAOptions;
150class vtkRenderWindow;
151class vtkVolume;
152class vtkCuller;
153class vtkActor;
154class vtkActor2D;
155class vtkCamera;
157class vtkInformation;
160class vtkLight;
163class vtkRenderPass;
164class vtkTexture;
165
166class vtkRecti;
167class vtkVector3d;
168
169class VTKRENDERINGCORE_EXPORT VTK_MARSHALAUTO vtkRenderer : public vtkViewport
170{
171public:
172 vtkTypeMacro(vtkRenderer, vtkViewport);
173 void PrintSelf(ostream& os, vtkIndent indent) override;
174
180 static vtkRenderer* New();
181
183
197
203
209
215
220
228
233
239 virtual vtkLight* MakeLight();
240
242
250 vtkBooleanMacro(TwoSidedLighting, vtkTypeBool);
252
254
271
273
285
292
298
304
309
316
323
325
331 vtkSetMacro(Erase, vtkTypeBool);
332 vtkGetMacro(Erase, vtkTypeBool);
333 vtkBooleanMacro(Erase, vtkTypeBool);
335
337
342 vtkSetMacro(Draw, vtkTypeBool);
343 vtkGetMacro(Draw, vtkTypeBool);
344 vtkBooleanMacro(Draw, vtkTypeBool);
346
352
359
365
371
376
378
381 vtkSetVector3Macro(Ambient, double);
382 vtkGetVectorMacro(Ambient, double, 3);
384
386
390 vtkSetMacro(AllocatedRenderTime, double);
391 virtual double GetAllocatedRenderTime();
393
400 virtual double GetTimeFactor();
401
408 virtual void Render();
409
413 virtual void DeviceRender() {}
414
422
433
438 virtual void ClearLights() {}
439
443 virtual void Clear() {}
444
449
454
459 void ComputeVisiblePropBounds(double bounds[6]);
460
465
471
473
476 virtual void ResetCameraClippingRange(const double bounds[6]);
478 double xmin, double xmax, double ymin, double ymax, double zmin, double zmax);
480
482
487 vtkSetClampMacro(NearClippingPlaneTolerance, double, 0, 0.99);
488 vtkGetMacro(NearClippingPlaneTolerance, double);
490
492
497 vtkSetClampMacro(ClippingRangeExpansion, double, 0, 0.99);
498 vtkGetMacro(ClippingRangeExpansion, double);
500
508 virtual bool ResetCamera();
509
519 virtual void ResetCamera(const double bounds[6]);
520
524 virtual void ResetCamera(
525 double xmin, double xmax, double ymin, double ymax, double zmin, double zmax);
526
535 virtual bool ResetCameraScreenSpace(double offsetRatio = 0.9);
536
545 virtual void ResetCameraScreenSpace(const double bounds[6], double offsetRatio = 0.9);
546
548
553
559 void ZoomToBoxUsingViewAngle(const vtkRecti& box, double offsetRatio = 1.0);
560
567 virtual void ResetCameraScreenSpace(double xmin, double xmax, double ymin, double ymax,
568 double zmin, double zmax, double offsetRatio = 0.9);
569
571
580
582
590 vtkBooleanMacro(BackingStore, vtkTypeBool);
592
594
601 vtkBooleanMacro(Interactive, vtkTypeBool);
603
605
616 virtual void SetLayer(int layer);
617 vtkGetMacro(Layer, int);
619
621
635
637
645
651
655 void WorldToView() override;
656
658
661 void ViewToWorld() override;
662 void ViewToWorld(double& wx, double& wy, double& wz) override;
664
668 void WorldToView(double& wx, double& wy, double& wz) override;
669
671
674 void WorldToPose(double& wx, double& wy, double& wz) override;
675 void PoseToWorld(double& wx, double& wy, double& wz) override;
676 void ViewToPose(double& wx, double& wy, double& wz) override;
677 void PoseToView(double& wx, double& wy, double& wz) override;
679
689 double GetZ(int x, int y);
690
692
699 vtkSetMacro(SafeGetZ, bool);
700 vtkGetMacro(SafeGetZ, bool);
701 vtkBooleanMacro(SafeGetZ, bool);
703
708
710
713 vtkGetMacro(LastRenderTimeInSeconds, double);
715
717
723 vtkGetMacro(NumberOfPropsRendered, int);
725
727
734 vtkAssemblyPath* PickProp(double selectionX, double selectionY) override
735 {
736 return this->PickProp(selectionX, selectionY, selectionX, selectionY);
737 }
739 double selectionX1, double selectionY1, double selectionX2, double selectionY2) override;
741
743
753 vtkAssemblyPath* PickProp(double selectionX, double selectionY, int fieldAssociation,
754 vtkSmartPointer<vtkSelection> selection) override
755 {
756 return this->PickProp(
757 selectionX, selectionY, selectionX, selectionY, fieldAssociation, selection);
758 }
759 vtkAssemblyPath* PickProp(double selectionX1, double selectionY1, double selectionX2,
760 double selectionY2, int fieldAssociation, vtkSmartPointer<vtkSelection> selection) override;
762
768 virtual void StereoMidpoint() {}
769
777
783 vtkTypeBool IsActiveCameraCreated() { return (this->ActiveCamera != nullptr); }
784
786
798 vtkBooleanMacro(UseDepthPeeling, vtkTypeBool);
800
806 vtkSetMacro(UseDepthPeelingForVolumes, bool);
807 vtkGetMacro(UseDepthPeelingForVolumes, bool);
808 vtkBooleanMacro(UseDepthPeelingForVolumes, bool);
809
811
820 vtkSetClampMacro(OcclusionRatio, double, 0.0, 0.5);
821 vtkGetMacro(OcclusionRatio, double);
823
825
830 vtkSetMacro(MaximumNumberOfPeels, int);
831 vtkGetMacro(MaximumNumberOfPeels, int);
833
835
842
844
848 vtkSetMacro(UseSSAO, bool);
849 vtkGetMacro(UseSSAO, bool);
850 vtkBooleanMacro(UseSSAO, bool);
852
854
858 vtkSetMacro(SSAORadius, double);
859 vtkGetMacro(SSAORadius, double);
861
863
867 vtkSetMacro(SSAOBias, double);
868 vtkGetMacro(SSAOBias, double);
870
872
876 vtkSetMacro(SSAOKernelSize, unsigned int);
877 vtkGetMacro(SSAOKernelSize, unsigned int);
879
881
886 vtkSetMacro(SSAOBlur, bool);
887 vtkGetMacro(SSAOBlur, bool);
888 vtkBooleanMacro(SSAOBlur, bool);
890
892
899 vtkGetObjectMacro(Delegate, vtkRendererDelegate);
901
903
908 vtkGetObjectMacro(Selector, vtkHardwareSelector);
910
912
920 vtkGetObjectMacro(BackgroundTexture, vtkTexture);
922
924
931
933
937 vtkSetMacro(TexturedBackground, bool);
938 vtkGetMacro(TexturedBackground, bool);
939 vtkBooleanMacro(TexturedBackground, bool);
941
942 // method to release graphics resources in any derived renderers.
944
946
949 vtkSetMacro(UseFXAA, bool);
950 vtkGetMacro(UseFXAA, bool);
951 vtkBooleanMacro(UseFXAA, bool);
953
955
958 vtkGetObjectMacro(FXAAOptions, vtkFXAAOptions);
961
963
967 vtkSetMacro(UseShadows, vtkTypeBool);
968 vtkGetMacro(UseShadows, vtkTypeBool);
969 vtkBooleanMacro(UseShadows, vtkTypeBool);
971
973
981
982 // Set/Get a custom render pass.
983 // Initial value is NULL.
985 vtkGetObjectMacro(Pass, vtkRenderPass);
986
988
991 vtkGetObjectMacro(Information, vtkInformation);
994
996
1002 vtkSetMacro(UseImageBasedLighting, bool);
1003 vtkGetMacro(UseImageBasedLighting, bool);
1004 vtkBooleanMacro(UseImageBasedLighting, bool);
1006
1008
1013 VTK_MARSHALGETTER(EnvironmentTextureProperty)
1014 vtkGetObjectMacro(EnvironmentTexture, vtkTexture);
1015 VTK_MARSHALSETTER(EnvironmentTextureProperty)
1017 virtual void SetEnvironmentTexture(vtkTexture* texture, bool isSRGB = false);
1019
1021
1028 virtual double* GetEnvironmentUp();
1029 virtual void GetEnvironmentUp(double& vectorUpX, double& vectorUpY, double& vectorUpZ);
1030 virtual void GetEnvironmentUp(double vectorUp[3]);
1031 virtual void SetEnvironmentUp(double vectorUpX, double vectorUpY, double vectorUpZ);
1032 virtual void SetEnvironmentUp(double vectorUp[3]);
1034
1036
1043 virtual double* GetEnvironmentRight();
1045 double& vectorRightX, double& vectorRightY, double& vectorRightZ);
1046 virtual void GetEnvironmentRight(double vectorRight[3]);
1047 virtual void SetEnvironmentRight(double vectorRightX, double vectorRightY, double vectorRightZ);
1048 virtual void SetEnvironmentRight(double vectorRight[3]);
1050
1052
1057 vtkGetSmartPointerMacro(EnvironmentRotationMatrix, vtkMatrix3x3);
1060
1062
1073 vtkSetMacro(UseOIT, bool);
1074 vtkGetMacro(UseOIT, bool);
1075 vtkBooleanMacro(UseOIT, bool);
1077
1078protected:
1080 ~vtkRenderer() override;
1081
1082 // internal method to expand bounding box to consider model transform
1083 // matrix or model view transform matrix based on whether or not deering
1084 // frustum is used. 'bounds' buffer is mutated to the expanded box.
1085 virtual void ExpandBounds(double bounds[6], vtkMatrix4x4* matrix);
1086
1089
1092
1095
1096 double Ambient[3];
1103 unsigned char* BackingImage;
1106
1108
1110
1111 // Allocate the time for each prop
1113
1114 // Internal variables indicating the number of props
1115 // that have been or will be rendered in each category.
1117
1118 // A temporary list of props used for culling, and traversal
1119 // of all props when rendering
1122
1123 // Indicates if the renderer should receive events from an interactor.
1124 // Typically only used in conjunction with transparent renderers.
1126
1127 // Shows what layer this renderer belongs to. Only of interested when
1128 // there are layered renderers.
1132
1133 // Holds the result of ComputeVisiblePropBounds so that it is visible from
1134 // wrapped languages
1136
1145
1151
1159
1166
1171
1176 const std::array<double, 16>& GetCompositeProjectionTransformationMatrix();
1177
1182 const std::array<double, 16>& GetProjectionTransformationMatrix();
1183
1188 const std::array<double, 16>& GetViewTransformMatrix();
1189
1195 virtual int UpdateGeometry(vtkFrameBufferObjectBase* fbo = nullptr);
1196
1205
1212
1217 virtual int UpdateCamera();
1218
1225
1230 virtual int UpdateLights() { return 0; }
1231
1238
1244
1249
1255
1261
1269
1275
1286
1293
1294 bool UseSSAO = false;
1295 double SSAORadius = 0.5;
1296 double SSAOBias = 0.01;
1297 unsigned int SSAOKernelSize = 32;
1298 bool SSAOBlur = false;
1299
1311 bool UseOIT = true;
1312
1319
1320 // HARDWARE SELECTION ----------------------------------------
1322
1327 {
1328 this->Selector = selector;
1329 this->Modified();
1330 }
1331
1332 // End Ivars for visible cell selecting.
1334
1335 //---------------------------------------------------------------
1338
1342
1343 friend class vtkRenderPass;
1345
1346 // Arbitrary extra information associated with this renderer
1348
1351
1352private:
1356 void ComputeRotationMatrixForwardVector();
1357
1361 std::array<double, 16> CompositeProjectionTransformationMatrix;
1362
1366 double LastCompositeProjectionTransformationMatrixTiledAspectRatio;
1367
1371 vtkMTimeType LastCompositeProjectionTransformationMatrixCameraModified;
1372
1376 std::array<double, 16> ProjectionTransformationMatrix;
1377
1381 double LastProjectionTransformationMatrixTiledAspectRatio;
1382
1386 vtkMTimeType LastProjectionTransformationMatrixCameraModified;
1387
1391 std::array<double, 16> ViewTransformMatrix;
1392
1396 vtkMTimeType LastViewTransformCameraModified;
1397
1401 bool SafeGetZ = false;
1402
1406 vtkSmartPointer<vtkMatrix3x3> EnvironmentRotationMatrix;
1407
1412 double EnvironmentUp[3] = { 0.0, 1.0, 0.0 };
1413 double EnvironmentRight[3] = { 1.0, 0.0, 0.0 };
1414
1415 vtkRenderer(const vtkRenderer&) = delete;
1416 void operator=(const vtkRenderer&) = delete;
1417};
1418
1420{
1421 return this->Lights;
1422}
1423
1428{
1429 return this->Cullers;
1430}
1431
1432VTK_ABI_NAMESPACE_END
1433#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:66
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, return the Z value.
friend class vtkHardwareSelector
vtkProp ** PropArray
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
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.
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:45
int vtkTypeBool
Definition vtkABI.h:64
vtkTypeUInt32 vtkMTimeType
Definition vtkType.h:323
#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)