41 #include "vtkRenderingCoreModule.h" 101 void RemoveAllLights();
119 void CreateLight(
void);
135 vtkGetMacro(TwoSidedLighting,
int);
155 vtkGetMacro(LightFollowCamera,
int);
168 vtkGetMacro(AutomaticLightCreation,
int);
178 virtual int UpdateLightsGeometryToFollowCamera(
void);
217 vtkGetMacro(Erase,
int);
228 vtkGetMacro(Draw,
int);
236 int CaptureGL2PSSpecialProp(
vtkProp *);
264 vtkSetVector3Macro(Ambient,
double);
265 vtkGetVectorMacro(Ambient,
double,3);
274 virtual double GetAllocatedRenderTime();
283 virtual double GetTimeFactor();
291 virtual void Render();
296 virtual void DeviceRender() =0;
304 virtual void DeviceRenderOpaqueGeometry();
315 virtual void DeviceRenderTranslucentPolygonalGeometry();
331 int VisibleActorCount();
336 int VisibleVolumeCount();
342 void ComputeVisiblePropBounds(
double bounds[6] );
347 double *ComputeVisiblePropBounds();
353 virtual void ResetCameraClippingRange();
362 virtual void ResetCameraClippingRange(
double bounds[6] );
363 virtual void ResetCameraClippingRange(
double xmin,
double xmax,
364 double ymin,
double ymax,
365 double zmin,
double zmax);
374 vtkSetClampMacro(NearClippingPlaneTolerance,
double,0,0.99);
375 vtkGetMacro(NearClippingPlaneTolerance,
double);
384 vtkSetClampMacro(ClippingRangeExpansion,
double,0,0.99);
385 vtkGetMacro(ClippingRangeExpansion,
double);
394 virtual void ResetCamera();
405 virtual void ResetCamera(
double bounds[6]);
410 virtual void ResetCamera(
double xmin,
double xmax,
double ymin,
double ymax,
411 double zmin,
double zmax);
432 vtkGetMacro(BackingStore,
int);
443 vtkGetMacro(Interactive,
int);
459 virtual void SetLayer(
int layer);
460 vtkGetMacro(Layer,
int);
474 vtkGetMacro(PreserveColorBuffer,
int);
485 vtkGetMacro(PreserveDepthBuffer,
int);
505 void ViewToWorld(
double &wx,
double &wy,
double &wz)
override;
511 void WorldToView(
double &wx,
double &wy,
double &wz)
override;
517 double GetZ (
int x,
int y);
528 vtkGetMacro( LastRenderTimeInSeconds,
double );
538 vtkGetMacro( NumberOfPropsRendered,
int );
551 return this->
PickProp(selectionX, selectionY, selectionX, selectionY);
554 double selectionX2,
double selectionY2)
override;
570 double GetTiledAspectRatio();
578 {
return (this->ActiveCamera !=
nullptr); }
593 vtkGetMacro(UseDepthPeeling,
int);
603 vtkGetMacro(UseDepthPeelingForVolumes,
bool)
616 vtkSetClampMacro(OcclusionRatio,
double,0.0,0.5);
617 vtkGetMacro(OcclusionRatio,
double);
627 vtkGetMacro(MaximumNumberOfPeels,
int);
636 vtkGetMacro(LastRenderingUsedDepthPeeling,
int);
664 virtual void SetBackgroundTexture(
vtkTexture*);
665 vtkGetObjectMacro(BackgroundTexture,
vtkTexture);
674 vtkGetMacro(TexturedBackground,
bool);
679 virtual void ReleaseGraphicsResources(
vtkWindow *);
686 vtkGetMacro(UseFXAA,
bool)
704 vtkGetMacro(UseShadows,
int);
714 vtkGetMacro(UseHiddenLineRemoval,
int)
737 virtual void PickGeometry();
742 virtual void ExpandBounds(
double bounds[6],
vtkMatrix4x4 *matrix);
761 int BackingStoreSize[2];
796 double ComputedVisiblePropBounds[6];
838 virtual int UpdateGeometry();
847 virtual int UpdateTranslucentPolygonalGeometry();
854 virtual int UpdateOpaquePolygonalGeometry();
860 virtual int UpdateCamera(
void);
867 virtual int UpdateLightGeometry(
void);
880 vtkCamera *GetActiveCameraAndResetIfCreated();
951 { this->Selector = selector; this->
Modified(); }
abstract superclass for all actors, volumes and annotations
vtkInformation * Information
double ClippingRangeExpansion
Specify enlargement of bounds when resetting the camera clipping range.
represents a volume (data & properties) in a rendered scene
int UseHiddenLineRemoval
When this flag is on and the rendering engine supports it, wireframe polydata will be rendered using ...
represents an object (geometry & properties) in a rendered scene
vtkAssemblyPath * PickProp(double selectionX, double selectionY) override
Return the prop (via a vtkAssemblyPath) that has the highest z value at the given x...
represent and manipulate 4x4 transformation matrices
vtkTypeUInt32 vtkMTimeType
abstract specification for Viewports
virtual void ClearLights(void)
Internal method temporarily removes lights before reloading them into graphics pipeline.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int UseDepthPeeling
If this flag is on and the GPU supports it, depth peeling is used for rendering translucent materials...
vtkRenderWindow * RenderWindow
double OcclusionRatio
In case of use of depth peeling technique for rendering translucent material, define the threshold un...
virtual int UpdateLights(void)
Ask all lights to load themselves into rendering pipeline.
a actor that draws 2D data
record modification and/or execution time
bool UseDepthPeelingForVolumes
This this flag is on and the GPU supports it, depth-peel volumes along with the translucent geometry...
virtual void SetRenderWindow(vtkRenderWindow *renwin)
abstract specification for renderers
double AllocatedRenderTime
an ordered list of lights
vtkRendererDelegate * Delegate
double LastRenderTimeInSeconds
window superclass for vtkRenderWindow
vtkVolumeCollection * Volumes
vtkCullerCollection * Cullers
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.
void SetSelector(vtkHardwareSelector *selector)
Called by vtkHardwareSelector when it begins rendering for selection.
a list of nodes that form an assembly path
unsigned char * BackingImage
a superclass for prop cullers
a simple class to control print indentation
virtual void StereoMidpoint()
Do anything necessary between rendering the left and right viewpoints in a stereo render...
a virtual camera for 3D rendering
a virtual light for 3D rendering
bool UseFXAA
If this flag is on and the rendering engine supports it, FXAA will be used to antialias the scene...
virtual vtkMTimeType GetMTime()
Return this object's modified time.
vtkLightCollection * GetLights()
Return the collection of lights.
vtkPropCollection * GL2PSSpecialPropCollection
Temporary collection used by vtkRenderWindow::CaptureGL2PSSpecialProps.
an ordered list of volumes
vtkFXAAOptions * FXAAOptions
Holds the FXAA configuration.
handles properties associated with a texture map
virtual void Modified()
Update the modification time for this object.
vtkLightCollection * Lights
int Erase
When this flag is off, the renderer will not erase the background or the Zbuffer. ...
vtkActorCollection * Actors
int Draw
When this flag is off, render commands are ignored.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
an ordered list of actors
vtkHardwareSelector * Selector
double NearClippingPlaneTolerance
Specifies the minimum distance of the near clipping plane as a percentage of the far clipping plane d...
an ordered list of Cullers
create a window for renderers to draw into
int UseShadows
If this flag is on and the rendering engine supports it render shadows Initial value is off...
virtual void ViewToWorld()
Convert view point coordinates to world coordinates.
int LastRenderingUsedDepthPeeling
Tells if the last call to DeviceRenderTranslucentPolygonalGeometry() actually used depth peeling...
Render the props of a vtkRenderer.
manager for OpenGL-based selection.
vtkTexture * BackgroundTexture
vtkRenderWindow * GetRenderWindow()
Specify the rendering window in which to draw.
int AutomaticLightCreation
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
vtkCullerCollection * GetCullers()
Return the collection of cullers.
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
Perform part of the rendering of a vtkRenderer.
virtual vtkWindow * GetVTKWindow()=0
Return the vtkWindow that owns this vtkViewport.
vtkAssemblyPath ** PathArray
int NumberOfPropsRendered
virtual void WorldToView()
Convert world point coordinates to view coordinates.
virtual void Clear()
Clear the image to the background color.
Configuration for FXAA implementations.
int IsActiveCameraCreated()
This method returns 1 if the ActiveCamera has already been set or automatically created by the render...
int MaximumNumberOfPeels
In case of depth peeling, define the maximum number of peeling layers.