Basic Image AlgorithmS Library
2.8.0
|
Scene for rendering multiple triangle meshes generated from depth maps. More...
#include <GLviewer/TriangleMeshSplatRendering.hh>
Public Member Functions | |
void | AddThreeDOut (BIAS::ThreeDOut *tdo) |
Adds an arbitrary triangle ThreeDOut object to the scene. More... | |
void | ClearThreeDOuts () |
void | ComputeDepthTolerance (float fraction=0.01f) |
Set depth tolerance based on fraction of bounding box of tdo objects. More... | |
void | GetBoundingBox (BIAS::Vector3< double > &min, BIAS::Vector3< double > &max) |
float | GetDepthTolerance () const |
Returns the current depth tolerance. More... | |
void | SetCamera (BIAS::GLProjectionParametersInterface *camera) |
void | SetDepthTolerance (float depthTolerance) |
Sets the maximum depth difference at which geometry is considered to represent the same surface and is blended. More... | |
void | SetInternalResolution (int width, int height) |
Sets the resolution of the internal framebuffer object. More... | |
void | Splat () |
main splatting routine More... | |
TriangleMeshSplatRendering () | |
~TriangleMeshSplatRendering () | |
Scene for rendering multiple triangle meshes generated from depth maps.
Overlapping regions of the meshes will be blended, i.e. a per-pixel average is computed in screen space.
Definition at line 25 of file TriangleMeshSplatRendering.hh.
TriangleMeshSplatRendering::TriangleMeshSplatRendering | ( | ) |
Definition at line 48 of file TriangleMeshSplatRendering.cpp.
TriangleMeshSplatRendering::~TriangleMeshSplatRendering | ( | ) |
Definition at line 60 of file TriangleMeshSplatRendering.cpp.
void TriangleMeshSplatRendering::AddThreeDOut | ( | BIAS::ThreeDOut * | tdo | ) |
Adds an arbitrary triangle ThreeDOut object to the scene.
The tdo must have been allocated with 'new'. The scene takes responsibility to delete the tdo. Note: Only the indexed face sets are rendered.
Definition at line 104 of file TriangleMeshSplatRendering.cpp.
void TriangleMeshSplatRendering::ClearThreeDOuts | ( | ) |
Definition at line 110 of file TriangleMeshSplatRendering.cpp.
void TriangleMeshSplatRendering::ComputeDepthTolerance | ( | float | fraction = 0.01f | ) |
Set depth tolerance based on fraction of bounding box of tdo objects.
Definition at line 89 of file TriangleMeshSplatRendering.cpp.
References GetBoundingBox(), and SetDepthTolerance().
void TriangleMeshSplatRendering::GetBoundingBox | ( | BIAS::Vector3< double > & | min, |
BIAS::Vector3< double > & | max | ||
) |
Definition at line 294 of file TriangleMeshSplatRendering.cpp.
Referenced by ComputeDepthTolerance().
|
inline |
Returns the current depth tolerance.
Definition at line 51 of file TriangleMeshSplatRendering.hh.
void TriangleMeshSplatRendering::SetCamera | ( | BIAS::GLProjectionParametersInterface * | camera | ) |
Definition at line 84 of file TriangleMeshSplatRendering.cpp.
void TriangleMeshSplatRendering::SetDepthTolerance | ( | float | depthTolerance | ) |
Sets the maximum depth difference at which geometry is considered to represent the same surface and is blended.
Definition at line 78 of file TriangleMeshSplatRendering.cpp.
Referenced by ComputeDepthTolerance().
void TriangleMeshSplatRendering::SetInternalResolution | ( | int | width, |
int | height | ||
) |
Sets the resolution of the internal framebuffer object.
Definition at line 70 of file TriangleMeshSplatRendering.cpp.
void TriangleMeshSplatRendering::Splat | ( | ) |
main splatting routine
Definition at line 115 of file TriangleMeshSplatRendering.cpp.
References BIAS::glfRenderTarget::Bind(), BIAS::glfFramebufferObject::Bind(), BIAS::glfTexture::Bind(), BIAS::glfShaderProgram::Bind(), BIAS::glfRenderTarget::ClearColorBuffer(), BIAS::glfRenderTarget::ClearDepthBuffer(), BIAS::glfTexture2D::GetHeight(), BIAS::glfScreen::GetInstance(), BIAS::glfTexture2D::GetWidth(), and BIAS::glfShaderProgram::SetUniform().