81 void CalcVertexNormal(
int aIndex, std::list< FACET* >& aFacetList,
float aCreaseAngle );
106 bool GetData( std::vector< WRLVEC3F >& aVertexList, std::vector< WRLVEC3F >& aNormalsList,
107 std::vector< SGCOLOR >& aColorsList,
WRL1_ORDER aVertexOrder );
118 void CollectVertices( std::vector< std::list< FACET* > >& aFacetList );
140 float aCreaseLimit = 0.74317,
bool isVRML2 =
false );
std::vector< SGCOLOR > colors
std::vector< WRLVEC3F > vnweight
bool GetFaceNormal(WRLVEC3F &aNorm)
Retrieve the normal for this facet.
void Renormalize(float aMaxValue)
std::vector< WRLVEC3F > vertices
bool GetWeightedNormal(int aIndex, WRLVEC3F &aNorm)
Retrieve the angle weighted normal for the given vertex index.
float CalcFaceNormal()
Calculate the normal to the facet assuming a CCW orientation and perform the calculation of the angle...
void CollectVertices(std::vector< std::list< FACET * > > &aFacetList)
Add a pointer to this object at each position within aFacetList referenced by the internal vertex ind...
void AddVertex(WRLVEC3F &aVertex, int aIndex)
Add the vertex and its associated index to the internal list of polygon vertices.
std::vector< WRLVEC3F > norms
std::vector< int > indices
void CalcVertexNormal(int aIndex, std::list< FACET * > &aFacetList, float aCreaseAngle)
Calculate the weighted normal for the given vertex.
void AddColor(const SGCOLOR &aColor)
Add the given RGB color to the internal list.
bool GetData(std::vector< WRLVEC3F > &aVertexList, std::vector< WRLVEC3F > &aNormalsList, std::vector< SGCOLOR > &aColorsList, WRL1_ORDER aVertexOrder)
Package the internal data as triangles with corresponding per-vertex normals.
The base class of all Scene Graph nodes.
An abstract shape on 2D plane.
SGNODE * CalcShape(SGNODE *aParent, SGNODE *aColor, WRL1_ORDER aVertexOrder, float aCreaseLimit=0.74317, bool isVRML2=false)
std::list< FACET * > facets
collects header files for all SG* wrappers and the API
declares some compound types used for VRML