#include <BALL/VIEW/RENDERING/tilingRenderer.h>
Public Member Functions | |
Constructors and Destructors | |
TilingRenderer (Renderer *real_renderer, Size final_width, Size final_height, Size border=0) | |
TilingRenderer (const TilingRenderer &renderer) | |
virtual | ~TilingRenderer () |
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 bool | finish () |
virtual Vector3 | mapViewportTo3D (Position x, Position y) |
virtual Vector2 | map3DToViewport (const Vector3 &vec) |
Accessors | |
virtual bool | renderOneRepresentation (const Representation &representation) |
virtual void | bufferRepresentation (const Representation &rep) |
virtual void | removeRepresentation (const Representation &rep) |
virtual void | setSize (float width, float height) |
Set the size of the display. | |
virtual void | renderRuler () |
Predicates | |
| |
Renderer * | real_renderer_ |
The renderer used for rendering the individual tiles. | |
Size | final_width_ |
The desired width of the final image. | |
Size | final_height_ |
The desired height of the final image. | |
Size | border_ |
The border oversampled for each tile. | |
Size | num_cols_ |
Size | num_rows_ |
virtual void | renderToBuffer (RenderTarget *target) |
virtual void | render_ (const GeometricObject *object) |
Wrapper for the renderering of special GeometricObjects. | |
void | computeTilingSetup_ () |
Offscreen rendering with arbitrary resolution. This class encapsulates a renderer object which it uses to render a number of individual tiles to compose them into a full image. This can be used to render very large images into files.
The idea behind this renderer is heavily based on the extremely useful open-source TR library for tile rendering by Brian Paul (http://www.mesa3d.org/brianp/TR.html).
Definition at line 31 of file tilingRenderer.h.
BALL::VIEW::TilingRenderer::TilingRenderer | ( | Renderer * | real_renderer, | |
Size | final_width, | |||
Size | final_height, | |||
Size | border = 0 | |||
) |
Detailed Constructor.
real_renderer | the renderer to encapsulate | |
final_width | the width of the generated image | |
final_height | the height of the generated image | |
border | an optional border around each tile |
BALL::VIEW::TilingRenderer::TilingRenderer | ( | const TilingRenderer & | renderer | ) |
Copy constructor.
virtual BALL::VIEW::TilingRenderer::~TilingRenderer | ( | ) | [inline, virtual] |
Destructor
Definition at line 56 of file tilingRenderer.h.
virtual void BALL::VIEW::TilingRenderer::bufferRepresentation | ( | const Representation & | rep | ) | [virtual] |
Buffer a Representation for later rendering.
Reimplemented from BALL::VIEW::Renderer.
void BALL::VIEW::TilingRenderer::computeTilingSetup_ | ( | ) | [protected] |
virtual bool BALL::VIEW::TilingRenderer::finish | ( | ) | [virtual] |
Reimplemented from BALL::VIEW::Renderer.
Compute the 2D position on the screen corresponding to the 3D point vec
Reimplemented from BALL::VIEW::Renderer.
Compute the 3D position on the view plane corresponding to point (x,y) on the view port
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::TilingRenderer::removeRepresentation | ( | const Representation & | rep | ) | [virtual] |
Remove a representation from the buffer.
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::TilingRenderer::render_ | ( | const GeometricObject * | object | ) | [virtual] |
Wrapper for the renderering of special GeometricObjects.
Reimplemented from BALL::VIEW::Renderer.
virtual bool BALL::VIEW::TilingRenderer::renderOneRepresentation | ( | const Representation & | representation | ) | [virtual] |
Render a Representation.
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::TilingRenderer::renderRuler | ( | ) | [virtual] |
Render a ruler.
If supported by the renderer implementation, this function will produce a simple ruler that is rendered together with the other representations. The main use of this function is in the edit mode, where it can help to straighten-up structures and to correctly estimate angles and distances.
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::TilingRenderer::renderToBuffer | ( | RenderTarget * | target | ) | [virtual] |
virtual void BALL::VIEW::TilingRenderer::setLights | ( | bool | reset_all = false |
) | [virtual] |
Set the light sources according to the stage.
Reimplemented from BALL::VIEW::Renderer.
Set the size of the display.
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::TilingRenderer::updateBackgroundColor | ( | ) | [virtual] |
Update the background color from the stage.
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::TilingRenderer::updateCamera | ( | const Camera * | camera = 0 |
) | [virtual] |
Update the camera position either from a given Camera, or from the default Stage.
Reimplemented from BALL::VIEW::Renderer.
Size BALL::VIEW::TilingRenderer::border_ [protected] |
The border oversampled for each tile.
Definition at line 134 of file tilingRenderer.h.
Size BALL::VIEW::TilingRenderer::final_height_ [protected] |
The desired height of the final image.
Definition at line 131 of file tilingRenderer.h.
Size BALL::VIEW::TilingRenderer::final_width_ [protected] |
The desired width of the final image.
Definition at line 128 of file tilingRenderer.h.
Size BALL::VIEW::TilingRenderer::num_cols_ [protected] |
Definition at line 136 of file tilingRenderer.h.
Size BALL::VIEW::TilingRenderer::num_rows_ [protected] |
Definition at line 137 of file tilingRenderer.h.
Renderer* BALL::VIEW::TilingRenderer::real_renderer_ [protected] |
The renderer used for rendering the individual tiles.
Definition at line 125 of file tilingRenderer.h.