Blender  V3.3
Public Member Functions | Protected Attributes | List of all members
Freestyle::FEdgeSharp Class Reference

#include <Silhouette.h>

Inheritance diagram for Freestyle::FEdgeSharp:
Freestyle::FEdge Freestyle::Interface1D

Public Member Functions

virtual string getExactTypeName () const
 
 FEdgeSharp ()
 
 FEdgeSharp (SVertex *vA, SVertex *vB)
 
 FEdgeSharp (FEdgeSharp &iBrother)
 
virtual ~FEdgeSharp ()
 
virtual FEdge * duplicate ()
 
const Vec3r & normalA ()
 
const Vec3r & normalB ()
 
unsigned aFrsMaterialIndex () const
 
const FrsMaterial & aFrsMaterial () const
 
unsigned bFrsMaterialIndex () const
 
const FrsMaterial & bFrsMaterial () const
 
bool aFaceMark () const
 
bool bFaceMark () const
 
void setNormalA (const Vec3r &iNormal)
 
void setNormalB (const Vec3r &iNormal)
 
void setaFrsMaterialIndex (unsigned i)
 
void setbFrsMaterialIndex (unsigned i)
 
void setaFaceMark (bool iFaceMark)
 
void setbFaceMark (bool iFaceMark)
 
- Public Member Functions inherited from Freestyle::FEdge
virtual real getLength2D () const
 
virtual Id getId () const
 
 FEdge ()
 
 FEdge (SVertex *vA, SVertex *vB)
 
 FEdge (FEdge &iBrother)
 
virtual ~FEdge ()
 
SVertex * vertexA ()
 
SVertex * vertexB ()
 
SVertex * operator[] (const unsigned short int &i) const
 
Nature::EdgeNature getNature () const
 
FEdge * nextEdge ()
 
FEdge * previousEdge ()
 
SShape * shape ()
 
int invisibility () const
 
ViewEdge * viewedge () const
 
Vec3r center3d ()
 
Vec3r center2d ()
 
const Polygon3r & aFace () const
 
const Vec3r & getOccludeeIntersection ()
 
bool getOccludeeEmpty ()
 
bool isSmooth () const
 
bool isInImage () const
 
bool isTemporary () const
 
void setVertexA (SVertex *vA)
 
void setVertexB (SVertex *vB)
 
void setId (const Id &id)
 
void setNextEdge (FEdge *iEdge)
 
void setPreviousEdge (FEdge *iEdge)
 
void setNature (Nature::EdgeNature iNature)
 
void setViewEdge (ViewEdge *iViewEdge)
 
void setaFace (Polygon3r &iFace)
 
void setOccludeeIntersection (const Vec3r &iPoint)
 
void setOccludeeEmpty (bool iempty)
 
void setSmooth (bool iFlag)
 
void setIsInImage (bool iFlag)
 
void setTemporary (bool iFlag)
 
const SVertex * min2d () const
 
const SVertex * max2d () const
 
Id shape_id () const
 
const SShape * shape () const
 
float shape_importance () const
 
const int qi () const
 
occluder_container::const_iterator occluders_begin () const
 
occluder_container::const_iterator occluders_end () const
 
bool occluders_empty () const
 
int occluders_size () const
 
const Polygon3r & occludee () const
 
const SShape * occluded_shape () const
 
bool occludee_empty () const
 
real z_discontinuity () const
 
int viewedge_nature () const
 
Vec3r orientation2d () const
 
Vec3r orientation3d () const
 
virtual Interface0DIterator verticesBegin ()
 
virtual Interface0DIterator verticesEnd ()
 
virtual Interface0DIterator pointsBegin (float t=0.0f)
 
virtual Interface0DIterator pointsEnd (float t=0.0f)
 
- Public Member Functions inherited from Freestyle::Interface1D
 Interface1D ()
 
virtual ~Interface1D ()
 
virtual unsigned getTimeStamp () const
 
void setTimeStamp (unsigned iTimeStamp)
 

Protected Attributes

Vec3r _aNormal
 
Vec3r _bNormal
 
unsigned _aFrsMaterialIndex
 
unsigned _bFrsMaterialIndex
 
bool _aFaceMark
 
bool _bFaceMark
 
- Protected Attributes inherited from Freestyle::FEdge
SVertex * _VertexA
 
SVertex * _VertexB
 
Id _Id
 
Nature::EdgeNature _Nature
 
FEdge * _NextEdge
 
FEdge * _PreviousEdge
 
ViewEdge * _ViewEdge
 
Polygon3r _aFace
 
Vec3r _occludeeIntersection
 
bool _occludeeEmpty
 
bool _isSmooth
 
bool _isInImage
 
bool _isTemporary
 
- Protected Attributes inherited from Freestyle::Interface1D
unsigned _timeStamp
 

Additional Inherited Members

- Static Public Member Functions inherited from Freestyle::FEdge
static SVertex * CommonVertex (FEdge *iEdge1, FEdge *iEdge2)
 
- Public Attributes inherited from Freestyle::FEdge
void * userdata
 

Detailed Description

Class defining a sharp FEdge. A Sharp FEdge corresponds to an initial edge of the input mesh. It can be a silhouette, a crease or a border. If it is a crease edge, then it is bordered by two faces of the mesh. Face a lies on its right whereas Face b lies on its left. If it is a border edge, then it doesn't have any face on its right, and thus Face a = 0.

Definition at line 1132 of file Silhouette.h.

Constructor & Destructor Documentation

◆ FEdgeSharp() [1/3]

Freestyle::FEdgeSharp::FEdgeSharp ( )
inline

Default constructor.

Definition at line 1149 of file Silhouette.h.

◆ FEdgeSharp() [2/3]

Freestyle::FEdgeSharp::FEdgeSharp ( SVertex *  vA,
SVertex *  vB 
)
inline

Builds an FEdgeSharp going from vA to vB.

Definition at line 1156 of file Silhouette.h.

◆ FEdgeSharp() [3/3]

Freestyle::FEdgeSharp::FEdgeSharp ( FEdgeSharp &  iBrother)
inline

Copy constructor.

Definition at line 1163 of file Silhouette.h.

References _aFaceMark, _aFrsMaterialIndex, _aNormal, _bFaceMark, _bFrsMaterialIndex, and _bNormal.

◆ ~FEdgeSharp()

virtual Freestyle::FEdgeSharp::~FEdgeSharp ( )
inlinevirtual

Destructor.

Definition at line 1174 of file Silhouette.h.

Member Function Documentation

◆ aFaceMark()

bool Freestyle::FEdgeSharp::aFaceMark ( ) const
inline

Returns the face mark of the face lying on the right of the FEdge. If this FEdge is a border, it has no Face on its right and thus false is returned.

Definition at line 1225 of file Silhouette.h.

Referenced by Freestyle::SShape::SplitEdgeIn2().

◆ aFrsMaterial()

const FrsMaterial & Freestyle::FEdgeSharp::aFrsMaterial ( ) const

Returns the material of the face lying on the right of the FEdge. If this FEdge is a border, it has no Face on its right and therefore, no material.

Definition at line 386 of file Silhouette.cpp.

References _aFrsMaterialIndex, Freestyle::FEdge::_VertexA, Freestyle::SShape::frs_material(), and Freestyle::SVertex::shape().

◆ aFrsMaterialIndex()

unsigned Freestyle::FEdgeSharp::aFrsMaterialIndex ( ) const
inline

Returns the index of the material of the face lying on the right of the FEdge. If this FEdge is a border, it has no Face on its right and therefore, no material.

Definition at line 1203 of file Silhouette.h.

Referenced by Freestyle::SShape::SplitEdge(), and Freestyle::SShape::SplitEdgeIn2().

◆ bFaceMark()

bool Freestyle::FEdgeSharp::bFaceMark ( ) const
inline

Returns the face mark of the face lying on the left of the FEdge.

Definition at line 1231 of file Silhouette.h.

Referenced by Freestyle::SShape::SplitEdgeIn2().

◆ bFrsMaterial()

const FrsMaterial & Freestyle::FEdgeSharp::bFrsMaterial ( ) const

Returns the material of the face lying on the left of the FEdge.

Definition at line 391 of file Silhouette.cpp.

References _bFrsMaterialIndex, Freestyle::FEdge::_VertexA, Freestyle::SShape::frs_material(), and Freestyle::SVertex::shape().

◆ bFrsMaterialIndex()

unsigned Freestyle::FEdgeSharp::bFrsMaterialIndex ( ) const
inline

Returns the index of the material of the face lying on the left of the FEdge.

Definition at line 1214 of file Silhouette.h.

Referenced by Freestyle::SShape::SplitEdge(), and Freestyle::SShape::SplitEdgeIn2().

◆ duplicate()

virtual FEdge* Freestyle::FEdgeSharp::duplicate ( )
inlinevirtual

Cloning method.

Reimplemented from Freestyle::FEdge.

Definition at line 1179 of file Silhouette.h.

◆ getExactTypeName()

virtual string Freestyle::FEdgeSharp::getExactTypeName ( ) const
inlinevirtual

Returns the string "FEdgeSharp".

Reimplemented from Freestyle::FEdge.

Definition at line 1143 of file Silhouette.h.

◆ normalA()

const Vec3r& Freestyle::FEdgeSharp::normalA ( )
inline

Returns the normal to the face lying on the right of the FEdge. If this FEdge is a border, it has no Face on its right and therefore, no normal.

Definition at line 1188 of file Silhouette.h.

Referenced by Freestyle::SShape::SplitEdgeIn2().

◆ normalB()

const Vec3r& Freestyle::FEdgeSharp::normalB ( )
inline

Returns the normal to the face lying on the left of the FEdge.

Definition at line 1194 of file Silhouette.h.

Referenced by Freestyle::SShape::SplitEdgeIn2().

◆ setaFaceMark()

void Freestyle::FEdgeSharp::setaFaceMark ( bool  iFaceMark)
inline

Sets the face mark of the face lying on the right of the FEdge.

Definition at line 1261 of file Silhouette.h.

Referenced by Freestyle::ViewEdgeXBuilder::BuildSharpFEdge(), and Freestyle::SShape::SplitEdgeIn2().

◆ setaFrsMaterialIndex()

void Freestyle::FEdgeSharp::setaFrsMaterialIndex ( unsigned  i)
inline

Sets the index of the material lying on the right of the FEdge.

Definition at line 1249 of file Silhouette.h.

Referenced by Freestyle::ViewEdgeXBuilder::BuildSharpFEdge(), Freestyle::SShape::SplitEdge(), and Freestyle::SShape::SplitEdgeIn2().

◆ setbFaceMark()

void Freestyle::FEdgeSharp::setbFaceMark ( bool  iFaceMark)
inline

Sets the face mark of the face lying on the left of the FEdge.

Definition at line 1267 of file Silhouette.h.

Referenced by Freestyle::ViewEdgeXBuilder::BuildSharpFEdge(), and Freestyle::SShape::SplitEdgeIn2().

◆ setbFrsMaterialIndex()

void Freestyle::FEdgeSharp::setbFrsMaterialIndex ( unsigned  i)
inline

Sets the index of the material lying on the left of the FEdge.

Definition at line 1255 of file Silhouette.h.

Referenced by Freestyle::ViewEdgeXBuilder::BuildSharpFEdge(), Freestyle::SShape::SplitEdge(), and Freestyle::SShape::SplitEdgeIn2().

◆ setNormalA()

void Freestyle::FEdgeSharp::setNormalA ( const Vec3r &  iNormal)
inline

Sets the normal to the face lying on the right of the FEdge.

Definition at line 1237 of file Silhouette.h.

Referenced by Freestyle::ViewEdgeXBuilder::BuildSharpFEdge(), and Freestyle::SShape::SplitEdgeIn2().

◆ setNormalB()

void Freestyle::FEdgeSharp::setNormalB ( const Vec3r &  iNormal)
inline

Sets the normal to the face lying on the left of the FEdge.

Definition at line 1243 of file Silhouette.h.

Referenced by Freestyle::ViewEdgeXBuilder::BuildSharpFEdge(), and Freestyle::SShape::SplitEdgeIn2().

Member Data Documentation

◆ _aFaceMark

bool Freestyle::FEdgeSharp::_aFaceMark
protected

Definition at line 1138 of file Silhouette.h.

Referenced by FEdgeSharp().

◆ _aFrsMaterialIndex

unsigned Freestyle::FEdgeSharp::_aFrsMaterialIndex
protected

Definition at line 1136 of file Silhouette.h.

Referenced by aFrsMaterial(), and FEdgeSharp().

◆ _aNormal

Vec3r Freestyle::FEdgeSharp::_aNormal
protected

Definition at line 1134 of file Silhouette.h.

Referenced by FEdgeSharp().

◆ _bFaceMark

bool Freestyle::FEdgeSharp::_bFaceMark
protected

Definition at line 1139 of file Silhouette.h.

Referenced by FEdgeSharp().

◆ _bFrsMaterialIndex

unsigned Freestyle::FEdgeSharp::_bFrsMaterialIndex
protected

Definition at line 1137 of file Silhouette.h.

Referenced by bFrsMaterial(), and FEdgeSharp().

◆ _bNormal

Vec3r Freestyle::FEdgeSharp::_bNormal
protected

Definition at line 1135 of file Silhouette.h.

Referenced by FEdgeSharp().


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