Blender V5.0
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 ()
uint GetId ()
const FrsMaterialfrs_material (uint 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, uint 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, uint iMaterialIndex)
virtual WFaceMakeFace (vector< WVertex * > &iVertexList, vector< Vec3f > &iNormalsList, vector< Vec2f > &iTexCoordsList, vector< bool > &iFaceEdgeMarksList, uint 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 uint id)

Protected Member Functions

virtual WFaceMakeFace (vector< WVertex * > &iVertexList, vector< bool > &iFaceEdgeMarksList, uint 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 uint _SceneCurrentId = 0

Detailed Description

Definition at line 974 of file WEdge.h.

Constructor & Destructor Documentation

◆ WShape() [1/2]

Freestyle::WShape::WShape ( )
inline

◆ WShape() [2/2]

◆ ~WShape()

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

Definition at line 1006 of file WEdge.h.

References _EdgeList, _FaceList, _VertexList, e, and v.

Member Function Documentation

◆ AddEdge()

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

Definition at line 1179 of file WEdge.h.

References _EdgeList.

◆ AddFace()

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

Definition at line 1184 of file WEdge.h.

References _FaceList.

Referenced by MakeFace(), and WShape().

◆ 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 460 of file WEdge.cpp.

References WShape().

◆ frs_material()

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

Definition at line 1062 of file WEdge.h.

References _FrsMaterials, and i.

Referenced by setFrsMaterial().

◆ frs_materials()

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

Definition at line 1067 of file WEdge.h.

References _FrsMaterials.

◆ getEdgeList()

◆ GetFaceList()

◆ GetId()

◆ getLibraryPath()

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

Definition at line 1084 of file WEdge.h.

References _LibraryPath.

◆ getName()

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

Definition at line 1079 of file WEdge.h.

References _Name.

◆ 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 1144 of file WEdge.h.

Referenced by MakeFace().

◆ MakeFace() [1/3]

WFace * Freestyle::WShape::MakeFace ( vector< WVertex * > & iVertexList,
vector< bool > & iFaceEdgeMarksList,
uint 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 590 of file WEdge.cpp.

References instanciateFace(), MakeFace(), and result.

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

◆ MakeFace() [2/3]

WFace * Freestyle::WShape::MakeFace ( vector< WVertex * > & iVertexList,
vector< bool > & iFaceEdgeMarksList,
uint 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 625 of file WEdge.cpp.

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

◆ MakeFace() [3/3]

WFace * Freestyle::WShape::MakeFace ( vector< WVertex * > & iVertexList,
vector< Vec3f > & iNormalsList,
vector< Vec2f > & iTexCoordsList,
vector< bool > & iFaceEdgeMarksList,
uint 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 texture coords, iTexCoordsList[i] corresponding to the normal of the vertex iVertexList[i] for that face.

Reimplemented in Freestyle::WXShape.

Definition at line 604 of file WEdge.cpp.

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

◆ ResetUserData()

void Freestyle::WShape::ResetUserData ( )
inline

◆ setCurrentId()

void Freestyle::WShape::setCurrentId ( const uint id)
inlinestatic

modifiers

Definition at line 1090 of file WEdge.h.

References _SceneCurrentId.

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

◆ setEdgeList()

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

Definition at line 1095 of file WEdge.h.

References _EdgeList.

◆ setFaceList()

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

Definition at line 1105 of file WEdge.h.

References _FaceList.

◆ setFrsMaterial()

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

Definition at line 1123 of file WEdge.h.

References _FrsMaterials, frs_material(), and i.

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

◆ setFrsMaterials()

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

Definition at line 1128 of file WEdge.h.

References _FrsMaterials.

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

◆ setId()

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

Definition at line 1110 of file WEdge.h.

References _Id.

◆ setLibraryPath()

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

Definition at line 1138 of file WEdge.h.

References _LibraryPath.

◆ setName()

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

Definition at line 1133 of file WEdge.h.

References _Name, and name.

◆ setVertexList()

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

Definition at line 1100 of file WEdge.h.

References _VertexList.

Member Data Documentation

◆ _EdgeList

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

◆ _FaceList

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

Definition at line 978 of file WEdge.h.

Referenced by AddFace(), GetFaceList(), MakeFace(), ResetUserData(), setFaceList(), WShape(), and ~WShape().

◆ _FrsMaterials

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

Definition at line 987 of file WEdge.h.

Referenced by frs_material(), frs_materials(), setFrsMaterial(), setFrsMaterials(), and WShape().

◆ _Id

int Freestyle::WShape::_Id
protected

Definition at line 979 of file WEdge.h.

Referenced by GetId(), setId(), WShape(), and WShape().

◆ _LibraryPath

string Freestyle::WShape::_LibraryPath
protected

Definition at line 981 of file WEdge.h.

Referenced by getLibraryPath(), setLibraryPath(), and WShape().

◆ _Name

string Freestyle::WShape::_Name
protected

Definition at line 980 of file WEdge.h.

Referenced by getName(), setName(), and WShape().

◆ _SceneCurrentId

uint Freestyle::WShape::_SceneCurrentId = 0
staticprotected

Definition at line 982 of file WEdge.h.

Referenced by setCurrentId(), and WShape().

◆ _VertexList

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

Definition at line 976 of file WEdge.h.

Referenced by AddVertex(), getVertexList(), ResetUserData(), setVertexList(), WShape(), and ~WShape().


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