14 #ifdef WITH_CXX_GUARDEDALLOC
63 _curvatures->
Kr = 0.0;
79 #ifdef WITH_CXX_GUARDEDALLOC
80 MEM_CXX_CLASS_ALLOC_FUNCS(
"Freestyle:WXVertex")
127 _nature = iBrother.
nature();
128 _front = iBrother._front;
129 _order = iBrother._order;
177 _nature = _nature | iNature;
185 #ifdef WITH_CXX_GUARDEDALLOC
186 MEM_CXX_CLASS_ALLOC_FUNCS(
"Freestyle:WXEdge")
247 inline float ta()
const
252 inline float tb()
const
298 #ifdef WITH_CXX_GUARDEDALLOC
299 MEM_CXX_CLASS_ALLOC_FUNCS(
"Freestyle:WXSmoothEdge")
355 if (!
_DotP.empty()) {
364 inline const float dotP(
int i)
const
419 if (!
_DotP.empty()) {
443 inline void setDotP(
const vector<float> &iDotP)
450 _DotP.push_back(iDotP);
461 _DotP[index] = newDotP;
469 for (vector<float>::iterator d =
_DotP.begin(), dend =
_DotP.end(); d != dend; ++d) {
479 #ifdef WITH_CXX_GUARDEDALLOC
480 MEM_CXX_CLASS_ALLOC_FUNCS(
"Freestyle:WXFaceLayer")
507 for (vector<WXFaceLayer *>::iterator wxf = iBrother.
_SmoothLayers.begin(),
524 for (vector<WXFaceLayer *>::iterator wxf =
_SmoothLayers.begin(),
563 for (vector<WXFaceLayer *>::const_iterator wxf =
_SmoothLayers.begin(),
567 if ((*wxf)->hasSmoothEdge()) {
585 if ((*wxf)->hasSmoothEdge() && ((*wxf)->_Nature & iNature)) {
586 oSmoothEdges.push_back((*wxf)->_pSmoothEdge);
596 if ((*wxf)->hasSmoothEdge() && ((*wxf)->_Nature & iNature)) {
597 oSmoothEdgesLayers.push_back((*wxf));
607 if ((*wxf)->_Nature & iNature) {
608 oSmoothLayers.push_back(*wxf);
649 vector<WXFaceLayer *> layersToKeep;
653 if ((*wxf)->isViewDependant()) {
657 layersToKeep.push_back(*wxf);
680 (*wxf)->userdata =
NULL;
684 #ifdef WITH_CXX_GUARDEDALLOC
685 MEM_CXX_CLASS_ALLOC_FUNCS(
"Freestyle:WXFace")
755 unsigned iMaterialIndex);
776 vector<Vec3f> &iNormalsList,
777 vector<Vec2f> &iTexCoordsList,
779 unsigned iMaterialIndex);
786 for (vector<WEdge *>::iterator we = wedges.begin(), weend = wedges.end(); we != weend; ++we) {
792 for (vector<WFace *>::iterator wf = wfaces.begin(), wfend = wfaces.end(); wf != wfend; ++wf) {
798 #ifdef WITH_CXX_GUARDEDALLOC
799 MEM_CXX_CLASS_ALLOC_FUNCS(
"Freestyle:WXShape")
819 vector<WEdge *> &vedges =
GetEdges();
820 for (vector<WEdge *>::iterator ve = vedges.begin(), vend = vedges.end(); ve != vend; ++ve) {
GTS - Library for the manipulation of triangulated surfaces.
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint GLsizei GLsizei GLenum type _GL_VOID_RET _GL_VOID GLsizei GLenum GLenum const void *pixels _GL_VOID_RET _GL_VOID const void *pointer _GL_VOID_RET _GL_VOID GLdouble v _GL_VOID_RET _GL_VOID GLfloat v _GL_VOID_RET _GL_VOID GLint GLint i2 _GL_VOID_RET _GL_VOID GLint j _GL_VOID_RET _GL_VOID GLfloat param _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble GLdouble GLdouble zFar _GL_VOID_RET _GL_UINT GLdouble *equation _GL_VOID_RET _GL_VOID GLenum GLint *params _GL_VOID_RET _GL_VOID GLenum GLfloat *v _GL_VOID_RET _GL_VOID GLenum GLfloat *params _GL_VOID_RET _GL_VOID GLfloat *values _GL_VOID_RET _GL_VOID GLushort *values _GL_VOID_RET _GL_VOID GLenum GLfloat *params _GL_VOID_RET _GL_VOID GLenum GLdouble *params _GL_VOID_RET _GL_VOID GLenum GLint *params _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_BOOL GLfloat param _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID GLenum GLfloat param _GL_VOID_RET _GL_VOID GLenum GLint param _GL_VOID_RET _GL_VOID GLushort pattern _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLint const GLdouble *points _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLint GLdouble GLdouble GLint GLint const GLdouble *points _GL_VOID_RET _GL_VOID GLdouble GLdouble u2 _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLdouble GLdouble v2 _GL_VOID_RET _GL_VOID GLenum GLfloat param _GL_VOID_RET _GL_VOID GLenum GLint param _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLdouble GLdouble nz _GL_VOID_RET _GL_VOID GLfloat GLfloat nz _GL_VOID_RET _GL_VOID GLint GLint nz _GL_VOID_RET _GL_VOID GLshort GLshort nz _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_VOID GLsizei const GLfloat *values _GL_VOID_RET _GL_VOID GLsizei const GLushort *values _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID const GLuint const GLclampf *priorities _GL_VOID_RET _GL_VOID GLdouble y _GL_VOID_RET _GL_VOID GLfloat y _GL_VOID_RET _GL_VOID GLint y _GL_VOID_RET _GL_VOID GLshort y _GL_VOID_RET _GL_VOID GLdouble GLdouble z _GL_VOID_RET _GL_VOID GLfloat GLfloat z _GL_VOID_RET _GL_VOID GLint GLint z _GL_VOID_RET _GL_VOID GLshort GLshort z _GL_VOID_RET _GL_VOID GLdouble GLdouble z
Read Guarded memory(de)allocation.
Different natures for both vertices and edges.
Classes to define a Winged Edge data structure.
ATTR_WARN_UNUSED_RESULT const BMVert * v
virtual void ResetUserData()
vector< WEdge * > & getEdgeList()
vector< WFace * > & GetFaceList()
vector< WEdge * > & GetEdges()
virtual WEdge * duplicate()
WXEdge(WOEdge *iaOEdge, WOEdge *ibOEdge)
void setNature(WXNature iNature)
void AddNature(WXNature iNature)
void setFront(bool iFront)
unsigned int Get0VertexIndex() const
bool hasSmoothEdge() const
const float dotP(int i) const
void setClosestPointIndex(int iIndex)
WXFaceLayer(const WXFaceLayer &iBrother)
void PushDotP(float iDotP)
WXFaceLayer(WXFace *iFace, WXNature iNature, bool viewDependant)
void setDotP(const vector< float > &iDotP)
unsigned nNullDotP() const
unsigned _ClosestPointIndex
void RetrieveCuspEdgesIndices(vector< int > &oCuspEdges)
void ReplaceDotP(unsigned int index, float newDotP)
int closestPointIndex() const
unsigned nPosDotP() const
WXSmoothEdge * getSmoothEdge()
unsigned int GetSmoothEdgeIndex() const
bool isViewDependant() const
WXSmoothEdge * BuildSmoothEdge()
WXSmoothEdge * _pSmoothEdge
void setDotP(float iDotP)
virtual void ResetUserData()
vector< WXFaceLayer * > _SmoothLayers
void retrieveSmoothLayers(WXNature iNature, vector< WXFaceLayer * > &oSmoothLayers)
void setFront(bool iFront)
void setCenter(const Vec3f &iCenter)
vector< WXFaceLayer * > & getSmoothLayers()
void retrieveSmoothEdgesLayers(WXNature iNature, vector< WXFaceLayer * > &oSmoothEdgesLayers)
void AddSmoothLayer(WXFaceLayer *iLayer)
bool hasSmoothEdges() const
virtual WFace * duplicate()
void retrieveSmoothEdges(WXNature iNature, vector< WXSmoothEdge * > &oSmoothEdges)
virtual WEdge * instanciateEdge() const
virtual WShape * duplicate()
bool _computeViewIndependent
virtual WFace * MakeFace(vector< WVertex * > &iVertexList, vector< bool > &iFaceEdgeMarksList, unsigned iMaterialIndex)
bool getComputeViewIndependentFlag() const
WXShape(WXShape &iBrother)
void setComputeViewIndependentFlag(bool iFlag)
virtual WFace * instanciateFace() const
void setWOeA(WOEdge *iwoea)
void setWOeB(WOEdge *iwoeb)
unsigned short Configuration
Configuration configuration() const
WXSmoothEdge(const WXSmoothEdge &iBrother)
static const Configuration VERTEX_EDGE
void setConfiguration(Configuration iConf)
void setFront(bool iFront)
static const Configuration EDGE_VERTEX
static const Configuration EDGE_EDGE
void setCurvatures(CurvatureInfo *ci)
CurvatureInfo * curvatures()
WXVertex(WXVertex &iBrother)
virtual WVertex * duplicate()
ccl_gpu_kernel_postfix ccl_global int * counter
static const EdgeNature NO_FEATURE
unsigned short EdgeNature
static const EdgeNature SILHOUETTE
static const EdgeNature SUGGESTIVE_CONTOUR
Nature::EdgeNature WXNature