27 #include "../scene_graph/IndexedFaceSet.h"
28 #include "../scene_graph/NodeTransform.h"
29 #include "../scene_graph/SceneVisitor.h"
31 #include "../system/FreestyleConfig.h"
32 #include "../system/RenderMonitor.h"
40 _current_wshape =
NULL;
41 _current_frs_material =
NULL;
42 _current_matrix =
NULL;
49 for (vector<Matrix44r *>::iterator it = _matrices_stack.begin(); it != _matrices_stack.end();
53 _matrices_stack.clear();
74 return _current_wshape;
79 return _current_frs_material;
84 return _current_matrix;
94 _current_wshape = wshape;
99 _current_frs_material = mat;
103 inline void setCurrentMatrix(
Matrix44r *matrix)
105 _current_matrix = matrix;
121 void buildTriangleStrip(
const float *vertices,
123 vector<FrsMaterial> &iMaterials,
124 const float *texCoords,
126 const unsigned *vindices,
127 const unsigned *nindices,
128 const unsigned *mindices,
129 const unsigned *tindices,
130 const unsigned nvertices);
132 void buildTriangleFan(
const float *vertices,
134 vector<FrsMaterial> &iMaterials,
135 const float *texCoords,
137 const unsigned *vindices,
138 const unsigned *nindices,
139 const unsigned *mindices,
140 const unsigned *tindices,
141 const unsigned nvertices);
143 void buildTriangles(
const float *vertices,
145 vector<FrsMaterial> &iMaterials,
146 const float *texCoords,
148 const unsigned *vindices,
149 const unsigned *nindices,
150 const unsigned *mindices,
151 const unsigned *tindices,
152 const unsigned nvertices);
154 void transformVertices(
const float *vertices,
159 void transformNormals(
const float *
normals,
168 vector<Matrix44r *> _matrices_stack;
170 #ifdef WITH_CXX_GUARDEDALLOC
171 MEM_CXX_CLASS_ALLOC_FUNCS(
"Freestyle:WingedEdgeBuilder")
Classes to define a Winged Edge data structure.
SIMD_FORCE_INLINE btVector3 transform(const btVector3 &point) const
unsigned char FaceEdgeMark
void setCurrentFrsMaterial(FrsMaterial *mat)
VISIT_DECL(IndexedFaceSet)
virtual void buildWVertices(WShape &shape, const float *vertices, unsigned vsize)
void setCurrentWShape(WShape *wshape)
Matrix44r * getCurrentMatrix()
RenderMonitor * _pRenderMonitor
VISIT_DECL(NodeTransform)
virtual void visitNodeTransformAfter(NodeTransform &)
WShape * getCurrentWShape()
virtual ~WingedEdgeBuilder()
void setRenderMonitor(RenderMonitor *iRenderMonitor)
virtual bool buildWShape(WShape &shape, IndexedFaceSet &ifs)
FrsMaterial * getCurrentFrsMaterial()
WingedEdge * getWingedEdge()
static float normals[][3]