37 _FrsMaterial.setDiffuse(0, 0, 0, 1);
38 _overloadFrsMaterial =
false;
50 template<
class ViewEdgesIterator>
63 _FrsMaterial = iMaterial;
64 _overloadFrsMaterial =
true;
83 bool _overloadFrsMaterial;
85 MEM_CXX_CLASS_ALLOC_FUNCS(
"Freestyle:ViewMapTesselator")
100 MEM_CXX_CLASS_ALLOC_FUNCS(
"Freestyle:ViewMapTesselator2D")
115 MEM_CXX_CLASS_ALLOC_FUNCS(
"Freestyle:ViewMapTesselator3D")
123template<
class ViewEdgesIterator>
135 FEdge *nextFEdge, *currentEdge;
139 for (ViewEdgesIterator
c =
begin, cend = end;
c != cend;
c++) {
141 if ((*c)->qi() > 0) {
144 if (!((*c)->nature() & (_nature))) {
148 firstEdge = (*c)->fedgeA();
157 if (_overloadFrsMaterial) {
162 if (0 == (firstEdge)->nextEdge()) {
173 nextFEdge = firstEdge;
174 currentEdge = firstEdge;
178 currentEdge = nextFEdge;
180 }
while ((nextFEdge !=
nullptr) && (nextFEdge != firstEdge));
186 line->
setId((*c)->getId().getFirst());
Class to define the representation of 3D Line.
Read Guarded memory(de)allocation.
Class to represent a group node. This node can contains several children.
Class to build a shape node. It contains a Rep, which is the shape geometry.
Class to display an oriented line representation.
Classes to define a silhouette structure.
Class to define the representation of a vertex for displaying purpose.
Classes to define a View Map (ViewVertex, ViewEdge, etc.).
Classes to define a Winged Edge data structure.
ATTR_WARN_UNUSED_RESULT const BMVert * v
void AddVertex(const Vec3r &iVertex)
void setStyle(const LINES_STYLE iStyle)
virtual void ComputeBBox()
virtual void AddChild(Node *iChild)
virtual void AddRep(Rep *iRep)
void setFrsMaterial(const FrsMaterial &iMaterial)
void setFrsMaterial(const FrsMaterial &iMaterial)
virtual void AddVertexToLine(LineRep *iLine, SVertex *v)
virtual ~ViewMapTesselator2D()
virtual ~ViewMapTesselator3D()
virtual void AddVertexToLine(LineRep *iLine, SVertex *v)
Nature::EdgeNature nature()
void setFrsMaterial(const FrsMaterial &iMaterial)
const FrsMaterial & frs_material() const
void setNature(Nature::EdgeNature iNature)
virtual void AddVertexToLine(LineRep *iLine, SVertex *v)=0
NodeGroup * Tesselate(ViewMap *iViewMap)
virtual ~ViewMapTesselator()
static const EdgeNature BORDER
static const EdgeNature CREASE
static const EdgeNature SILHOUETTE