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=========================================================================*/
141#ifndef vtkRenderer_h
142#define vtkRenderer_h
143
144#include "vtkRenderingCoreModule.h" // For export macro
145#include "vtkViewport.h"
146
147#include "vtkActorCollection.h" // Needed for access in inline members
148#include "vtkVolumeCollection.h" // Needed for access in inline members
149
150#include <array> // To store matrices
151
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 vtkRenderer : public vtkViewport
173{
174public:
175 vtkTypeMacro(vtkRenderer, vtkViewport);
176 void PrintSelf(ostream& os, vtkIndent indent) override;
177
183 static vtkRenderer* New();
184
186
196
201
206
211
215 vtkLightCollection* GetLights();
216
224
228 void CreateLight(void);
229
235 virtual vtkLight* MakeLight();
236
238
244 vtkGetMacro(TwoSidedLighting, vtkTypeBool);
245 vtkSetMacro(TwoSidedLighting, vtkTypeBool);
246 vtkBooleanMacro(TwoSidedLighting, vtkTypeBool);
248
250
263 vtkSetMacro(LightFollowCamera, vtkTypeBool);
264 vtkGetMacro(LightFollowCamera, vtkTypeBool);
265 vtkBooleanMacro(LightFollowCamera, vtkTypeBool);
267
269
277 vtkGetMacro(AutomaticLightCreation, vtkTypeBool);
278 vtkSetMacro(AutomaticLightCreation, vtkTypeBool);
279 vtkBooleanMacro(AutomaticLightCreation, vtkTypeBool);
281
288
293
298
303
310
317
319
325 vtkSetMacro(Erase, vtkTypeBool);
326 vtkGetMacro(Erase, vtkTypeBool);
327 vtkBooleanMacro(Erase, vtkTypeBool);
329
331
336 vtkSetMacro(Draw, vtkTypeBool);
337 vtkGetMacro(Draw, vtkTypeBool);
338 vtkBooleanMacro(Draw, vtkTypeBool);
340
346
353
358
363
367 vtkCullerCollection* GetCullers();
368
370
373 vtkSetVector3Macro(Ambient, double);
374 vtkGetVectorMacro(Ambient, double, 3);
376
378
382 vtkSetMacro(AllocatedRenderTime, double);
383 virtual double GetAllocatedRenderTime();
385
392 virtual double GetTimeFactor();
393
400 virtual void Render();
401
405 virtual void DeviceRender(){};
406
414
425
430 virtual void ClearLights(void) {}
431
435 virtual void Clear() {}
436
441
446
451 void ComputeVisiblePropBounds(double bounds[6]);
452
457
462 virtual void ResetCameraClippingRange();
463
465
468 virtual void ResetCameraClippingRange(const double bounds[6]);
469 virtual void ResetCameraClippingRange(
470 double xmin, double xmax, double ymin, double ymax, double zmin, double zmax);
472
474
479 vtkSetClampMacro(NearClippingPlaneTolerance, double, 0, 0.99);
480 vtkGetMacro(NearClippingPlaneTolerance, double);
482
484
489 vtkSetClampMacro(ClippingRangeExpansion, double, 0, 0.99);
490 vtkGetMacro(ClippingRangeExpansion, double);
492
499 virtual void ResetCamera();
500
510 virtual void ResetCamera(const double bounds[6]);
511
515 virtual void ResetCamera(
516 double xmin, double xmax, double ymin, double ymax, double zmin, double zmax);
517
522 virtual void ResetCameraScreenSpace();
523
529 virtual void ResetCameraScreenSpace(const double bounds[6]);
530
531 using vtkViewport::DisplayToWorld;
532
536 vtkVector3d DisplayToWorld(const vtkVector3d& display);
537
543 void ZoomToBoxUsingViewAngle(const vtkRecti& box, const double offsetRatio = 1.0);
544
548 virtual void ResetCameraScreenSpace(
549 double xmin, double xmax, double ymin, double ymax, double zmin, double zmax);
550
552
557 void SetRenderWindow(vtkRenderWindow*);
558 vtkRenderWindow* GetRenderWindow() { return this->RenderWindow; }
561
563
569 vtkSetMacro(BackingStore, vtkTypeBool);
570 vtkGetMacro(BackingStore, vtkTypeBool);
571 vtkBooleanMacro(BackingStore, vtkTypeBool);
573
575
580 vtkSetMacro(Interactive, vtkTypeBool);
581 vtkGetMacro(Interactive, vtkTypeBool);
582 vtkBooleanMacro(Interactive, vtkTypeBool);
584
586
597 virtual void SetLayer(int layer);
598 vtkGetMacro(Layer, int);
600
602
612 vtkGetMacro(PreserveColorBuffer, vtkTypeBool);
613 vtkSetMacro(PreserveColorBuffer, vtkTypeBool);
614 vtkBooleanMacro(PreserveColorBuffer, vtkTypeBool);
616
618
622 vtkSetMacro(PreserveDepthBuffer, vtkTypeBool);
623 vtkGetMacro(PreserveDepthBuffer, vtkTypeBool);
624 vtkBooleanMacro(PreserveDepthBuffer, vtkTypeBool);
626
632
636 void WorldToView() override;
637
639
642 void ViewToWorld() override;
643 void ViewToWorld(double& wx, double& wy, double& wz) override;
645
649 void WorldToView(double& wx, double& wy, double& wz) override;
650
652
655 void WorldToPose(double& wx, double& wy, double& wz) override;
656 void PoseToWorld(double& wx, double& wy, double& wz) override;
657 void ViewToPose(double& wx, double& wy, double& wz) override;
658 void PoseToView(double& wx, double& wy, double& wz) override;
660
665 double GetZ(int x, int y);
666
671
673
676 vtkGetMacro(LastRenderTimeInSeconds, double);
678
680
686 vtkGetMacro(NumberOfPropsRendered, int);
688
690
697 vtkAssemblyPath* PickProp(double selectionX, double selectionY) override
698 {
699 return this->PickProp(selectionX, selectionY, selectionX, selectionY);
700 }
702 double selectionX1, double selectionY1, double selectionX2, double selectionY2) override;
704
710 virtual void StereoMidpoint() { return; }
711
719
725 vtkTypeBool IsActiveCameraCreated() { return (this->ActiveCamera != nullptr); }
726
728
738 vtkSetMacro(UseDepthPeeling, vtkTypeBool);
739 vtkGetMacro(UseDepthPeeling, vtkTypeBool);
740 vtkBooleanMacro(UseDepthPeeling, vtkTypeBool);
742
748 vtkSetMacro(UseDepthPeelingForVolumes, bool);
749 vtkGetMacro(UseDepthPeelingForVolumes, bool);
750 vtkBooleanMacro(UseDepthPeelingForVolumes, bool);
751
753
762 vtkSetClampMacro(OcclusionRatio, double, 0.0, 0.5);
763 vtkGetMacro(OcclusionRatio, double);
765
767
772 vtkSetMacro(MaximumNumberOfPeels, int);
773 vtkGetMacro(MaximumNumberOfPeels, int);
775
777
782 vtkGetMacro(LastRenderingUsedDepthPeeling, vtkTypeBool);
784
786
790 vtkSetMacro(UseSSAO, bool);
791 vtkGetMacro(UseSSAO, bool);
792 vtkBooleanMacro(UseSSAO, bool);
794
796
800 vtkSetMacro(SSAORadius, double);
801 vtkGetMacro(SSAORadius, double);
803
805
809 vtkSetMacro(SSAOBias, double);
810 vtkGetMacro(SSAOBias, double);
812
814
818 vtkSetMacro(SSAOKernelSize, unsigned int);
819 vtkGetMacro(SSAOKernelSize, unsigned int);
821
823
828 vtkSetMacro(SSAOBlur, bool);
829 vtkGetMacro(SSAOBlur, bool);
830 vtkBooleanMacro(SSAOBlur, bool);
832
834
841 vtkGetObjectMacro(Delegate, vtkRendererDelegate);
843
845
850 vtkGetObjectMacro(Selector, vtkHardwareSelector);
852
854
862 vtkGetObjectMacro(BackgroundTexture, vtkTexture);
864
866
871 vtkGetObjectMacro(RightBackgroundTexture, vtkTexture);
873
875
879 vtkSetMacro(TexturedBackground, bool);
880 vtkGetMacro(TexturedBackground, bool);
881 vtkBooleanMacro(TexturedBackground, bool);
883
884 // method to release graphics resources in any derived renderers.
886
888
891 vtkSetMacro(UseFXAA, bool);
892 vtkGetMacro(UseFXAA, bool);
893 vtkBooleanMacro(UseFXAA, bool);
895
897
900 vtkGetObjectMacro(FXAAOptions, vtkFXAAOptions);
903
905
909 vtkSetMacro(UseShadows, vtkTypeBool);
910 vtkGetMacro(UseShadows, vtkTypeBool);
911 vtkBooleanMacro(UseShadows, vtkTypeBool);
913
915
919 vtkSetMacro(UseHiddenLineRemoval, vtkTypeBool);
920 vtkGetMacro(UseHiddenLineRemoval, vtkTypeBool);
921 vtkBooleanMacro(UseHiddenLineRemoval, vtkTypeBool);
923
924 // Set/Get a custom render pass.
925 // Initial value is NULL.
927 vtkGetObjectMacro(Pass, vtkRenderPass);
928
930
933 vtkGetObjectMacro(Information, vtkInformation);
936
938
944 vtkSetMacro(UseImageBasedLighting, bool);
945 vtkGetMacro(UseImageBasedLighting, bool);
946 vtkBooleanMacro(UseImageBasedLighting, bool);
948
950
961 vtkGetObjectMacro(EnvironmentTexture, vtkTexture);
962 virtual void SetEnvironmentTexture(vtkTexture* texture, bool isSRGB = false);
964
966
969 vtkGetVector3Macro(EnvironmentUp, double);
970 vtkSetVector3Macro(EnvironmentUp, double);
972
974
977 vtkGetVector3Macro(EnvironmentRight, double);
978 vtkSetVector3Macro(EnvironmentRight, double);
980
981protected:
983 ~vtkRenderer() override;
984
985 // internal method to expand bounding box to consider model transform
986 // matrix or model view transform matrix based on whether or not deering
987 // frustum is used. 'bounds' buffer is mutated to the expanded box.
988 virtual void ExpandBounds(double bounds[6], vtkMatrix4x4* matrix);
989
992
995
998
999 double Ambient[3];
1006 unsigned char* BackingImage;
1007 int BackingStoreSize[2];
1009
1011
1013
1014 // Allocate the time for each prop
1016
1017 // Internal variables indicating the number of props
1018 // that have been or will be rendered in each category.
1020
1021 // A temporary list of props used for culling, and traversal
1022 // of all props when rendering
1025
1026 // Indicates if the renderer should receive events from an interactor.
1027 // Typically only used in conjunction with transparent renderers.
1029
1030 // Shows what layer this renderer belongs to. Only of interested when
1031 // there are layered renderers.
1035
1036 // Holds the result of ComputeVisiblePropBounds so that it is visible from
1037 // wrapped languages
1038 double ComputedVisiblePropBounds[6];
1039
1048
1054
1062
1069
1074
1079 const std::array<double, 16>& GetCompositeProjectionTransformationMatrix();
1080
1085 const std::array<double, 16>& GetProjectionTransformationMatrix();
1086
1091 const std::array<double, 16>& GetViewTransformMatrix();
1092
1098 virtual int UpdateGeometry(vtkFrameBufferObjectBase* fbo = nullptr);
1099
1108
1115
1120 virtual int UpdateCamera(void);
1121
1128
1133 virtual int UpdateLights(void) { return 0; }
1134
1141
1147
1152
1158
1164
1172
1178
1189
1196
1197 bool UseSSAO = false;
1198 double SSAORadius = 0.5;
1199 double SSAOBias = 0.01;
1200 unsigned int SSAOKernelSize = 32;
1201 bool SSAOBlur = false;
1202
1209
1210 // HARDWARE SELECTION ----------------------------------------
1212
1217 {
1218 this->Selector = selector;
1219 this->Modified();
1220 }
1221
1222 // End Ivars for visible cell selecting.
1224
1225 //---------------------------------------------------------------
1228
1232
1233 friend class vtkRenderPass;
1235
1236 // Arbitrary extra information associated with this renderer
1238
1241
1242 double EnvironmentUp[3];
1243 double EnvironmentRight[3];
1244
1245private:
1249 std::array<double, 16> CompositeProjectionTransformationMatrix;
1250
1254 double LastCompositeProjectionTransformationMatrixTiledAspectRatio;
1255
1259 vtkMTimeType LastCompositeProjectionTransformationMatrixCameraModified;
1260
1264 std::array<double, 16> ProjectionTransformationMatrix;
1265
1269 double LastProjectionTransformationMatrixTiledAspectRatio;
1270
1274 vtkMTimeType LastProjectionTransformationMatrixCameraModified;
1275
1279 std::array<double, 16> ViewTransformMatrix;
1280
1284 vtkMTimeType LastViewTransformCameraModified;
1285
1286 vtkRenderer(const vtkRenderer&) = delete;
1287 void operator=(const vtkRenderer&) = delete;
1288};
1289
1291{
1292 return this->Lights;
1293}
1294
1299{
1300 return this->Cullers;
1301}
1302
1303#endif
a actor that draws 2D data
Definition: vtkActor2D.h:149
an ordered list of actors
represents an object (geometry & properties) in a rendered scene
Definition: vtkActor.h:155
a list of nodes that form an assembly path
a virtual camera for 3D rendering
Definition: vtkCamera.h:155
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:113
Store vtkAlgorithm input/output information.
an ordered list of lights
a virtual light for 3D rendering
Definition: vtkLight.h:166
represent and manipulate 4x4 transformation matrices
Definition: vtkMatrix4x4.h:145
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:67
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:173
void RemoveVolume(vtkProp *p)
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
These methods map from one coordinate system to another.
virtual void SetFXAAOptions(vtkFXAAOptions *)
virtual void ClearLights(void)
Internal method temporarily removes lights before reloading them into graphics pipeline.
Definition: vtkRenderer.h:430
vtkCamera * GetActiveCamera()
Get the current camera.
void AddCuller(vtkCuller *)
Add an culler to the list of cullers.
void SetPass(vtkRenderPass *p)
vtkTypeBool PreserveDepthBuffer
Definition: vtkRenderer.h:1034
vtkLight * CreatedLight
Definition: vtkRenderer.h:991
vtkRenderPass * Pass
Definition: vtkRenderer.h:1234
vtkTypeBool UseShadows
If this flag is on and the rendering engine supports it render shadows Initial value is off.
Definition: vtkRenderer.h:1157
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
Definition: vtkRenderer.h:1010
double GetTiledAspectRatio()
Compute the aspect ratio of this renderer for the current tile.
void AddLight(vtkLight *)
Add a light to the list of lights.
vtkCullerCollection * GetCullers()
Return the collection of cullers.
Definition: vtkRenderer.h:1298
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 *)
virtual int UpdateLights(void)
Ask all lights to load themselves into rendering pipeline.
Definition: vtkRenderer.h:1133
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.
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:1239
int VisibleActorCount()
Returns the number of visible actors.
vtkTypeBool BackingStore
Definition: vtkRenderer.h:1005
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
Definition: vtkRenderer.h:1240
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:1177
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:1216
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:1195
vtkTypeBool LastRenderingUsedDepthPeeling
Tells if the last call to DeviceRenderTranslucentPolygonalGeometry() actually used depth peeling.
Definition: vtkRenderer.h:1208
void AllocateTime()
vtkRenderWindow * RenderWindow
Definition: vtkRenderer.h:1000
int VisibleVolumeCount()
Returns the number of visible volumes.
vtkTypeBool AutomaticLightCreation
Definition: vtkRenderer.h:1004
int NumberOfPropsRendered
Definition: vtkRenderer.h:1019
virtual void StereoMidpoint()
Do anything necessary between rendering the left and right viewpoints in a stereo render.
Definition: vtkRenderer.h:710
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:1002
bool TexturedBackground
Definition: vtkRenderer.h:1229
vtkVolumeCollection * Volumes
Definition: vtkRenderer.h:997
vtkWindow * GetVTKWindow() override
Return the vtkWindow that owns this vtkViewport.
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:1188
const std::array< double, 16 > & GetProjectionTransformationMatrix()
Gets the ActiveCamera ProjectionTransformationMatrix, only computing it if necessary.
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:1061
vtkPropCollection * GL2PSSpecialPropCollection
Temporary collection used by vtkRenderWindow::CaptureGL2PSSpecialProps.
Definition: vtkRenderer.h:1073
bool UseFXAA
If this flag is on and the rendering engine supports it, FXAA will be used to antialias the scene.
Definition: vtkRenderer.h:1146
vtkVolumeCollection * GetVolumes()
Return the collection of volumes.
vtkTexture * GetLeftBackgroundTexture()
double ClippingRangeExpansion
Specify enlargement of bounds when resetting the camera clipping range.
Definition: vtkRenderer.h:1053
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.
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:725
unsigned char * BackingImage
Definition: vtkRenderer.h:1006
static vtkRenderer * New()
Create a vtkRenderer with a black background, a white ambient light, two-sided lighting turned on,...
vtkRendererDelegate * Delegate
Definition: vtkRenderer.h:1227
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:1230
double GetZ(int x, int y)
Given a pixel location, return the Z value.
vtkProp ** PropArray
Definition: vtkRenderer.h:1023
double * ComputeVisiblePropBounds()
Wrapper-friendly version of ComputeVisiblePropBounds.
vtkCullerCollection * Cullers
Definition: vtkRenderer.h:994
void AddActor(vtkProp *p)
Add/Remove different types of props to the renderer.
int PropArrayCount
Definition: vtkRenderer.h:1024
virtual double GetTimeFactor()
Get the ratio between allocated time and actual render time.
double AllocatedRenderTime
Definition: vtkRenderer.h:1001
double NearClippingPlaneTolerance
Specifies the minimum distance of the near clipping plane as a percentage of the far clipping plane d...
Definition: vtkRenderer.h:1047
vtkTypeBool Draw
When this flag is off, render commands are ignored.
Definition: vtkRenderer.h:1068
vtkHardwareSelector * Selector
Definition: vtkRenderer.h:1223
virtual void DeviceRender()
Create an image.
Definition: vtkRenderer.h:405
vtkTypeBool TwoSidedLighting
Definition: vtkRenderer.h:1003
vtkTexture * RightBackgroundTexture
Definition: vtkRenderer.h:1231
vtkTypeBool UseDepthPeeling
If this flag is on and the GPU supports it, depth peeling is used for rendering translucent materials...
Definition: vtkRenderer.h:1171
vtkTypeBool UseHiddenLineRemoval
When this flag is on and the rendering engine supports it, wireframe polydata will be rendered using ...
Definition: vtkRenderer.h:1163
void WorldToPose(double &wx, double &wy, double &wz) override
Convert to from pose coordinates.
vtkLightCollection * Lights
Definition: vtkRenderer.h:993
void CreateLight(void)
Create and add a light to renderer.
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)
vtkTimeStamp RenderTime
Definition: vtkRenderer.h:1008
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:1290
vtkTypeBool LightFollowCamera
Definition: vtkRenderer.h:1012
vtkFXAAOptions * FXAAOptions
Holds the FXAA configuration.
Definition: vtkRenderer.h:1151
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.
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:435
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:1033
void SetGL2PSSpecialPropCollection(vtkPropCollection *)
Set the prop collection object used during vtkRenderWindow::CaptureGL2PSSpecialProps().
vtkActorCollection * Actors
Definition: vtkRenderer.h:996
void SetDelegate(vtkRendererDelegate *d)
Set/Get a custom Render call.
vtkTypeBool Interactive
Definition: vtkRenderer.h:1028
vtkInformation * Information
Definition: vtkRenderer.h:1237
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:697
vtkCamera * ActiveCamera
Definition: vtkRenderer.h:990
handles properties associated with a texture map
Definition: vtkTexture.h:175
record modification and/or execution time
Definition: vtkTimeStamp.h:52
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:134
window superclass for vtkRenderWindow
Definition: vtkWindow.h:36
int vtkTypeBool
Definition: vtkABI.h:69
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:287
#define VTK_SIZEHINT(...)