Blender V5.0
Freestyle::ViewEdgeXBuilder Class Reference

#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)
ViewEdgeBuildSmoothViewEdge (const OWXFaceLayer &iFaceLayer)
ViewEdgeBuildSharpViewEdge (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)
FEdgeBuildSmoothFEdge (FEdge *feprevious, const OWXFaceLayer &ifl)
bool stopSharpViewEdge (WXEdge *iEdge)
int retrieveFaceMarks (WXEdge *iEdge)
OWXEdge FindNextWEdge (const OWXEdge &iEdge)
OWXEdge FindPreviousWEdge (const OWXEdge &iEdge)
FEdgeBuildSharpFEdge (FEdge *feprevious, const OWXEdge &iwe)
SVertexMakeSVertex (Vec3r &iPoint)
SVertexMakeSVertex (Vec3r &iPoint, bool shared)
ViewVertexMakeViewVertex (SVertex *iSVertex)

Protected Attributes

int _currentViewId
int _currentFId
int _currentSVertexId
SVertexMap _SVertexMap
SShape_pCurrentSShape
ViewShape_pCurrentVShape

Detailed Description

Definition at line 157 of file ViewEdgeXBuilder.h.

Constructor & Destructor Documentation

◆ ViewEdgeXBuilder()

Freestyle::ViewEdgeXBuilder::ViewEdgeXBuilder ( )
inline

Definition at line 164 of file ViewEdgeXBuilder.h.

References _currentFId, _currentSVertexId, and _currentViewId.

◆ ~ViewEdgeXBuilder()

virtual Freestyle::ViewEdgeXBuilder::~ViewEdgeXBuilder ( )
inlinevirtual

Definition at line 171 of file ViewEdgeXBuilder.h.

Member Function Documentation

◆ BuildSharpFEdge()

◆ BuildSharpViewEdge()

◆ BuildSmoothFEdge()

◆ BuildSmoothViewEdge()

◆ BuildViewEdges()

void Freestyle::ViewEdgeXBuilder::BuildViewEdges ( WXShape * iWShape,
ViewShape * oVShape,
std::vector< ViewEdge * > & ioVEdges,
std::vector< ViewVertex * > & ioVVertices,
std::vector< FEdge * > & ioFEdges,
std::vector< SVertex * > & ioSVertices )
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 45 of file ViewEdgeXBuilder.cpp.

References _pCurrentSShape, _pCurrentVShape, b, BuildSharpViewEdge(), BuildSmoothViewEdge(), Freestyle::WShape::getEdgeList(), Freestyle::WShape::GetFaceList(), Freestyle::WXFace::getSmoothLayers(), Init(), Freestyle::WXEdge::nature(), Freestyle::Nature::NO_FEATURE, Freestyle::WXEdge::order(), Freestyle::WShape::ResetUserData(), stopSharpViewEdge(), and stopSmoothViewEdge().

◆ currentFId()

int Freestyle::ViewEdgeXBuilder::currentFId ( ) const
inline

Definition at line 208 of file ViewEdgeXBuilder.h.

References _currentFId.

◆ currentSVertexId()

int Freestyle::ViewEdgeXBuilder::currentSVertexId ( ) const
inline

Definition at line 213 of file ViewEdgeXBuilder.h.

References _currentSVertexId.

◆ currentViewId()

int Freestyle::ViewEdgeXBuilder::currentViewId ( ) const
inline

accessors

Definition at line 203 of file ViewEdgeXBuilder.h.

References _currentViewId.

◆ FindNextFaceLayer()

◆ FindNextWEdge()

◆ FindPreviousFaceLayer()

◆ FindPreviousWEdge()

◆ Init()

void Freestyle::ViewEdgeXBuilder::Init ( ViewShape * oVShape)
protectedvirtual

Init the view edges building

Definition at line 24 of file ViewEdgeXBuilder.cpp.

References _pCurrentSShape, _pCurrentVShape, _SVertexMap, and Freestyle::ViewShape::sshape().

Referenced by BuildViewEdges().

◆ MakeSVertex() [1/2]

SVertex * Freestyle::ViewEdgeXBuilder::MakeSVertex ( Vec3r & iPoint)
protected

◆ MakeSVertex() [2/2]

SVertex * Freestyle::ViewEdgeXBuilder::MakeSVertex ( Vec3r & iPoint,
bool shared )
protected

Instantiate a SVertex if it hasn't been already created

Definition at line 768 of file ViewEdgeXBuilder.cpp.

References _SVertexMap, MakeSVertex(), and shared.

◆ MakeViewVertex()

ViewVertex * Freestyle::ViewEdgeXBuilder::MakeViewVertex ( SVertex * iSVertex)
protected

instantiate a ViewVertex from a SVertex, if it doesn't exist yet

Definition at line 789 of file ViewEdgeXBuilder.cpp.

References _pCurrentVShape, and Freestyle::SVertex::viewvertex().

Referenced by BuildSharpViewEdge(), and BuildSmoothViewEdge().

◆ retrieveFaceMarks()

int Freestyle::ViewEdgeXBuilder::retrieveFaceMarks ( WXEdge * iEdge)
protected

◆ setCurrentFId()

void Freestyle::ViewEdgeXBuilder::setCurrentFId ( int id)
inline

Definition at line 224 of file ViewEdgeXBuilder.h.

References _currentFId.

◆ setCurrentSVertexId()

void Freestyle::ViewEdgeXBuilder::setCurrentSVertexId ( int id)
inline

Definition at line 229 of file ViewEdgeXBuilder.h.

References _currentSVertexId.

◆ setCurrentViewId()

void Freestyle::ViewEdgeXBuilder::setCurrentViewId ( int id)
inline

modifiers

Definition at line 219 of file ViewEdgeXBuilder.h.

References _currentViewId.

◆ stopSharpViewEdge()

bool Freestyle::ViewEdgeXBuilder::stopSharpViewEdge ( WXEdge * iEdge)
protected

checks whether a WEdge has already been processed or not

Definition at line 747 of file ViewEdgeXBuilder.cpp.

References Freestyle::WEdge::userdata.

Referenced by BuildSharpViewEdge(), and BuildViewEdges().

◆ stopSmoothViewEdge()

bool Freestyle::ViewEdgeXBuilder::stopSmoothViewEdge ( WXFaceLayer * iFaceLayer)
protected

checks whether a face has already been processed or not

Definition at line 559 of file ViewEdgeXBuilder.cpp.

References Freestyle::WXFaceLayer::userdata.

Referenced by BuildSmoothViewEdge(), and BuildViewEdges().

Member Data Documentation

◆ _currentFId

int Freestyle::ViewEdgeXBuilder::_currentFId
protected

◆ _currentSVertexId

int Freestyle::ViewEdgeXBuilder::_currentSVertexId
protected

◆ _currentViewId

int Freestyle::ViewEdgeXBuilder::_currentViewId
protected

◆ _pCurrentSShape

SShape* Freestyle::ViewEdgeXBuilder::_pCurrentSShape
protected

◆ _pCurrentVShape

ViewShape* Freestyle::ViewEdgeXBuilder::_pCurrentVShape
protected

◆ _SVertexMap

SVertexMap Freestyle::ViewEdgeXBuilder::_SVertexMap
protected

Definition at line 264 of file ViewEdgeXBuilder.h.

Referenced by Init(), and MakeSVertex().


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