Blender  V2.93
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
Freestyle::WShape Class Reference

#include <WEdge.h>

Inherited by Freestyle::WXShape.

Public Member Functions

 WShape ()
 
 WShape (WShape &iBrother)
 
virtual WShapeduplicate ()
 
virtual ~WShape ()
 
vector< WEdge * > & getEdgeList ()
 
vector< WVertex * > & getVertexList ()
 
vector< WFace * > & GetFaceList ()
 
unsigned GetId ()
 
const FrsMaterialfrs_material (unsigned i) const
 
const vector< FrsMaterial > & frs_materials () const
 
const string & getName () const
 
const string & getLibraryPath () const
 
void setEdgeList (const vector< WEdge * > &iEdgeList)
 
void setVertexList (const vector< WVertex * > &iVertexList)
 
void setFaceList (const vector< WFace * > &iFaceList)
 
void setId (int id)
 
void setFrsMaterial (const FrsMaterial &frs_material, unsigned i)
 
void setFrsMaterials (const vector< FrsMaterial > &iMaterials)
 
void setName (const string &name)
 
void setLibraryPath (const string &path)
 
virtual WFaceinstanciateFace () const
 
virtual WFaceMakeFace (vector< WVertex * > &iVertexList, vector< bool > &iFaceEdgeMarksList, unsigned iMaterialIndex)
 
virtual WFaceMakeFace (vector< WVertex * > &iVertexList, vector< Vec3f > &iNormalsList, vector< Vec2f > &iTexCoordsList, vector< bool > &iFaceEdgeMarksList, unsigned iMaterialIndex)
 
void AddEdge (WEdge *iEdge)
 
void AddFace (WFace *iFace)
 
void AddVertex (WVertex *iVertex)
 
void ResetUserData ()
 
real ComputeMeanEdgeSize () const
 

Static Public Member Functions

static void setCurrentId (const unsigned id)
 

Protected Member Functions

virtual WFaceMakeFace (vector< WVertex * > &iVertexList, vector< bool > &iFaceEdgeMarksList, unsigned iMaterialIndex, WFace *face)
 

Protected Attributes

vector< WVertex * > _VertexList
 
vector< WEdge * > _EdgeList
 
vector< WFace * > _FaceList
 
int _Id
 
string _Name
 
string _LibraryPath
 
vector< FrsMaterial_FrsMaterials
 

Static Protected Attributes

static unsigned _SceneCurrentId = 0
 

Detailed Description

Definition at line 1032 of file WEdge.h.

Constructor & Destructor Documentation

◆ WShape() [1/2]

Freestyle::WShape::WShape ( )
inline

Definition at line 1051 of file WEdge.h.

◆ WShape() [2/2]

Freestyle::WShape::WShape ( WShape iBrother)

◆ ~WShape()

virtual Freestyle::WShape::~WShape ( )
inlinevirtual

Definition at line 1064 of file WEdge.h.

References e, and v.

Member Function Documentation

◆ AddEdge()

void Freestyle::WShape::AddEdge ( WEdge iEdge)
inline

Definition at line 1237 of file WEdge.h.

◆ AddFace()

void Freestyle::WShape::AddFace ( WFace iFace)
inline

Definition at line 1242 of file WEdge.h.

◆ AddVertex()

void Freestyle::WShape::AddVertex ( WVertex iVertex)
inline

◆ ComputeMeanEdgeSize()

real Freestyle::WShape::ComputeMeanEdgeSize ( ) const

◆ duplicate()

WShape * Freestyle::WShape::duplicate ( )
virtual

Reimplemented in Freestyle::WXShape.

Definition at line 470 of file WEdge.cpp.

◆ frs_material()

const FrsMaterial& Freestyle::WShape::frs_material ( unsigned  i) const
inline

Definition at line 1120 of file WEdge.h.

◆ frs_materials()

const vector<FrsMaterial>& Freestyle::WShape::frs_materials ( ) const
inline

Definition at line 1125 of file WEdge.h.

◆ getEdgeList()

vector<WEdge *>& Freestyle::WShape::getEdgeList ( )
inline

◆ GetFaceList()

vector<WFace *>& Freestyle::WShape::GetFaceList ( )
inline

◆ GetId()

unsigned Freestyle::WShape::GetId ( )
inline

◆ getLibraryPath()

const string& Freestyle::WShape::getLibraryPath ( ) const
inline

Definition at line 1142 of file WEdge.h.

◆ getName()

const string& Freestyle::WShape::getName ( ) const
inline

Definition at line 1137 of file WEdge.h.

◆ getVertexList()

vector<WVertex *>& Freestyle::WShape::getVertexList ( )
inline

◆ instanciateFace()

virtual WFace* Freestyle::WShape::instanciateFace ( ) const
inlinevirtual

designed to build a specialized WFace for use in MakeFace

Reimplemented in Freestyle::WXShape.

Definition at line 1202 of file WEdge.h.

◆ MakeFace() [1/3]

WFace * Freestyle::WShape::MakeFace ( vector< WVertex * > &  iVertexList,
vector< bool > &  iFaceEdgeMarksList,
unsigned  iMaterialIndex 
)
virtual

adds a new face to the shape returns the built face. iVertexList List of face's vertices. These vertices are not added to the WShape vertex list; they are supposed to be already stored when calling MakeFace. The order in which the vertices are stored in the list determines the face's edges orientation and (so) the face orientation. iMaterialIndex The material index for this face

Reimplemented in Freestyle::WXShape.

Definition at line 600 of file WEdge.cpp.

References result.

Referenced by Freestyle::WXShape::MakeFace().

◆ MakeFace() [2/3]

WFace * Freestyle::WShape::MakeFace ( vector< WVertex * > &  iVertexList,
vector< bool > &  iFaceEdgeMarksList,
unsigned  iMaterialIndex,
WFace face 
)
protectedvirtual

Builds the face passed as argument (which as already been allocated)

  • iVertexList List of face's vertices. These vertices are not added to the WShape vertex list; they are supposed to be already stored when calling MakeFace. The order in which the vertices are stored in the list determines the face's edges orientation and (so) the face orientation.
  • iMaterialIndex The material index for this face
  • face The Face that is filled in

Definition at line 635 of file WEdge.cpp.

References Freestyle::WVertex::_EdgeList, Freestyle::WVertex::AddEdge(), Freestyle::WEdge::GetaOEdge(), Freestyle::WEdge::GetNumberOfOEdges(), Freestyle::WOEdge::GetOwner(), Freestyle::WOEdge::GetVec(), Freestyle::WFace::MakeEdge(), Freestyle::VecMat::Vec< T, N >::norm(), normal, Freestyle::WFace::setFrsMaterialIndex(), Freestyle::WEdge::setId(), Freestyle::WFace::setId(), Freestyle::WFace::setMark(), Freestyle::WEdge::setMark(), Freestyle::WFace::setNormal(), v1, and v2.

◆ MakeFace() [3/3]

WFace * Freestyle::WShape::MakeFace ( vector< WVertex * > &  iVertexList,
vector< Vec3f > &  iNormalsList,
vector< Vec2f > &  iTexCoordsList,
vector< bool > &  iFaceEdgeMarksList,
unsigned  iMaterialIndex 
)
virtual

adds a new face to the shape. The difference with the previous method is that this one is designed to build a WingedEdge structure for which there are per vertex normals, opposed to per face normals. returns the built face. iVertexList List of face's vertices. These vertices are not added to the WShape vertex list; they are supposed to be already stored when calling MakeFace. The order in which the vertices are stored in the list determines the face's edges orientation and (so) the face orientation. iMaterialIndex The materialIndex for this face iNormalsList The list of normals, iNormalsList[i] corresponding to the normal of the vertex iVertexList[i] for that face. iTexCoordsList The list of tex coords, iTexCoordsList[i] corresponding to the normal of the vertex iVertexList[i] for that face.

Reimplemented in Freestyle::WXShape.

Definition at line 614 of file WEdge.cpp.

References Freestyle::WFace::setNormalList(), and Freestyle::WFace::setTexCoordsList().

◆ ResetUserData()

void Freestyle::WShape::ResetUserData ( )
inline

Definition at line 1253 of file WEdge.h.

References e, Freestyle::WOEdge::ResetUserData(), and v.

Referenced by Freestyle::ViewEdgeXBuilder::BuildViewEdges().

◆ setCurrentId()

static void Freestyle::WShape::setCurrentId ( const unsigned  id)
inlinestatic

modifiers

Definition at line 1148 of file WEdge.h.

References id.

Referenced by Freestyle::Controller::CloseFile().

◆ setEdgeList()

void Freestyle::WShape::setEdgeList ( const vector< WEdge * > &  iEdgeList)
inline

Definition at line 1153 of file WEdge.h.

◆ setFaceList()

void Freestyle::WShape::setFaceList ( const vector< WFace * > &  iFaceList)
inline

Definition at line 1163 of file WEdge.h.

◆ setFrsMaterial()

void Freestyle::WShape::setFrsMaterial ( const FrsMaterial frs_material,
unsigned  i 
)
inline

Definition at line 1181 of file WEdge.h.

Referenced by Freestyle::WingedEdgeBuilder::buildWShape().

◆ setFrsMaterials()

void Freestyle::WShape::setFrsMaterials ( const vector< FrsMaterial > &  iMaterials)
inline

Definition at line 1186 of file WEdge.h.

Referenced by Freestyle::WingedEdgeBuilder::buildWShape().

◆ setId()

void Freestyle::WShape::setId ( int  id)
inline

Definition at line 1168 of file WEdge.h.

References id.

◆ setLibraryPath()

void Freestyle::WShape::setLibraryPath ( const string &  path)
inline

Definition at line 1196 of file WEdge.h.

◆ setName()

void Freestyle::WShape::setName ( const string &  name)
inline

Definition at line 1191 of file WEdge.h.

◆ setVertexList()

void Freestyle::WShape::setVertexList ( const vector< WVertex * > &  iVertexList)
inline

Definition at line 1158 of file WEdge.h.

Member Data Documentation

◆ _EdgeList

vector<WEdge *> Freestyle::WShape::_EdgeList
protected

Definition at line 1035 of file WEdge.h.

◆ _FaceList

vector<WFace *> Freestyle::WShape::_FaceList
protected

Definition at line 1036 of file WEdge.h.

◆ _FrsMaterials

vector<FrsMaterial> Freestyle::WShape::_FrsMaterials
protected

Definition at line 1045 of file WEdge.h.

Referenced by WShape().

◆ _Id

int Freestyle::WShape::_Id
protected

Definition at line 1037 of file WEdge.h.

◆ _LibraryPath

string Freestyle::WShape::_LibraryPath
protected

Definition at line 1039 of file WEdge.h.

Referenced by WShape().

◆ _Name

string Freestyle::WShape::_Name
protected

Definition at line 1038 of file WEdge.h.

Referenced by WShape().

◆ _SceneCurrentId

unsigned Freestyle::WShape::_SceneCurrentId = 0
staticprotected

Definition at line 1040 of file WEdge.h.

◆ _VertexList

vector<WVertex *> Freestyle::WShape::_VertexList
protected

Definition at line 1034 of file WEdge.h.


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