Developer Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
ACG::GLPrimitive Class Referenceabstract
Inheritance diagram for ACG::GLPrimitive:
ACG::GLBox ACG::GLCone ACG::GLLineBox ACG::GLPartialDisk ACG::GLSphere ACG::GLCylinder ACG::GLDisk

Public Types

enum  NormalOrientation { OUTSIDE, INSIDE }

Public Member Functions

void draw_primitive ()
void addToRenderer_primitive (class IRenderer *_renderer, struct RenderObject *_ro)
virtual int getNumTriangles ()=0
virtual int getNumLines ()
unsigned int getVBO ()
const VertexDeclarationgetVertexDecl () const

Protected Member Functions

virtual void updateVBO ()=0
void addTriangleToVBO (const ACG::Vec3f *_p, const ACG::Vec3f *_n, const ACG::Vec2f *_tex)
void addLineToVBO (const ACG::Vec3f *_p, const ACG::Vec3f *_n, const ACG::Vec2f *_tex)
void bindVBO ()
bool checkVBO ()
void unBindVBO ()

Protected Attributes

bool vboDataInvalid_
NormalOrientation normalOrientation_

Private Member Functions

void updateVBOData ()

Private Attributes

int numTris_
int numLines_
float * vboData_
int curTriPtr_
VertexDeclaration vertexDecl_
unsigned int vbo_

Detailed Description

Definition at line 78 of file GLPrimitives.hh.

The documentation for this class was generated from the following files: