Loading...
Searching...
No Matches
BALL::VIEW::RaytracingRenderer Class Referenceabstract
Visualisation » Renderer

`#include <BALL/VIEW/RENDERING/RENDERERS/raytracingRenderer.h>`

Inheritance diagram for BALL::VIEW::RaytracingRenderer:

## Public Member Functions

virtual bool | supports (const PixelFormat &format) const
virtual Resolution | getSupportedResolution (const Resolution &min, const Resolution &max, const PixelFormat &format) const
virtual String | getRenderer ()=0
virtual void | updateMaterialForRepresentation (Representation const *rep)=0
virtual std::vector< float > | intersectRaysWithGeometry (const std::vector< Vector3 > &origins, const std::vector< Vector3 > &directions)
Public Member Functions inherited from BALL::VIEW::BufferedRenderer
| BufferedRenderer ()
bool | setFrameBufferFormat (const FrameBufferFormat &format)
void | renderToBuffer (RenderTarget *renderTarget, const Stage &stage)
virtual void | setOffset (Size offset)
virtual void | setStride (Size stride)
Public Member Functions inherited from BALL::VIEW::Renderer
| Renderer ()
| Renderer (const Renderer &renderer)
virtual | ~Renderer ()
virtual void | clear ()
virtual bool | init (Scene &scene)
virtual bool | init (const Stage &stage, float height, float width)
virtual void | setLights (bool reset_all=false)
| Set the light sources according to the stage.
virtual void | updateCamera (const Camera *camera=0)
virtual void | updateBackgroundColor ()
| Update the background color from the stage.
virtual void | setupEnvironmentMap (const QImage &image)
| Setup an environment map.
virtual void | setupStereo (float eye_separation, float focal_length)
virtual void | useContinuousLoop (bool use_loop)
bool | isContinuous ()
virtual bool | hasFPScounter ()
virtual double | getFPS ()
virtual bool | finish ()
virtual Vector3 | mapViewportTo3D (Position x, Position y)
virtual Vector2 | map3DToViewport (const Vector3 &vec)
virtual void | pickObjects (Position x1, Position y1, Position x2, Position y2, std::list< GeometricObject * > &objects)
virtual void | getFrustum (float &near_f, float &far_f, float &left_f, float &right_f, float &top_f, float &bottom_f)
virtual bool | renderOneRepresentation (const Representation &representation)
virtual void | bufferRepresentation (const Representation &)
virtual void | removeRepresentation (const Representation &)
virtual const Stage & | getStage () const
virtual void | setStage (const Stage &stage)
bool | hasStage () const
| Test if a Stage was assigned to the Renderer.
virtual void | setSize (float width, float height)
| Set the size of the display.
virtual float | getWidth () const
virtual float | getHeight () const
virtual void | setPreviewMode (bool show_preview)
virtual void | showLightSources (bool show_light_sources)
virtual void | renderRuler ()
virtual void | setStereoMode (StereoMode state)
virtual StereoMode | getStereoMode () const
virtual void | setStereoFrustumConversion (int width_factor, int height_factor)
bool | operator== (const Renderer &) const
virtual void | render_ (const GeometricObject *object)
| Wrapper for the renderering of special GeometricObjects.

## Protected Member Functions

virtual bool | supports (const FrameBufferFormat &format) const
Protected Member Functions inherited from BALL::VIEW::BufferedRenderer
virtual void | formatUpdated ()=0
virtual void | prepareBufferedRendering (const Stage &stage)=0
virtual void | renderToBufferImpl (FrameBufferPtr buffer)=0
const FrameBufferFormat & | getFrameBufferFormat () const
virtual void | renderClippingPlane_ (const ClippingPlane &)
virtual void | renderLabel_ (const Label &)
virtual void | renderLine_ (const Line &)
| Render a line.
virtual void | renderMultiLine_ (const MultiLine &)
| Render an illuminated line.
virtual void | renderMesh_ (const Mesh &)
| Render a surface mesh.
virtual void | renderPoint_ (const Point &)
| Render a single point.
virtual void | renderBox_ (const Box &)
| Render a box.
virtual void | renderSimpleBox_ (const SimpleBox &)
| Render a simple box (parallel to the axes).
virtual void | renderSphere_ (const Sphere &)
| Render a sphere.
virtual void | renderDisc_ (const Disc &)
| Render a disc.
virtual void | renderTube_ (const Tube &)
| Render a tube.
virtual void | renderTwoColoredLine_ (const TwoColoredLine &)
| Render a line with two colors.
virtual void | renderTwoColoredTube_ (const TwoColoredTube &)
| Render a tube with two colors.
virtual void | renderGridVisualisation_ (const GridVisualisation &)
| Render a grid.
virtual void | renderQuadMesh_ (const QuadMesh &)
| Render a quad mesh.

## Additional Inherited Members

Public Types inherited from BALL::VIEW::Renderer
enum | StereoMode { NO_STEREO = 0 , ACTIVE_STEREO , DUAL_VIEW_STEREO , DUAL_VIEW_DIFFERENT_DISPLAY_STEREO , TOP_BOTTOM_STEREO , INTERLACED_STEREO }
Protected Attributes inherited from BALL::VIEW::BufferedRenderer
Size | offset_
Size | stride_
Scene * | scene_
const Stage * | stage_
float | width_
float | height_
bool | show_preview_
float | volume_width_
bool | show_light_sources_
Camera | camera_
Vector3 | camera_offset_
bool | use_continuous_loop_
Size | stereo_frustum_conversion_width_
Size | stereo_frustum_conversion_height_
StereoMode | stereo_

## Detailed Description

RaytracingRenderer General interface for renderer, which provides raytracing instead of regular rendering.

Definition at line 32 of file raytracingRenderer.h.

## Member Function Documentation

## getRenderer()

virtual String BALL::VIEW::RaytracingRenderer::getRenderer | ( |  | ) |

pure virtual

Implemented in BALL::VIEW::CudaVolumeRenderer, and BALL::VIEW::RTfactRenderer.

## getSupportedResolution()

virtual Resolution BALL::VIEW::RaytracingRenderer::getSupportedResolution | ( | const Resolution & | min,
|  | const Resolution & | max,
|  | const PixelFormat & | format ) const

virtual

Exceptions

  BALL::Exception::FormatUnsupported |

Implements BALL::VIEW::BufferedRenderer.

## intersectRaysWithGeometry()

virtual std::vector< float > BALL::VIEW::RaytracingRenderer::intersectRaysWithGeometry | ( | const std::vector< Vector3 > & | origins,
|  | const std::vector< Vector3 > & | directions )

virtual

Raytracing-related functionality Intersect a set of rays with the geometry buffered by this renderer.

This function will intersect the rays

origins[i] + l * directions[i]

with the geometry that has been buffered by this renderer previously.

Reimplemented in BALL::VIEW::RTfactRenderer.

## supports() [1/2]

virtual bool BALL::VIEW::RaytracingRenderer::supports | ( | const FrameBufferFormat & | format | ) | const

protected virtual

Checks if a particular FrameBufferFormat is supported by the renderer. This checks the combination of pixel format and resolution. If this returns true, the renderer is able to write to a buffer in this format.

Implements BALL::VIEW::BufferedRenderer.

## supports() [2/2]

virtual bool BALL::VIEW::RaytracingRenderer::supports | ( | const PixelFormat & | format | ) | const

virtual

Checks if a particular PixelFormat is supported by the renderer.

Implements BALL::VIEW::BufferedRenderer.

## updateMaterialForRepresentation()

virtual void BALL::VIEW::RaytracingRenderer::updateMaterialForRepresentation | ( | Representation const * |  | ) |

pure virtual

Updates the material for the current representation

Reimplemented from BALL::VIEW::Renderer.

Implemented in BALL::VIEW::RTfactRenderer.