29#include "vtkRenderingCoreModule.h"  
   37VTK_ABI_NAMESPACE_BEGIN
 
  259  vtkSetVector3Macro(Ambient, 
double);
 
  260  vtkGetVectorMacro(Ambient, 
double, 3);
 
  268  vtkSetMacro(AllocatedRenderTime, 
double);
 
  348  virtual 
void ResetCameraClippingRange();
 
  354  virtual 
void ResetCameraClippingRange(const 
double bounds[6]);
 
  355  virtual 
void ResetCameraClippingRange(
 
  356    double xmin, 
double xmax, 
double ymin, 
double ymax, 
double zmin, 
double zmax);
 
  365  vtkSetClampMacro(NearClippingPlaneTolerance, 
double, 0, 0.99);
 
  366  vtkGetMacro(NearClippingPlaneTolerance, 
double);
 
  375  vtkSetClampMacro(ClippingRangeExpansion, 
double, 0, 0.99);
 
  376  vtkGetMacro(ClippingRangeExpansion, 
double);
 
  385  virtual 
void ResetCamera();
 
  396  virtual 
void ResetCamera(const 
double bounds[6]);
 
  401  virtual 
void ResetCamera(
 
  402    double xmin, 
double xmax, 
double ymin, 
double ymax, 
double zmin, 
double zmax);
 
  411  virtual 
void ResetCameraScreenSpace(
double offsetRatio = 0.9);
 
  421  virtual 
void ResetCameraScreenSpace(const 
double bounds[6], 
double offsetRatio = 0.9);
 
  435  void ZoomToBoxUsingViewAngle(const 
vtkRecti& box, 
double offsetRatio = 1.0);
 
  443  virtual 
void ResetCameraScreenSpace(
double xmin, 
double xmax, 
double ymin, 
double ymax,
 
  444    double zmin, 
double zmax, 
double offsetRatio = 0.9);
 
  493  vtkGetMacro(Layer, 
int);
 
  552  void ViewToPose(
double& wx, 
double& wy, 
double& wz) 
override;
 
  553  void PoseToView(
double& wx, 
double& wy, 
double& wz) 
override;
 
  571  vtkGetMacro(LastRenderTimeInSeconds, 
double);
 
  581  vtkGetMacro(NumberOfPropsRendered, 
int);
 
  594    return this->
PickProp(selectionX, selectionY, selectionX, selectionY);
 
  597    double selectionX1, 
double selectionY1, 
double selectionX2, 
double selectionY2) 
override;
 
  614      selectionX, selectionY, selectionX, selectionY, fieldAssociation, selection);
 
  663  vtkSetMacro(UseDepthPeelingForVolumes, 
bool);
 
  664  vtkGetMacro(UseDepthPeelingForVolumes, 
bool);
 
  665  vtkBooleanMacro(UseDepthPeelingForVolumes, 
bool);
 
  677  vtkSetClampMacro(OcclusionRatio, 
double, 0.0, 0.5);
 
  678  vtkGetMacro(OcclusionRatio, 
double);
 
  687  vtkSetMacro(MaximumNumberOfPeels, 
int);
 
  688  vtkGetMacro(MaximumNumberOfPeels, 
int);
 
  705  vtkSetMacro(UseSSAO, 
bool);
 
  706  vtkGetMacro(UseSSAO, 
bool);
 
  707  vtkBooleanMacro(UseSSAO, 
bool);
 
  715  vtkSetMacro(SSAORadius, 
double);
 
  716  vtkGetMacro(SSAORadius, 
double);
 
  724  vtkSetMacro(SSAOBias, 
double);
 
  725  vtkGetMacro(SSAOBias, 
double);
 
  733  vtkSetMacro(SSAOKernelSize, 
unsigned int);
 
  734  vtkGetMacro(SSAOKernelSize, 
unsigned int);
 
  743  vtkSetMacro(SSAOBlur, 
bool);
 
  744  vtkGetMacro(SSAOBlur, 
bool);
 
  745  vtkBooleanMacro(SSAOBlur, 
bool);
 
  794  vtkSetMacro(TexturedBackground, 
bool);
 
  795  vtkGetMacro(TexturedBackground, 
bool);
 
  796  vtkBooleanMacro(TexturedBackground, 
bool);
 
  806  vtkSetMacro(UseFXAA, 
bool);
 
  807  vtkGetMacro(UseFXAA, 
bool);
 
  808  vtkBooleanMacro(UseFXAA, 
bool);
 
  859  vtkSetMacro(UseImageBasedLighting, 
bool);
 
  860  vtkGetMacro(UseImageBasedLighting, 
bool);
 
  861  vtkBooleanMacro(UseImageBasedLighting, 
bool);
 
  884  vtkGetVector3Macro(EnvironmentUp, 
double);
 
  885  vtkSetVector3Macro(EnvironmentUp, 
double);
 
  892  vtkGetVector3Macro(EnvironmentRight, 
double);
 
  893  vtkSetVector3Macro(EnvironmentRight, 
double);
 
  922  int BackingStoreSize[2];
 
  953  double ComputedVisiblePropBounds[6];
 
 1112  bool UseSSAO = 
false;
 
 1113  double SSAORadius = 0.5;
 
 1114  double SSAOBias = 0.01;
 
 1115  unsigned int SSAOKernelSize = 32;
 
 1116  bool SSAOBlur = 
false;
 
 1133    this->Selector = selector;
 
 1157  double EnvironmentUp[3];
 
 1158  double EnvironmentRight[3];
 
 1164  std::array<double, 16> CompositeProjectionTransformationMatrix;
 
 1169  double LastCompositeProjectionTransformationMatrixTiledAspectRatio;
 
 1174  vtkMTimeType LastCompositeProjectionTransformationMatrixCameraModified;
 
 1179  std::array<double, 16> ProjectionTransformationMatrix;
 
 1184  double LastProjectionTransformationMatrixTiledAspectRatio;
 
 1189  vtkMTimeType LastProjectionTransformationMatrixCameraModified;
 
 1194  std::array<double, 16> ViewTransformMatrix;
 
 1218VTK_ABI_NAMESPACE_END
 
a actor that draws 2D data
 
an ordered list of actors
 
represents an object (geometry & properties) in a rendered scene
 
a list of nodes that form an assembly path
 
a virtual camera for 3D rendering
 
an ordered list of Cullers
 
a superclass for prop cullers
 
Configuration for FXAA implementations.
 
abstract interface to OpenGL FBOs
 
a simple class to control print indentation
 
an ordered list of lights
 
a virtual light for 3D rendering
 
represent and manipulate 4x4 transformation matrices
 
virtual void Modified()
Update the modification time for this object.
 
abstract superclass for all actors, volumes and annotations
 
Perform part of the rendering of a vtkRenderer.
 
create a window for renderers to draw into
 
Render the props of a vtkRenderer.
 
abstract specification for renderers
 
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.
 
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,...
 
vtkCamera * GetActiveCamera()
Get the current camera.
 
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
 
vtkTypeBool UseShadows
If this flag is on and the rendering engine supports it render shadows Initial value is off.
 
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.
 
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.
 
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.
 
vtkRenderWindow * RenderWindow
 
int VisibleVolumeCount()
Returns the number of visible volumes.
 
vtkTypeBool AutomaticLightCreation
 
int NumberOfPropsRendered
 
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.
 
vtkVolumeCollection * Volumes
 
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.
 
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.
 
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,...
 
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...
 
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 *)
 
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.
 
double * ComputeVisiblePropBounds()
Wrapper-friendly version of ComputeVisiblePropBounds.
 
vtkCullerCollection * Cullers
 
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
 
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.
 
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 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().
 
vtkActorCollection * Actors
 
void SetDelegate(vtkRendererDelegate *d)
Set/Get a custom Render call.
 
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,...
 
Hold a reference to a vtkObjectBase instance.
 
handles properties associated with a texture map
 
record modification and/or execution time
 
abstract specification for Viewports
 
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
 
window superclass for vtkRenderWindow
 
vtkTypeUInt32 vtkMTimeType
 
#define VTK_SIZEHINT(...)