BALL::VIEW::TilingRenderer Class Reference
[Renderer]

Offscreen rendering with arbitrary resolution. More...

#include <tilingRenderer.h>

Inheritance diagram for BALL::VIEW::TilingRenderer:
Inheritance graph
[legend]

List of all members.


Public Member Functions

Constructors and Destructors
TilingRenderer (Renderer *real_renderer, Size final_width, Size final_height, Size border=0)
Detailed Constructor.
TilingRenderer (const TilingRenderer &renderer)
Copy constructor.
virtual ~TilingRenderer ()
Destructor.
virtual void setLights (bool reset_all=false)
Set the light sources according to the stage.
virtual void updateCamera (const Camera *camera=0)
Update the camera position either from a given Camera, or from the default Stage.
virtual void updateBackgroundColor ()
Update the background color from the stage.
virtual bool finish ()
virtual Vector3 mapViewportTo3D (Position x, Position y)
Compute the 3D position on the view plane corresponding to point (x,y) on the view port.
virtual Vector2 map3DToViewport (const Vector3 &vec)
Compute the 2D position on the screen corresponding to the 3D point vec.
Accessors
virtual bool renderOneRepresentation (const Representation &representation)
Render a Representation.
virtual void bufferRepresentation (const Representation &rep)
Buffer a Representation for later rendering.
virtual void removeRepresentation (const Representation &rep)
Remove a representation from the buffer.
virtual void setSize (float width, float height)
Set the size of the display.
virtual void renderRuler ()
Render a ruler.

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_ ()

Detailed Description

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).


Constructor & Destructor Documentation

BALL::VIEW::TilingRenderer::TilingRenderer ( Renderer * real_renderer,
Size final_width,
Size final_height,
Size border = 0
)

Detailed Constructor.

Parameters:
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

Member Function Documentation

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.


Generated on Thu Aug 6 18:31:00 2009 for BALL by doxygen 1.5.8