Basic Image AlgorithmS Library
2.8.0
|
Reusable Geometry an drawing functions for OpenGL. More...
#include <Gui/GeometryGL.hh>
Public Member Functions | |
GeometryGL () | |
ctor More... | |
virtual | ~GeometryGL () |
destructor More... | |
Static Public Member Functions | |
static void | CreateSampleDisplayListScene (int &dplistID) |
creates a sample scene as one dispaly list returned in dplistID once the arg is kept as it is if initialization was done before. More... | |
static BIAS::Matrix4x4< double > | CreateTextureMatrix (BIAS::PMatrix &P, const unsigned int w, const unsigned int h, const bool &useRECTcoord=false) |
compose an OpenGL 4x4 (projective) texture matrix More... | |
static void | DisplayCallsSampleDisplayListScene (const double &curTime) |
static void | DisplayCameraExternalParams (BIAS::PMatrix &P) |
static void | DisplayCameraExternalParams (const BIAS::Vector3< double > &C, const BIAS::Vector3< double > &up, const BIAS::Vector3< double > &a) |
static void | DisplayCameraInternalParams (const int &x0, const int &y0, const unsigned int &width, const unsigned int &height, const float &fovY, const float &zNear, const float &zFar) |
static void | DisplayClear (const GLbitfield &mask=CLEAR_DEFAULT_MASK) |
utility functions More... | |
static void | DisplayCoordCross (const float &size=1.0f, const float &linewidth=1.0f) |
draw a coord cross as three lines in r,g,b More... | |
static void | DisplayCoordCross (const float &size, const float &linewidth, const BIAS::DrawTextGL &font, const std::string &LabelX=std::string("x"), const std::string &LabelY=std::string("y"), const std::string &LabelZ=std::string("z")) |
draw coord cross with labels in r,g,b JW More... | |
static void | DisplayCoordCrossAxesLabel (const float &size, const BIAS::DrawTextGL &font, const std::string &LabelX=std::string("x"), const std::string &LabelY=std::string("y"), const std::string &LabelZ=std::string("z")) |
draw only the axes labels for a coord cross as text in r,g,b JW More... | |
static void | DisplayImgPlaneTextured (BIAS::PMatrix &P, const unsigned int &w, const unsigned int &h, const int &texID, const int &texTarget, const double &scale, const bool &flipY, const BIAS::Vector4< float > &vertexColor=BIAS::Vector4< float >(1.0, 0.0, 1.0, 0.0)) |
draws a pkane with attched texture coordinates More... | |
static void | DisplayP (BIAS::PMatrix &P, const unsigned int &w, const unsigned int &h, const double &scale, const float &linewidth=1.0f) |
static void | DisplayQuadTexCoord2D (const BIAS::ImgObjGL &texobj, const bool &additionalFlipY) |
static void | DisplayQuadTexCoord2DFull (const BIAS::ImgObjGL &texobj, const bool &additionalFlipY) |
static void | DisplayRenderMode (const BIAS::RenderModeGL &m) |
static void | DisplaySceneExampleSimple () |
static void | DisplaySimpleAnimation (const double &time) |
time dependant scene for samples More... | |
static void | FillCubemap (BIAS::ImgObjGL &im, const bool &mipmapColorChange=false) |
fill More... | |
static BIAS::Vector2< double > | GetImgCorner2d (const unsigned int &w, const unsigned int &h, const unsigned int &corner, const int texMode, const bool flipY) |
static BIAS::Vector3< double > | GetImgCorner3d (BIAS::PMatrix &P, const unsigned int &width, const unsigned int &height, const unsigned int &corner, const double &scale) |
compute 3D pos. More... | |
static void | GetInfoGL (std::ostream &os) |
print all GL state informatino to os including displaylist, texobj and matric info More... | |
static void | GetInfoGLDisplayLists (std::ostream &os) |
static void | GetInfoGLenvironment (std::ostream &os) |
print individual information to os More... | |
static void | GetInfoGLmatrices (std::ostream &os) |
static void | GetInfoGLTexID (const GLint id, int &foundTextures, std::ostream &os, const bool &noOutputIfInvalid=true) |
static void | GetInfoGLTexObjects (std::ostream &os) |
static void | GetInfoGLWriteMasks (std::ostream &os) |
static std::string | GetName (const GLint flag, const bool withNumericDisplay=true, const bool numerixHexFormat=true) |
return a name for an OpenGL flags nr. More... | |
Reusable Geometry an drawing functions for OpenGL.
Definition at line 53 of file GeometryGL.hh.
|
virtual |
destructor
Definition at line 32 of file GeometryGL.cpp.
GeometryGL::GeometryGL | ( | ) |
ctor
Definition at line 34 of file GeometryGL.cpp.
|
static |
creates a sample scene as one dispaly list returned in dplistID once the arg is kept as it is if initialization was done before.
Definition at line 1081 of file GeometryGL.cpp.
Referenced by DisplayCallsSampleDisplayListScene().
|
static |
compose an OpenGL 4x4 (projective) texture matrix
useRECTcoord | true to use RECT 0..npixels instead of 0..1 normalized pw2 texture coordinate JW |
Definition at line 908 of file GeometryGL.cpp.
References BIAS::Matrix3x3< T >::SetIdentity(), and BIAS::Matrix4x4< T >::SetIdentity().
|
static |
Definition at line 1193 of file GeometryGL.cpp.
References CreateSampleDisplayListScene().
|
static |
Definition at line 670 of file GeometryGL.cpp.
References BIAS::PMatrix::GetA(), BIAS::PMatrix::GetC(), and BIAS::PMatrix::GetV().
|
static |
Definition at line 679 of file GeometryGL.cpp.
|
static |
Definition at line 633 of file GeometryGL.cpp.
|
static |
utility functions
deps to glut:
Definition at line 424 of file GeometryGL.cpp.
Referenced by BIAS::OpenGLCanvasBase::DisplayClear().
|
static |
draw a coord cross as three lines in r,g,b
withAxes | Label true to draw x/y/Z text as axes label JW |
Definition at line 598 of file GeometryGL.cpp.
Referenced by BIAS::OpenGLCanvasBase::DisplayCoordCross(), and DisplaySceneExampleSimple().
|
static |
draw coord cross with labels in r,g,b JW
Definition at line 556 of file GeometryGL.cpp.
|
static |
draw only the axes labels for a coord cross as text in r,g,b JW
Definition at line 568 of file GeometryGL.cpp.
References BIAS::DrawTextGL::IsInitialized(), and BIAS::DrawTextGL::Print3D().
Referenced by BIAS::OpenGLCanvasBase::DisplayCoordCross().
|
static |
draws a pkane with attched texture coordinates
Definition at line 804 of file GeometryGL.cpp.
References BIAS::LOWER_LEFT, BIAS::LOWER_RIGHT, BIAS::UPPER_LEFT, and BIAS::UPPER_RIGHT.
|
static |
Definition at line 842 of file GeometryGL.cpp.
References BIAS::PMatrix::GetC(), BIAS::LOWER_LEFT, BIAS::LOWER_RIGHT, BIAS::OPTICAL_CENTER, BIAS::UPPER_LEFT, and BIAS::UPPER_RIGHT.
|
static |
Definition at line 976 of file GeometryGL.cpp.
References BIAS::ImgObjGL::heightBrutto, BIAS::ImgObjGL::heightOrig, BIAS::ImgObjGL::id, BIAS::ImgObjGL::IsRectangleTexture(), BIAS::ImgObjGL::magnificationMode, BIAS::ImgObjGL::minificationMode, BIAS::Vector2< T >::Set(), BIAS::ImgObjGL::target, BIAS::ImgObjGL::widthBrutto, and BIAS::ImgObjGL::widthOrig.
|
static |
Definition at line 956 of file GeometryGL.cpp.
Referenced by BIAS::ImageCanvasGLBase::DisplayCalls().
|
static |
Definition at line 478 of file GeometryGL.cpp.
References BIAS::RenderModeGL::cullface, BIAS::RenderModeGL::enable_cullface, BIAS::RenderModeGL::linewidth, BIAS::RenderModeGL::pointsize, BIAS::RenderModeGL::polygonmodeBACK, BIAS::RenderModeGL::polygonmodeFRONT, and BIAS::RenderModeGL::shademodel.
Referenced by BIAS::OpenGLCanvasBase::DisplayRenderMode().
|
static |
Definition at line 517 of file GeometryGL.cpp.
References DisplayCoordCross().
Referenced by BIAS::OpenGLCanvasBase::DisplaySampleScene().
|
static |
time dependant scene for samples
Definition at line 502 of file GeometryGL.cpp.
|
static |
fill
Definition at line 1384 of file GeometryGL.cpp.
|
static |
Definition at line 702 of file GeometryGL.cpp.
References BIAS::LOWER_LEFT, BIAS::LOWER_RIGHT, BIAS::ImageBase::PowerOfTwoSize(), BIAS::UPPER_LEFT, and BIAS::UPPER_RIGHT.
|
static |
compute 3D pos.
of P in OpenGL coordinate system TODO: move this to PMatrix with addition imgDim parameter JW
Definition at line 761 of file GeometryGL.cpp.
References BIAS::PMatrix::GetC(), BIAS::PMatrix::GetK(), BIAS::PMatrix::GetRayWorldCoo(), BIAS::LOWER_LEFT, BIAS::LOWER_RIGHT, BIAS::Vector3< T >::Normalize(), BIAS::OPTICAL_CENTER, BIAS::HomgPoint2D::Set(), BIAS::UPPER_LEFT, and BIAS::UPPER_RIGHT.
|
static |
print all GL state informatino to os including displaylist, texobj and matric info
Definition at line 411 of file GeometryGL.cpp.
Referenced by BIAS::OpenGLCanvasBase::GetInfoGL().
|
static |
Definition at line 75 of file GeometryGL.cpp.
|
static |
print individual information to os
Definition at line 177 of file GeometryGL.cpp.
|
static |
Definition at line 37 of file GeometryGL.cpp.
|
static |
Definition at line 92 of file GeometryGL.cpp.
|
static |
Definition at line 165 of file GeometryGL.cpp.
|
static |
Definition at line 384 of file GeometryGL.cpp.
|
static |
return a name for an OpenGL flags nr.
TODO
Definition at line 1243 of file GeometryGL.cpp.