Linderdaum Engine: clGeomServ Class Reference
Updated: Sun Feb 5 2012 22:59:50
clGeomServ Class Reference

#include <GeomServ.h>

List of all members.

Static Public Member Functions

static void SplitTriangles (size_t NumTriangles, int Indices[], const LVector3 Vertices[], std::vector< int > *OutIndices, std::vector< LVector3 > *OutVertices)
static clVertexAttribsCreateTriangle2D (float vX, float vY, float dX, float dY, float Z)
static clVertexAttribsCreateRect2D (float X1, float Y1, float X2, float Y2, float Z, bool FlipTexCoordsVertical, int Subdivide)
static clVertexAttribsCreateBevelRect2D (float X1, float Y1, float X2, float Y2, float Z, float Radius)
static void AddAxisAlignedBox (clVertexAttribs *VA, const LVector3 &Min, const LVector3 &Max, bool Generate3DCoords)
 Add a new textured cube to vertex array (to avoid redundant scene items)
static void AddTube (clVertexAttribs *VA, int Segments, LVector3 Center, LVector3 Direction, float Radius, bool Cone)
static void AddPlane (clVertexAttribs *VA, float SizeX, float SizeY, int SegmentsX, int SegmentsY, float Z)
static void AddSphere (clVertexAttribs *VA, float Radius, LVector3 Center, int TessLevel)
static clVertexAttribsCreateTube (int Segments, LVector3 Base, LVector3 Direction, float Radius, bool Cone)
static clVertexAttribsCreateAxisAlignedBox (const LVector3 &Min, const LVector3 &Max, bool Generate3DCoords)
 Generate AABB using AddAxisAlignedBox()
static clVertexAttribsCreateSkyDome (float Radius, float dTheta, float dPhi, float VCoef, LVector3 Center)
static clVertexAttribsCreatePlane (float SizeX, float SizeY, int SegmentsX, int SegmentsY, float Z)
static clVertexAttribsCreateSphere (float Radius, LVector3 Center, int TessLevel)
static clVertexAttribsCreateTetrahedron (float Radius, LVector3 Center)
static clVertexAttribsCreateIcosahedron (float Radius, LVector3 Center)
static clVertexAttribsCreateGear (float BaseRadius, float RootRadius, float OuterRadius, float Width, int NumberOfTeeth, int InvoluteSteps)
 build an involute gear
static clVertexAttribsCreateISOGear (float Module, int NumberOfTeeth, float ProfileShift, float Width)
static clVertexAttribsCreateSkeletonPose (clJointsSet *Joints, float BaseBoneRadius, float JointRadius)
 Visual representation of a single pose.

Member Function Documentation

void clGeomServ::AddAxisAlignedBox ( clVertexAttribs VA,
const LVector3 Min,
const LVector3 Max,
bool  Generate3DCoords 
) [static]

Add a new textured cube to vertex array (to avoid redundant scene items)

void clGeomServ::AddPlane ( clVertexAttribs VA,
float  SizeX,
float  SizeY,
int  SegmentsX,
int  SegmentsY,
float  Z 
) [static]
void clGeomServ::AddSphere ( clVertexAttribs VA,
float  Radius,
LVector3  Center,
int  TessLevel 
) [static]
void clGeomServ::AddTube ( clVertexAttribs VA,
int  Segments,
LVector3  Center,
LVector3  Direction,
float  Radius,
bool  Cone 
) [static]
clVertexAttribs * clGeomServ::CreateAxisAlignedBox ( const LVector3 Min,
const LVector3 Max,
bool  Generate3DCoords 
) [static]

Generate AABB using AddAxisAlignedBox()

clVertexAttribs * clGeomServ::CreateBevelRect2D ( float  X1,
float  Y1,
float  X2,
float  Y2,
float  Z,
float  Radius 
) [static]
clVertexAttribs * clGeomServ::CreateGear ( float  BaseRadius,
float  RootRadius,
float  OuterRadius,
float  Width,
int  NumberOfTeeth,
int  InvoluteSteps 
) [static]

build an involute gear

clVertexAttribs * clGeomServ::CreateIcosahedron ( float  Radius,
LVector3  Center 
) [static]
clVertexAttribs * clGeomServ::CreateISOGear ( float  Module,
int  NumberOfTeeth,
float  ProfileShift,
float  Width 
) [static]
clVertexAttribs * clGeomServ::CreatePlane ( float  SizeX,
float  SizeY,
int  SegmentsX,
int  SegmentsY,
float  Z 
) [static]
clVertexAttribs * clGeomServ::CreateRect2D ( float  X1,
float  Y1,
float  X2,
float  Y2,
float  Z,
bool  FlipTexCoordsVertical,
int  Subdivide 
) [static]
clVertexAttribs * clGeomServ::CreateSkeletonPose ( clJointsSet Joints,
float  BaseBoneRadius,
float  JointRadius 
) [static]

Visual representation of a single pose.

clVertexAttribs * clGeomServ::CreateSkyDome ( float  Radius,
float  dTheta,
float  dPhi,
float  VCoef,
LVector3  Center 
) [static]
clVertexAttribs * clGeomServ::CreateSphere ( float  Radius,
LVector3  Center,
int  TessLevel 
) [static]
clVertexAttribs * clGeomServ::CreateTetrahedron ( float  Radius,
LVector3  Center 
) [static]
clVertexAttribs * clGeomServ::CreateTriangle2D ( float  vX,
float  vY,
float  dX,
float  dY,
float  Z 
) [static]
clVertexAttribs * clGeomServ::CreateTube ( int  Segments,
LVector3  Base,
LVector3  Direction,
float  Radius,
bool  Cone 
) [static]

Build a cylinder

Parameters:
Segments- number of subdivision of the base circle
Base- the "origin" vector
Direction- direction (and length) of the tube
Cone- if this param is true, then the upper circle is collapsed to point
void clGeomServ::SplitTriangles ( size_t  NumTriangles,
int  Indices[],
const LVector3  Vertices[],
std::vector< int > *  OutIndices,
std::vector< LVector3 > *  OutVertices 
) [static]

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