|
Blender
V2.93
|
#include <ViewEdgeXBuilder.h>
Public Member Functions | |
| ViewEdgeXBuilder () | |
| virtual | ~ViewEdgeXBuilder () |
| virtual void | BuildViewEdges (WXShape *iWShape, ViewShape *oVShape, std::vector< ViewEdge * > &ioVEdges, std::vector< ViewVertex * > &ioVVertices, std::vector< FEdge * > &ioFEdges, std::vector< SVertex * > &ioSVertices) |
| ViewEdge * | BuildSmoothViewEdge (const OWXFaceLayer &iFaceLayer) |
| ViewEdge * | BuildSharpViewEdge (const OWXEdge &iWEdge) |
| int | currentViewId () const |
| int | currentFId () const |
| int | currentSVertexId () const |
| void | setCurrentViewId (int id) |
| void | setCurrentFId (int id) |
| void | setCurrentSVertexId (int id) |
Protected Member Functions | |
| virtual void | Init (ViewShape *oVShape) |
| bool | stopSmoothViewEdge (WXFaceLayer *iFaceLayer) |
| OWXFaceLayer | FindNextFaceLayer (const OWXFaceLayer &iFaceLayer) |
| OWXFaceLayer | FindPreviousFaceLayer (const OWXFaceLayer &iFaceLayer) |
| FEdge * | BuildSmoothFEdge (FEdge *feprevious, const OWXFaceLayer &ifl) |
| bool | stopSharpViewEdge (WXEdge *iEdge) |
| int | retrieveFaceMarks (WXEdge *iEdge) |
| OWXEdge | FindNextWEdge (const OWXEdge &iEdge) |
| OWXEdge | FindPreviousWEdge (const OWXEdge &iEdge) |
| FEdge * | BuildSharpFEdge (FEdge *feprevious, const OWXEdge &iwe) |
| SVertex * | MakeSVertex (Vec3r &iPoint) |
| SVertex * | MakeSVertex (Vec3r &iPoint, bool shared) |
| ViewVertex * | MakeViewVertex (SVertex *iSVertex) |
Protected Attributes | |
| int | _currentViewId |
| int | _currentFId |
| int | _currentSVertexId |
| SVertexMap | _SVertexMap |
| SShape * | _pCurrentSShape |
| ViewShape * | _pCurrentVShape |
Definition at line 175 of file ViewEdgeXBuilder.h.
|
inline |
Definition at line 182 of file ViewEdgeXBuilder.h.
|
inlinevirtual |
Definition at line 189 of file ViewEdgeXBuilder.h.
|
protected |
Definition at line 683 of file ViewEdgeXBuilder.cpp.
References Freestyle::SVertex::AddFEdge(), Freestyle::SVertex::AddNormal(), Freestyle::Nature::BORDER, Freestyle::OWXEdge::e, Freestyle::WFace::frs_materialIndex(), Freestyle::WEdge::GetaFace(), Freestyle::WEdge::GetaVertex(), Freestyle::WEdge::GetbFace(), Freestyle::WEdge::GetbVertex(), Freestyle::WFace::GetMark(), Freestyle::WFace::GetNormal(), Freestyle::WVertex::GetVertex(), Freestyle::WXEdge::nature(), Freestyle::OWXEdge::order, Freestyle::FEdgeSharp::setaFaceMark(), Freestyle::FEdgeSharp::setaFrsMaterialIndex(), Freestyle::FEdgeSharp::setbFaceMark(), Freestyle::FEdgeSharp::setbFrsMaterialIndex(), Freestyle::FEdge::setId(), Freestyle::FEdge::setNature(), Freestyle::FEdge::setNextEdge(), Freestyle::FEdgeSharp::setNormalA(), Freestyle::FEdgeSharp::setNormalB(), Freestyle::FEdge::setPreviousEdge(), and Freestyle::WEdge::userdata.
Makes a sharp viewedge
Definition at line 221 of file ViewEdgeXBuilder.cpp.
References Freestyle::OWXEdge::e, Freestyle::WXEdge::nature(), Freestyle::ViewEdge::setA(), Freestyle::ViewEdge::setB(), Freestyle::ViewEdge::setFEdgeA(), Freestyle::ViewEdge::setFEdgeB(), Freestyle::ViewEdge::setId(), Freestyle::ViewEdge::setNature(), Freestyle::FEdge::setNextEdge(), Freestyle::FEdge::setPreviousEdge(), Freestyle::FEdge::setViewEdge(), size(), Freestyle::WEdge::userdata, Freestyle::FEdge::vertexA(), and Freestyle::FEdge::vertexB().
|
protected |
Definition at line 466 of file ViewEdgeXBuilder.cpp.
References A, A1, A2, Freestyle::SVertex::AddFEdge(), Freestyle::SVertex::AddNormal(), B, Freestyle::B1(), Freestyle::B2(), Freestyle::WXVertex::curvatures(), Freestyle::OWXFaceLayer::fl, Freestyle::WFace::frs_materialIndex(), Freestyle::WOEdge::GetaVertex(), Freestyle::WOEdge::GetbVertex(), Freestyle::WXFaceLayer::getFace(), Freestyle::WFace::GetMark(), Freestyle::WXFaceLayer::getSmoothEdge(), Freestyle::WVertex::GetVertex(), Freestyle::WFace::GetVertexNormal(), Freestyle::WXFaceLayer::nature(), normal, Freestyle::VecMat::Vec< T, N >::normalize(), Freestyle::OWXFaceLayer::order, Freestyle::SVertex::point3D(), Freestyle::SVertex::setCurvatureInfo(), Freestyle::FEdgeSmooth::setFace(), Freestyle::FEdgeSmooth::setFaceMark(), Freestyle::FEdgeSmooth::setFrsMaterialIndex(), Freestyle::FEdge::setId(), Freestyle::FEdge::setNature(), Freestyle::FEdge::setNextEdge(), Freestyle::FEdgeSmooth::setNormal(), Freestyle::FEdge::setPreviousEdge(), Freestyle::WXSmoothEdge::ta(), Freestyle::WXSmoothEdge::tb(), Freestyle::WXFaceLayer::userdata, Freestyle::FEdge::vertexB(), Freestyle::WXSmoothEdge::woea(), and Freestyle::WXSmoothEdge::woeb().
| ViewEdge * Freestyle::ViewEdgeXBuilder::BuildSmoothViewEdge | ( | const OWXFaceLayer & | iFaceLayer | ) |
Builds a smooth view edge, starting the face iFace.
Definition at line 136 of file ViewEdgeXBuilder.cpp.
References Freestyle::OWXFaceLayer::fl, Freestyle::WXFaceLayer::nature(), Freestyle::Nature::RIDGE, Freestyle::ViewEdge::setA(), Freestyle::ViewEdge::setB(), Freestyle::ViewEdge::setFEdgeA(), Freestyle::ViewEdge::setFEdgeB(), Freestyle::ViewEdge::setId(), Freestyle::ViewEdge::setNature(), Freestyle::FEdge::setNextEdge(), Freestyle::FEdge::setPreviousEdge(), Freestyle::FEdge::setViewEdge(), size(), Freestyle::WXFaceLayer::userdata, Freestyle::FEdge::vertexA(), and Freestyle::FEdge::vertexB().
|
virtual |
Builds a view shape from a WXShape in which the feature edges are flagged Builds chains of feature edges (so ViewEdges) from a WXShape iWShape The Winged Edge structure in which all silhouette edges and vertices are flagged. oViewShape The Silhouette Shape in which the chains must be added. ioVEdges The list of new ViewEdges. ioVVertices THe new ViewVertices ioFEdges A list in which all new FEdges are added ioSVertices A list of SVertex where all created SVertex are added.
Definition at line 55 of file ViewEdgeXBuilder.cpp.
References Freestyle::WShape::getEdgeList(), Freestyle::WShape::GetFaceList(), Freestyle::WXFace::getSmoothLayers(), Freestyle::WXEdge::nature(), Freestyle::Nature::NO_FEATURE, Freestyle::WXEdge::order(), and Freestyle::WShape::ResetUserData().
|
inline |
Definition at line 228 of file ViewEdgeXBuilder.h.
|
inline |
Definition at line 233 of file ViewEdgeXBuilder.h.
|
inline |
accessors
Definition at line 223 of file ViewEdgeXBuilder.h.
|
protected |
Definition at line 304 of file ViewEdgeXBuilder.cpp.
References ELEM, Freestyle::WVertex::faces_begin(), Freestyle::WVertex::faces_end(), Freestyle::OWXFaceLayer::fl, Freestyle::WOEdge::GetaVertex(), Freestyle::WFace::GetBordingFace(), Freestyle::WOEdge::GetbVertex(), Freestyle::WXFaceLayer::getFace(), Freestyle::WFace::GetMark(), Freestyle::WXFaceLayer::getSmoothEdge(), Freestyle::WXFace::hasSmoothEdges(), Freestyle::WVertex::isBoundary(), Freestyle::WXFaceLayer::nature(), Freestyle::OWXFaceLayer::order, Freestyle::WXFace::retrieveSmoothEdgesLayers(), Freestyle::WXSmoothEdge::ta(), Freestyle::WXSmoothEdge::tb(), Freestyle::WOEdge::twin(), Freestyle::WXSmoothEdge::woea(), and Freestyle::WXSmoothEdge::woeb().
Definition at line 589 of file ViewEdgeXBuilder.cpp.
References Freestyle::OWXEdge::e, Freestyle::WEdge::GetaVertex(), Freestyle::WEdge::GetbVertex(), Freestyle::WXEdge::nature(), Freestyle::Nature::NO_FEATURE, Freestyle::OWXEdge::order, and v.
|
protected |
Definition at line 385 of file ViewEdgeXBuilder.cpp.
References ELEM, Freestyle::WVertex::faces_begin(), Freestyle::WVertex::faces_end(), Freestyle::OWXFaceLayer::fl, Freestyle::WOEdge::GetaVertex(), Freestyle::WFace::GetBordingFace(), Freestyle::WOEdge::GetbVertex(), Freestyle::WXFaceLayer::getFace(), Freestyle::WFace::GetMark(), Freestyle::WXFaceLayer::getSmoothEdge(), Freestyle::WXFace::hasSmoothEdges(), Freestyle::WVertex::isBoundary(), Freestyle::WXFaceLayer::nature(), Freestyle::OWXFaceLayer::order, Freestyle::WXFace::retrieveSmoothEdgesLayers(), Freestyle::WXSmoothEdge::ta(), Freestyle::WXSmoothEdge::tb(), Freestyle::WOEdge::twin(), Freestyle::WXSmoothEdge::woea(), and Freestyle::WXSmoothEdge::woeb().
Definition at line 638 of file ViewEdgeXBuilder.cpp.
References Freestyle::OWXEdge::e, Freestyle::WEdge::GetaVertex(), Freestyle::WEdge::GetbVertex(), Freestyle::WXEdge::nature(), Freestyle::Nature::NO_FEATURE, Freestyle::OWXEdge::order, and v.
|
protectedvirtual |
Init the view edges building
Definition at line 34 of file ViewEdgeXBuilder.cpp.
References Freestyle::ViewShape::sshape().
Instantiate a SVertex
Definition at line 763 of file ViewEdgeXBuilder.cpp.
Instantiate a SVertex if it hasn't been already created
Definition at line 773 of file ViewEdgeXBuilder.cpp.
|
protected |
instantiate a ViewVertex from a SVertex, if it doesn't exist yet
Definition at line 794 of file ViewEdgeXBuilder.cpp.
References Freestyle::SVertex::viewvertex().
|
protected |
Definition at line 575 of file ViewEdgeXBuilder.cpp.
References Freestyle::WEdge::GetaFace(), Freestyle::WEdge::GetbFace(), Freestyle::WFace::GetMark(), and result.
|
inline |
Definition at line 244 of file ViewEdgeXBuilder.h.
References id.
|
inline |
Definition at line 249 of file ViewEdgeXBuilder.h.
References id.
|
inline |
|
protected |
checks whether a WEdge has already been processed or not
Definition at line 752 of file ViewEdgeXBuilder.cpp.
References Freestyle::WEdge::userdata.
|
protected |
checks whether a face has already been processed or not
Definition at line 564 of file ViewEdgeXBuilder.cpp.
References Freestyle::WXFaceLayer::userdata.
|
protected |
Definition at line 178 of file ViewEdgeXBuilder.h.
|
protected |
Definition at line 179 of file ViewEdgeXBuilder.h.
|
protected |
Definition at line 177 of file ViewEdgeXBuilder.h.
|
protected |
Definition at line 285 of file ViewEdgeXBuilder.h.
|
protected |
Definition at line 286 of file ViewEdgeXBuilder.h.
|
protected |
Definition at line 284 of file ViewEdgeXBuilder.h.