Developer Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ACG Namespace Reference

Namespace providing different geometric functions concerning angles. More...

Namespaces

namespace  Geometry
namespace  QtWidgets
namespace  SceneGraph

Classes

class  TriangleBSPTreeT
class  GPUCacheOptimizer
class  GPUCacheOptimizerTipsify
class  GPUCacheEfficiencyTester
class  ColorStack
class  ColorTranslator
class  DrawMeshT
 Mesh Drawing Class. More...
class  FBO
class  DisplayList
class  Texture
class  Texture1D
class  Texture2D
class  Texture3D
class  ProgramBase
class  GLPrimitive
class  GLSphere
class  GLCone
class  GLCylinder
class  GLPartialDisk
class  GLDisk
struct  GLStateContext
class  GLState
class  GLTrackball
struct  RenderObject
 Interface class between scenegraph and renderer. More...
class  IRenderer
class  ShaderCache
 Cache for shaders. More...
struct  ShaderGenDesc
class  ShaderGenerator
class  ShaderProgGenerator
struct  VertexElement
 Description of one vertex element. More...
class  VertexDeclaration
 Class to define the layout of a vertex element. More...
class  GlutExaminer
class  GlutViewer
class  BezierCurveT
class  DualQuaternionT
 DualQuaternion class for representing rigid motions in 3d. More...
class  GLMatrixT
 4x4 matrix implementing OpenGL commands. More...
class  Matrix4x4T
class  QuaternionT
class  QtColorTranslator
class  QtLasso
class  ColorCoder
 Class for generating nice colors for doubles. More...
class  ColorGenerator
class  HaltonColors
 Implementation of halton colors Provides deterministic pseudo-random low-discrepancy colors with a uniform distribution over a visually pleasing subset of HSL space, independent of the number of colors required. Simply instantiate and use get_next_color(). More...
struct  HeapInterfaceT
class  HeapT
class  Noncopyable
class  NumLimitsT
class  Progress
class  StopWatch
class  Tracing
class  TimedTracing
class  BSplineCurveT
class  BSplineSurfaceT
class  KnotvectorT
class  PolyLineT

Typedefs

typedef DualQuaternionT< float > DualQuaternionf
typedef DualQuaternionT< double > DualQuaterniond
typedef GLMatrixT< float > GLMatrixf
 typedef
typedef GLMatrixT< double > GLMatrixd
 typedef
typedef Matrix4x4T< float > Matrix4x4f
 typedef
typedef Matrix4x4T< double > Matrix4x4d
 typedef
typedef QuaternionT< float > Quaternionf
typedef QuaternionT< double > Quaterniond
typedef VectorT< signed char, 1 > Vec1c
typedef VectorT< unsigned char, 1 > Vec1uc
typedef VectorT< signed short
int, 1 > 
Vec1s
typedef VectorT< unsigned
short int, 1 > 
Vec1us
typedef VectorT< signed int, 1 > Vec1i
typedef VectorT< unsigned int, 1 > Vec1ui
typedef VectorT< float, 1 > Vec1f
typedef VectorT< double, 1 > Vec1d
typedef VectorT< signed char, 2 > Vec2c
typedef VectorT< unsigned char, 2 > Vec2uc
typedef VectorT< signed short
int, 2 > 
Vec2s
typedef VectorT< unsigned
short int, 2 > 
Vec2us
typedef VectorT< signed int, 2 > Vec2i
typedef VectorT< unsigned int, 2 > Vec2ui
typedef VectorT< float, 2 > Vec2f
typedef VectorT< double, 2 > Vec2d
typedef VectorT< signed char, 3 > Vec3c
typedef VectorT< unsigned char, 3 > Vec3uc
typedef VectorT< signed short
int, 3 > 
Vec3s
typedef VectorT< unsigned
short int, 3 > 
Vec3us
typedef VectorT< signed int, 3 > Vec3i
typedef VectorT< unsigned int, 3 > Vec3ui
typedef VectorT< float, 3 > Vec3f
typedef VectorT< double, 3 > Vec3d
typedef VectorT< bool, 3 > Vec3b
typedef VectorT< signed char, 4 > Vec4c
typedef VectorT< unsigned char, 4 > Vec4uc
typedef VectorT< signed short
int, 4 > 
Vec4s
typedef VectorT< unsigned
short int, 4 > 
Vec4us
typedef VectorT< signed int, 4 > Vec4i
typedef VectorT< unsigned int, 4 > Vec4ui
typedef VectorT< float, 4 > Vec4f
typedef VectorT< double, 4 > Vec4d
typedef VectorT< signed char, 6 > Vec6c
typedef VectorT< unsigned char, 6 > Vec6uc
typedef VectorT< signed short
int, 6 > 
Vec6s
typedef VectorT< unsigned
short int, 6 > 
Vec6us
typedef VectorT< signed int, 6 > Vec6i
typedef VectorT< unsigned int, 6 > Vec6ui
typedef VectorT< float, 6 > Vec6f
typedef VectorT< double, 6 > Vec6d
typedef ACG::KnotvectorT< double > Knotvector

Enumerations

enum  ShaderGenLightType { SG_LIGHT_DIRECTIONAL = 0, SG_LIGHT_POINT, SG_LIGHT_SPOT, SG_LIGHT_FORCE_DWORD = 0xFFFFFFFF }
enum  ShaderGenShadeMode {
  SG_SHADE_UNLIT = 0, SG_SHADE_FLAT, SG_SHADE_GOURAUD, SG_SHADE_PHONG,
  SG_SHADE_FORCE_DWORD = 0xFFFFFFFF
}
enum  VERTEX_USAGE {
  VERTEX_USAGE_POSITION = 0, VERTEX_USAGE_NORMAL, VERTEX_USAGE_TEXCOORD, VERTEX_USAGE_COLOR,
  VERTEX_USAGE_BLENDWEIGHTS, VERTEX_USAGE_BLENDINDICES, VERTEX_USAGE_SHADER_INPUT, VERTEX_USAGE_FORCE_DWORD = 0xFFFFFFFF
}
 -— input name in vertex shader ----— More...
enum  MultiplyFrom { MULT_FROM_RIGHT, MULT_FROM_LEFT }

Functions

int intNextPowerOfTwo (int x)
void glVertex (const Vec2i &_v)
 Wrapper: glVertex for Vec2i.
void glTexCoord (const Vec2f &_t)
 Wrapper: glTexCoord for Vec2f.
void glNormal (const Vec3f &_n)
 Wrapper: glNormal for Vec3f.
void glColor (const Vec3f &_v)
 Wrapper: glColor for Vec3f.
bool checkExtensionSupported (std::string _extension)
bool openGLVersion (const int _major, const int _minor)
void glCheckErrors ()
void glText (const Vec2i &_pos, const std::string &_text, void *_font=GLUT_BITMAP_8_BY_13)
 Text output in OpenGL, given 2D text position.
void stipple_alpha (float _alpha)
template<typename Scalar >
bool checkEpsilon (Scalar x)
template<>
bool checkEpsilon (float x)
template<typename Scalar >
std::ostream & operator<< (std::ostream &os, const Matrix4x4T< Scalar > &m)
 output matrix to ostream os
template<typename Scalar >
std::istream & operator>> (std::istream &is, Matrix4x4T< Scalar > &m)
 read the space-separated components of a vector from a stream */
QString getOpenFileName (QWidget *_parent, const QString &_caption, const QString &_filter, const QString &_start)
QString getOpenMeshName (QWidget *_parent, const QString &_caption, const QString &_start)
QStringList getOpenFileNames (QWidget *_parent, const QString &_caption, const QString &_filter, const QString &_start)
QStringList getOpenMeshNames (QWidget *_parent, const QString &_caption, const QString &_start)
QString getSaveFileName (QWidget *_parent, const QString &_caption, const QString &_filter, bool _askOW, const QString &_start)
QString getSaveMeshName (QWidget *_parent, const QString &_caption, bool _askOW, const QString &_start)
template<typename Scalar >
std::ostream & operator<< (std::ostream &_stream, const KnotvectorT< Scalar > &_knotvector)
template<typename Scalar >
std::istream & operator>> (std::istream &_is, KnotvectorT< Scalar > &_knotvector)

Variables

const GLubyte stippleMask [17][128]

Detailed Description

Namespace providing different geometric functions concerning angles.

Typedef Documentation

typedef VectorT<signed char,1> ACG::Vec1c

1-byte signed vector

Definition at line 74 of file VectorT.hh.

typedef VectorT<double,1> ACG::Vec1d

1-double vector

Definition at line 88 of file VectorT.hh.

typedef VectorT<float,1> ACG::Vec1f

1-float vector

Definition at line 86 of file VectorT.hh.

typedef VectorT<signed int,1> ACG::Vec1i

1-int signed vector

Definition at line 82 of file VectorT.hh.

typedef VectorT<signed short int,1> ACG::Vec1s

1-short signed vector

Definition at line 78 of file VectorT.hh.

typedef VectorT<unsigned char,1> ACG::Vec1uc

1-byte unsigned vector

Definition at line 76 of file VectorT.hh.

typedef VectorT<unsigned int,1> ACG::Vec1ui

1-int unsigned vector

Definition at line 84 of file VectorT.hh.

typedef VectorT<unsigned short int,1> ACG::Vec1us

1-short unsigned vector

Definition at line 80 of file VectorT.hh.

typedef VectorT<signed char,2> ACG::Vec2c

2-byte signed vector

Definition at line 91 of file VectorT.hh.

typedef VectorT<double,2> ACG::Vec2d

2-double vector

Definition at line 105 of file VectorT.hh.

typedef VectorT<float,2> ACG::Vec2f

2-float vector

Definition at line 103 of file VectorT.hh.

typedef VectorT<signed int,2> ACG::Vec2i

2-int signed vector

Definition at line 99 of file VectorT.hh.

typedef VectorT<signed short int,2> ACG::Vec2s

2-short signed vector

Definition at line 95 of file VectorT.hh.

typedef VectorT<unsigned char,2> ACG::Vec2uc

2-byte unsigned vector

Definition at line 93 of file VectorT.hh.

typedef VectorT<unsigned int,2> ACG::Vec2ui

2-int unsigned vector

Definition at line 101 of file VectorT.hh.

typedef VectorT<unsigned short int,2> ACG::Vec2us

2-short unsigned vector

Definition at line 97 of file VectorT.hh.

typedef VectorT<bool,3> ACG::Vec3b

3-bool vector

Definition at line 124 of file VectorT.hh.

typedef VectorT<signed char,3> ACG::Vec3c

3-byte signed vector

Definition at line 108 of file VectorT.hh.

typedef VectorT<double,3> ACG::Vec3d

3-double vector

Definition at line 122 of file VectorT.hh.

typedef VectorT<float,3> ACG::Vec3f

3-float vector

Definition at line 120 of file VectorT.hh.

typedef VectorT<signed int,3> ACG::Vec3i

3-int signed vector

Definition at line 116 of file VectorT.hh.

typedef VectorT<signed short int,3> ACG::Vec3s

3-short signed vector

Definition at line 112 of file VectorT.hh.

typedef VectorT<unsigned char,3> ACG::Vec3uc

3-byte unsigned vector

Definition at line 110 of file VectorT.hh.

typedef VectorT<unsigned int,3> ACG::Vec3ui

3-int unsigned vector

Definition at line 118 of file VectorT.hh.

typedef VectorT<unsigned short int,3> ACG::Vec3us

3-short unsigned vector

Definition at line 114 of file VectorT.hh.

typedef VectorT<signed char,4> ACG::Vec4c

4-byte signed vector

Definition at line 127 of file VectorT.hh.

typedef VectorT<double,4> ACG::Vec4d

4-double vector

Definition at line 141 of file VectorT.hh.

typedef VectorT<float,4> ACG::Vec4f

4-float vector

Definition at line 139 of file VectorT.hh.

typedef VectorT<signed int,4> ACG::Vec4i

4-int signed vector

Definition at line 135 of file VectorT.hh.

typedef VectorT<signed short int,4> ACG::Vec4s

4-short signed vector

Definition at line 131 of file VectorT.hh.

typedef VectorT<unsigned char,4> ACG::Vec4uc

4-byte unsigned vector

Definition at line 129 of file VectorT.hh.

typedef VectorT<unsigned int,4> ACG::Vec4ui

4-int unsigned vector

Definition at line 137 of file VectorT.hh.

typedef VectorT<unsigned short int,4> ACG::Vec4us

4-short unsigned vector

Definition at line 133 of file VectorT.hh.

typedef VectorT<signed char,6> ACG::Vec6c

6-byte signed vector

Definition at line 144 of file VectorT.hh.

typedef VectorT<double,6> ACG::Vec6d

6-double vector

Definition at line 158 of file VectorT.hh.

typedef VectorT<float,6> ACG::Vec6f

6-float vector

Definition at line 156 of file VectorT.hh.

typedef VectorT<signed int,6> ACG::Vec6i

6-int signed vector

Definition at line 152 of file VectorT.hh.

typedef VectorT<signed short int,6> ACG::Vec6s

6-short signed vector

Definition at line 148 of file VectorT.hh.

typedef VectorT<unsigned char,6> ACG::Vec6uc

6-byte unsigned vector

Definition at line 146 of file VectorT.hh.

typedef VectorT<unsigned int,6> ACG::Vec6ui

6-int unsigned vector

Definition at line 154 of file VectorT.hh.

typedef VectorT<unsigned short int,6> ACG::Vec6us

6-short unsigned vector

Definition at line 150 of file VectorT.hh.

Enumeration Type Documentation

enum to chose whether to multiply new matrices from right (default) or left to the current matrix

Definition at line 72 of file GLMatrixT.hh.

-— input name in vertex shader ----—

Enumerator:
VERTEX_USAGE_POSITION 

"inPosition"

VERTEX_USAGE_NORMAL 

"inNormal"

VERTEX_USAGE_TEXCOORD 

"inTexCoord"

VERTEX_USAGE_COLOR 

"inColor"

VERTEX_USAGE_BLENDWEIGHTS 

"inBlendWeights"

VERTEX_USAGE_BLENDINDICES 

"inBlendIndices"

VERTEX_USAGE_SHADER_INPUT 

defined by user via VertexElement::shaderInputName_

Definition at line 60 of file VertexDeclaration.hh.

Function Documentation

bool ACG::checkExtensionSupported ( std::string  _extension)
inline

Check if the extension given by a std::string is supported by the current OpenGL extension

Definition at line 260 of file gl.hh.

void ACG::glCheckErrors ( )
inline

Nice wrapper that outputs all current OpenGL errors to std::cerr. If no error is present nothing is printed.

Definition at line 302 of file gl.hh.

void ACG::glColor ( const Vec3f _v)
inline

Wrapper: glColor for Vec3f.

Wrapper: glColor for Vec4uc.

Wrapper: glColor for Vec4f.

Wrapper: glColor for Vec3uc.

Definition at line 143 of file gl.hh.

void ACG::glNormal ( const Vec3f _n)
inline

Wrapper: glNormal for Vec3f.

Wrapper: glNormal for Vec3d.

Definition at line 134 of file gl.hh.

void ACG::glTexCoord ( const Vec2f &  _t)
inline

Wrapper: glTexCoord for Vec2f.

Wrapper: glTexCoord for Vec4d.

Wrapper: glTexCoord for Vec4f.

Wrapper: glTexCoord for Vec3d.

Wrapper: glTexCoord for Vec3f.

Wrapper: glTexCoord for Vec2d.

Definition at line 115 of file gl.hh.

void ACG::glText ( const Vec3f _pos,
const std::string &  _text,
void *  _font 
)

Text output in OpenGL, given 2D text position.

Text output in OpenGL, given 3D text position.

Definition at line 58 of file gltext.cc.

void ACG::glVertex ( const Vec2i &  _v)
inline

Wrapper: glVertex for Vec2i.

Wrapper: glVertex for Vec4d.

Wrapper: glVertex for Vec4f.

Wrapper: glVertex for Vec3d.

Wrapper: glVertex for Vec3f.

Wrapper: glVertex for Vec2d.

Wrapper: glVertex for Vec2f.

Definition at line 94 of file gl.hh.

bool ACG::openGLVersion ( const int  _major,
const int  _minor 
)
inline

Check if OpenGL Version is greater or equal than the given values

Definition at line 268 of file gl.hh.