BALL
1.4.1
|
#include <BALL/VIEW/RENDERING/glRenderer.h>
GLRenderer Renderer which provides hardware accelerated OPENGL rendering.
Definition at line 65 of file glRenderer.h.
typedef HashMap<const Representation*, GLDisplayList*> BALL::VIEW::GLRenderer::DisplayListHashMap [protected] |
Definition at line 477 of file glRenderer.h.
typedef HashMap<Name, const GeometricObject*> BALL::VIEW::GLRenderer::GeometricObjectHashMap [protected] |
Definition at line 476 of file glRenderer.h.
typedef HashMap<const Representation*, vector<MeshBuffer*> > BALL::VIEW::GLRenderer::MeshBufferHashMap [protected] |
Definition at line 478 of file glRenderer.h.
typedef unsigned int BALL::VIEW::GLRenderer::Name |
Typedef for OPENGL names.
Definition at line 130 of file glRenderer.h.
typedef HashMap<const GeometricObject*, Name> BALL::VIEW::GLRenderer::NameHashMap [protected] |
Definition at line 475 of file glRenderer.h.
DIRECT_RENDERING |
Render without display lists, directly to the Scene. |
DISPLAY_LISTS_RENDERING |
Render the contents of the display lists. |
REBUILD_DISPLAY_LISTS |
Rebuild the contents of the display lists and redraw them. |
Definition at line 104 of file glRenderer.h.
RENDER_MODE_UNDEFINED | |
RENDER_MODE_SOLID | |
RENDER_MODE_TRANSPARENT | |
RENDER_MODE_ALWAYS_FRONT |
Definition at line 87 of file glRenderer.h.
Definition at line 72 of file glRenderer.h.
Default Constructor.
virtual BALL::VIEW::GLRenderer::~GLRenderer | ( | ) | [virtual] |
Destructor.
virtual void BALL::VIEW::GLRenderer::bufferingDependentRender_ | ( | const Representation & | repr, |
BufferMode | mode | ||
) | [virtual] |
void BALL::VIEW::GLRenderer::bufferRepresentation | ( | const Representation & | rep | ) | [virtual] |
Buffer the visualisation for the given Representation into OpenGL VertexBuffer Objects and DisplayLists.
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::GLRenderer::clear | ( | ) | [virtual] |
Explicit default initialization.
Reimplemented from BALL::VIEW::Renderer.
void BALL::VIEW::GLRenderer::clearNames_ | ( | ) | [protected] |
void BALL::VIEW::GLRenderer::clearVertexBuffersFor | ( | Representation & | rep | ) |
void BALL::VIEW::GLRenderer::createBoxes_ | ( | ) | [protected] |
void BALL::VIEW::GLRenderer::createDotBox_ | ( | ) | [protected] |
void BALL::VIEW::GLRenderer::createDottedSphere_ | ( | int | precision | ) | [protected] |
void BALL::VIEW::GLRenderer::createLineBox_ | ( | ) | [protected] |
void BALL::VIEW::GLRenderer::createSolidBox_ | ( | ) | [protected] |
void BALL::VIEW::GLRenderer::createSpheres_ | ( | ) | [protected] |
Position BALL::VIEW::GLRenderer::createTextureFromGrid | ( | const RegularData3D & | grid, |
const ColorMap & | map | ||
) |
void BALL::VIEW::GLRenderer::createTubes_ | ( | ) | [protected] |
void BALL::VIEW::GLRenderer::drawBuffered | ( | const Representation & | rep | ) |
Draw the visualisation of the given Representation from the VertexBuffers and a DisplayList.
void BALL::VIEW::GLRenderer::dump | ( | std::ostream & | s, |
Size | depth | ||
) | const |
void BALL::VIEW::GLRenderer::generateIlluminationTexture_ | ( | float | ka, |
float | kd, | ||
float | kr, | ||
float | shininess | ||
) | [protected] |
vector<String> BALL::VIEW::GLRenderer::getExtensions | ( | ) |
void BALL::VIEW::GLRenderer::getFrustum | ( | float & | near, |
float & | far, | ||
float & | left, | ||
float & | right, | ||
float & | top, | ||
float & | bottom | ||
) |
Name BALL::VIEW::GLRenderer::getName | ( | const GeometricObject & | object | ) | [inline] |
GeometricObject* BALL::VIEW::GLRenderer::getObject | ( | GLRenderer::Name | name | ) | const |
float BALL::VIEW::GLRenderer::getOrthographicZoom | ( | void | ) | [protected] |
virtual bool BALL::VIEW::GLRenderer::getSmoothLines | ( | ) | [virtual] |
Position BALL::VIEW::GLRenderer::getTextureIndex_ | ( | Position | x, |
Position | y, | ||
Position | z, | ||
Size | width, | ||
Size | height | ||
) | [inline, protected] |
float BALL::VIEW::GLRenderer::getXScale | ( | ) | const |
float BALL::VIEW::GLRenderer::getYScale | ( | ) | const |
bool BALL::VIEW::GLRenderer::hasDisplayListFor | ( | const Representation & | rep | ) | const |
Test if a Representation has a DisplayList.
virtual bool BALL::VIEW::GLRenderer::init | ( | Scene & | scene | ) | [virtual] |
Initialization routines. This method is called by Scene::initializeGL.
Reimplemented from BALL::VIEW::Renderer.
virtual bool BALL::VIEW::GLRenderer::init | ( | const Stage & | stage, |
float | width, | ||
float | height | ||
) | [virtual] |
Initialise the renderer, e.g. the display lists.
Reimplemented from BALL::VIEW::Renderer.
void BALL::VIEW::GLRenderer::initDrawingMeshes_ | ( | ) | [protected] |
void BALL::VIEW::GLRenderer::initDrawingOthers_ | ( | ) | [protected] |
void BALL::VIEW::GLRenderer::initGLU_ | ( | DrawingMode | mode | ) | [protected] |
void BALL::VIEW::GLRenderer::initSolid | ( | ) |
bool BALL::VIEW::GLRenderer::isExtensionSupported | ( | const String & | extension | ) | const |
Test if a given opengl extension is supported by the current driver. Call this only after Scene::initializeGL();
Vector2 BALL::VIEW::GLRenderer::map3DToViewport | ( | const Vector3 & | vec | ) | [virtual] |
Compute the 2D position on the screen corresponding to the 3D point vec
Reimplemented from BALL::VIEW::Renderer.
bool BALL::VIEW::GLRenderer::mapViewplaneToScreen_ | ( | ) | [protected] |
Maps the current viewplane to screen coordinates. Returns false if the projection matrix is not correctly initialized.
Vector3 BALL::VIEW::GLRenderer::mapViewportTo3D | ( | Position | x, |
Position | y | ||
) | [virtual] |
Compute the 3D position on the view plane corresponding to point (x,y) on the view port
Reimplemented from BALL::VIEW::Renderer.
void BALL::VIEW::GLRenderer::normalVector3_ | ( | const Vector3 & | v | ) | [protected] |
void BALL::VIEW::GLRenderer::pickObjects1 | ( | Position | x1, |
Position | y1, | ||
Position | x2, | ||
Position | y2 | ||
) |
Pick geometric objects
x1,y1,x2,y2 | the rectangle of the selection |
void BALL::VIEW::GLRenderer::pickObjects2 | ( | std::list< GeometricObject * > & | objects | ) |
Pick geometric objects method2. Call this method after pickObjects1 and rendering the representations.
objects | returns the picked objects |
void BALL::VIEW::GLRenderer::removeRepresentation | ( | const Representation & | rep | ) | [virtual] |
Remove all VertexBuffer and DisplayLists for the given Representation.
Reimplemented from BALL::VIEW::Renderer.
void BALL::VIEW::GLRenderer::removeTextureFor_ | ( | const RegularData3D & | grid | ) |
virtual bool BALL::VIEW::GLRenderer::render | ( | const Representation & | representation, |
bool | for_display_list = false |
||
) | [virtual] |
virtual void BALL::VIEW::GLRenderer::renderBox_ | ( | const Box & | ) | [protected, virtual] |
Render a box.
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::GLRenderer::renderClippingPlane_ | ( | const ClippingPlane & | plane | ) | [protected, virtual] |
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::GLRenderer::renderDisc_ | ( | const Disc & | ) | [protected, virtual] |
Render a disc.
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::GLRenderer::renderGridVisualisation_ | ( | const GridVisualisation & | vol | ) | [protected, virtual] |
Render a grid slice.
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::GLRenderer::renderLabel_ | ( | const Label & | ) | [protected, virtual] |
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::GLRenderer::renderLine_ | ( | const Line & | ) | [protected, virtual] |
Render a line.
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::GLRenderer::renderMesh_ | ( | const Mesh & | ) | [protected, virtual] |
Render a surface mesh.
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::GLRenderer::renderMultiLine_ | ( | const MultiLine & | line | ) | [protected, virtual] |
Render an illuminated line.
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::GLRenderer::renderPoint_ | ( | const Point & | ) | [protected, virtual] |
Render a single point.
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::GLRenderer::renderQuadMesh_ | ( | const QuadMesh & | ) | [protected, virtual] |
Render a quad mesh.
Reimplemented from BALL::VIEW::Renderer.
void BALL::VIEW::GLRenderer::renderRepresentation_ | ( | const Representation & | representation, |
bool | for_display_list | ||
) | [protected] |
void BALL::VIEW::GLRenderer::renderRepresentations_ | ( | BufferMode | mode | ) | [protected] |
virtual void BALL::VIEW::GLRenderer::renderRuler | ( | ) | [protected, 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::GLRenderer::renderSimpleBox_ | ( | const SimpleBox & | ) | [protected, virtual] |
Render a simple box (parallel to the axes)
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::GLRenderer::renderSphere_ | ( | const Sphere & | ) | [protected, virtual] |
Render a sphere.
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::GLRenderer::renderToBuffer | ( | RenderTarget * | renderTarget, |
BufferMode | |||
) | [virtual] |
This function renders into the buffer of the RenderTarget which has to be made current before this function is called. Buffers are not automatically swapped afterwards!
virtual void BALL::VIEW::GLRenderer::renderTube_ | ( | const Tube & | ) | [protected, virtual] |
Render a tube.
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::GLRenderer::renderTwoColoredLine_ | ( | const TwoColoredLine & | ) | [protected, virtual] |
Render a line with two colors.
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::GLRenderer::renderTwoColoredTube_ | ( | const TwoColoredTube & | ) | [protected, virtual] |
Render a tube with two colors.
Reimplemented from BALL::VIEW::Renderer.
void BALL::VIEW::GLRenderer::rotateVector3Angle_ | ( | const Vector3 & | v, |
Real | angle | ||
) | [protected] |
void BALL::VIEW::GLRenderer::scale_ | ( | float | f | ) | [protected] |
void BALL::VIEW::GLRenderer::scaleVector3_ | ( | const Vector3 & | v | ) | [protected] |
void BALL::VIEW::GLRenderer::setAntialiasing | ( | bool | state | ) |
Enable or disable antialiasing.
void BALL::VIEW::GLRenderer::setColor4ub_ | ( | const GeometricObject & | object | ) | [protected] |
void BALL::VIEW::GLRenderer::setColorRGBA_ | ( | const ColorRGBA & | color | ) |
virtual void BALL::VIEW::GLRenderer::setLights | ( | bool | reset_all = false | ) | [virtual] |
Set the light sources according to the stage.
Reimplemented from BALL::VIEW::Renderer.
void BALL::VIEW::GLRenderer::setOrthographicZoom | ( | float | orthographic_zoom | ) | [protected] |
void BALL::VIEW::GLRenderer::setRenderMode | ( | RenderMode | mode | ) | [inline] |
Definition at line 236 of file glRenderer.h.
void BALL::VIEW::GLRenderer::setSize | ( | float | width, |
float | height | ||
) | [virtual] |
Set the size of the display.
Reimplemented from BALL::VIEW::Renderer.
virtual void BALL::VIEW::GLRenderer::setSmoothLines | ( | bool | smooth_lines | ) | [virtual] |
Should the lines in the line representation and the wireframe models be smoothed?
void BALL::VIEW::GLRenderer::setStereoMode | ( | StereoMode | state | ) |
void BALL::VIEW::GLRenderer::setupGridClipPlanes_ | ( | const GridVisualisation & | slice | ) | [protected] |
void BALL::VIEW::GLRenderer::setupStereo | ( | float | eye_separation, |
float | focal_length | ||
) | [virtual] |
Sets this renderer as a part of a stereo setup.
eye_separation denotes the distance along the right vector used by this "eye".
Reimplemented from BALL::VIEW::Renderer.
void BALL::VIEW::GLRenderer::subdivideTriangle_ | ( | Vector3 & | v1, |
Vector3 & | v2, | ||
Vector3 & | v3, | ||
int | precision | ||
) | [protected] |
void BALL::VIEW::GLRenderer::texCoordVector3_ | ( | const Vector3 & | v | ) | [inline, protected] |
Definition at line 414 of file glRenderer.h.
void BALL::VIEW::GLRenderer::translateVector3_ | ( | const Vector3 & | v | ) | [protected] |
virtual void BALL::VIEW::GLRenderer::updateBackgroundColor | ( | ) | [virtual] |
Update the background color from the stage.
Reimplemented from BALL::VIEW::Renderer.
void BALL::VIEW::GLRenderer::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.
void BALL::VIEW::GLRenderer::vertexVector3_ | ( | const Vector3 & | v | ) |
friend class Scene [friend] |
Definition at line 68 of file glRenderer.h.
Name BALL::VIEW::GLRenderer::all_names_ [protected] |
Definition at line 484 of file glRenderer.h.
float BALL::VIEW::GLRenderer::bottom_ [protected] |
Definition at line 458 of file glRenderer.h.
GLuint BALL::VIEW::GLRenderer::cel_texture_ [protected] |
Definition at line 501 of file glRenderer.h.
Definition at line 482 of file glRenderer.h.
Position BALL::VIEW::GLRenderer::display_lists_index_ [protected] |
Definition at line 495 of file glRenderer.h.
bool BALL::VIEW::GLRenderer::drawed_mesh_ [protected] |
Definition at line 498 of file glRenderer.h.
bool BALL::VIEW::GLRenderer::drawed_other_object_ [protected] |
Definition at line 497 of file glRenderer.h.
DrawingMode BALL::VIEW::GLRenderer::drawing_mode_ [protected] |
Definition at line 442 of file glRenderer.h.
Index BALL::VIEW::GLRenderer::drawing_precision_ [protected] |
Definition at line 445 of file glRenderer.h.
float BALL::VIEW::GLRenderer::far_ [protected] |
Definition at line 450 of file glRenderer.h.
GLDisplayList* BALL::VIEW::GLRenderer::GL_boxes_list_ [protected] |
Definition at line 468 of file glRenderer.h.
GLDisplayList* BALL::VIEW::GLRenderer::GL_spheres_list_ [protected] |
Definition at line 466 of file glRenderer.h.
GLDisplayList* BALL::VIEW::GLRenderer::GL_tubes_list_ [protected] |
Definition at line 467 of file glRenderer.h.
GLUquadricObj* BALL::VIEW::GLRenderer::GLU_quadric_obj_ [protected] |
Definition at line 499 of file glRenderer.h.
HashMap<const RegularData3D*, Position> BALL::VIEW::GLRenderer::grid_to_texture_ [protected] |
Definition at line 500 of file glRenderer.h.
float BALL::VIEW::GLRenderer::left_ [protected] |
Definition at line 452 of file glRenderer.h.
GLDisplayList BALL::VIEW::GLRenderer::line_list_ [protected] |
Definition at line 470 of file glRenderer.h.
GLubyte BALL::VIEW::GLRenderer::line_tex_[128][128][4] [protected] |
Definition at line 472 of file glRenderer.h.
GLuint BALL::VIEW::GLRenderer::line_texture_bind_ [protected] |
Definition at line 471 of file glRenderer.h.
ModelType BALL::VIEW::GLRenderer::model_type_ [protected] |
Definition at line 494 of file glRenderer.h.
Definition at line 480 of file glRenderer.h.
float BALL::VIEW::GLRenderer::near_ [protected] |
Definition at line 448 of file glRenderer.h.
Vector3 BALL::VIEW::GLRenderer::normal_vector_ [protected] |
Definition at line 486 of file glRenderer.h.
GLuint BALL::VIEW::GLRenderer::object_buffer_[BALL_GLRENDERER_PICKING_NUMBER_OF_MAX_OBJECTS] [protected] |
Definition at line 485 of file glRenderer.h.
NameHashMap BALL::VIEW::GLRenderer::object_to_name_ [protected] |
Definition at line 481 of file glRenderer.h.
float BALL::VIEW::GLRenderer::orthographic_zoom_ [protected] |
Definition at line 503 of file glRenderer.h.
bool BALL::VIEW::GLRenderer::picking_mode_ [protected] |
Definition at line 493 of file glRenderer.h.
RenderMode BALL::VIEW::GLRenderer::render_mode_ [protected] |
Definition at line 489 of file glRenderer.h.
Definition at line 483 of file glRenderer.h.
float BALL::VIEW::GLRenderer::right_ [protected] |
Definition at line 454 of file glRenderer.h.
bool BALL::VIEW::GLRenderer::single_pick_ [protected] |
Definition at line 496 of file glRenderer.h.
bool BALL::VIEW::GLRenderer::smooth_lines_ [protected] |
Definition at line 492 of file glRenderer.h.
GLDisplayList* BALL::VIEW::GLRenderer::sphere_list_ [protected] |
Definition at line 469 of file glRenderer.h.
StereoMode BALL::VIEW::GLRenderer::stereo_ [protected] |
Definition at line 488 of file glRenderer.h.
float BALL::VIEW::GLRenderer::top_ [protected] |
Definition at line 456 of file glRenderer.h.
bool BALL::VIEW::GLRenderer::use_vertex_buffer_ [protected] |
Definition at line 491 of file glRenderer.h.
float BALL::VIEW::GLRenderer::x_scale_ [protected] |
Definition at line 461 of file glRenderer.h.
float BALL::VIEW::GLRenderer::y_scale_ [protected] |
Definition at line 464 of file glRenderer.h.