**** SIGNIFICANT CHANGES *****
- Cleaned up include order: Now you only need to include <vcg/complex/complex.h> (no more vertex/base.h etc) - Added official VN() EN() FN() const members for knowing number of vertexes etc... - Added exceptions (at last!) Now instead of: assert(HasPerVertexNormal(m)) you should write: if(!HasPerFaceNormal(m)) throw vcg::MissingComponentException();
This commit is contained in:
parent
c342c99e74
commit
2577210a54
|
@ -25,12 +25,8 @@
|
||||||
#define __VCGLIB_TRIALLOCATOR
|
#define __VCGLIB_TRIALLOCATOR
|
||||||
|
|
||||||
#include <typeinfo>
|
#include <typeinfo>
|
||||||
#include <vector>
|
|
||||||
#include <map>
|
#include <map>
|
||||||
#include <string>
|
|
||||||
#include <set>
|
#include <set>
|
||||||
#include <assert.h>
|
|
||||||
#include <vcg/container/simple_temporary_data.h>
|
|
||||||
|
|
||||||
namespace vcg {
|
namespace vcg {
|
||||||
|
|
||||||
|
@ -66,9 +62,9 @@ namespace vcg {
|
||||||
template<class MeshType>
|
template<class MeshType>
|
||||||
size_t Index(MeshType &m, const typename MeshType::FaceType * fp) {return fp-&*m.face.begin();}
|
size_t Index(MeshType &m, const typename MeshType::FaceType * fp) {return fp-&*m.face.begin();}
|
||||||
template<class MeshType>
|
template<class MeshType>
|
||||||
size_t Index(MeshType &m, const typename MeshType::EdgeType* e) {return e-&*m.edge.begin();}
|
size_t Index(MeshType &m, const typename MeshType::EdgeType* e) {return e-&*m.edge.begin();}
|
||||||
template<class MeshType>
|
template<class MeshType>
|
||||||
size_t Index(MeshType &m, const typename MeshType::HEdgeType* h) {return h-&*m.hedge.begin();}
|
size_t Index(MeshType &m, const typename MeshType::HEdgeType* h) {return h-&*m.hedge.begin();}
|
||||||
|
|
||||||
template <class MeshType, class ATTR_CONT>
|
template <class MeshType, class ATTR_CONT>
|
||||||
void ReorderAttribute(ATTR_CONT &c,std::vector<size_t> & newVertIndex, MeshType & /* m */){
|
void ReorderAttribute(ATTR_CONT &c,std::vector<size_t> & newVertIndex, MeshType & /* m */){
|
||||||
|
@ -78,7 +74,7 @@ namespace vcg {
|
||||||
}
|
}
|
||||||
|
|
||||||
template <class MeshType, class ATTR_CONT>
|
template <class MeshType, class ATTR_CONT>
|
||||||
void ResizeAttribute(ATTR_CONT &c,const int & sz , MeshType &/*m*/){
|
void ResizeAttribute(ATTR_CONT &c,const int & sz , MeshType &/*m*/){
|
||||||
typename std::set<typename MeshType::PointerToAttribute>::iterator ai;
|
typename std::set<typename MeshType::PointerToAttribute>::iterator ai;
|
||||||
for(ai =c.begin(); ai != c.end(); ++ai)
|
for(ai =c.begin(); ai != c.end(); ++ai)
|
||||||
((typename MeshType::PointerToAttribute)(*ai)).Resize(sz);
|
((typename MeshType::PointerToAttribute)(*ai)).Resize(sz);
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
* VCGLib o o *
|
* VCGLib o o *
|
||||||
* Visual and Computer Graphics Library o o *
|
* Visual and Computer Graphics Library o o *
|
||||||
* _ O _ *
|
* _ O _ *
|
||||||
* Copyright(C) 2004 \/)\/ *
|
* Copyright(C) 2004-2012 \/)\/ *
|
||||||
* Visual Computing Lab /\/| *
|
* Visual Computing Lab /\/| *
|
||||||
* ISTI - Italian National Research Council | *
|
* ISTI - Italian National Research Council | *
|
||||||
* \ *
|
* \ *
|
||||||
|
@ -21,30 +21,20 @@
|
||||||
* *
|
* *
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
#if defined(_MSC_VER)
|
#ifndef __VCG_MESH
|
||||||
#pragma warning( disable : 4804 )
|
#define __VCG_MESH
|
||||||
#endif
|
|
||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include <set>
|
#include <set>
|
||||||
#include <vcg/space/box3.h>
|
#include <exception>
|
||||||
#include <vcg/space/color4.h>
|
|
||||||
#include <vcg/math/shot.h>
|
|
||||||
|
|
||||||
|
#include <vcg/complex/exception.h>
|
||||||
#include <vcg/container/simple_temporary_data.h>
|
#include <vcg/container/simple_temporary_data.h>
|
||||||
#include <vcg/simplex/vertex/base.h>
|
|
||||||
#include <vcg/simplex/edge/base.h>
|
|
||||||
#include <vcg/simplex/face/base.h>
|
|
||||||
#include <vcg/connectors/hedge.h>
|
|
||||||
#include <vcg/complex/used_types.h>
|
#include <vcg/complex/used_types.h>
|
||||||
#include <vcg/container/derivation_chain.h>
|
|
||||||
#include <vcg/complex/allocate.h>
|
#include <vcg/complex/allocate.h>
|
||||||
|
|
||||||
|
|
||||||
#ifndef __VCG_MESH
|
|
||||||
#define __VCG_MESH
|
|
||||||
|
|
||||||
namespace vcg {
|
namespace vcg {
|
||||||
namespace tri {
|
namespace tri {
|
||||||
/** \addtogroup trimesh */
|
/** \addtogroup trimesh */
|
||||||
|
@ -197,22 +187,34 @@ class TriMesh
|
||||||
|
|
||||||
typedef Box3<ScalarType> BoxType;
|
typedef Box3<ScalarType> BoxType;
|
||||||
|
|
||||||
/// Set of vertices
|
/// Container of vertices, usually a vector.
|
||||||
VertContainer vert;
|
VertContainer vert;
|
||||||
/// Actual number of vertices
|
/// Current number of vertices; this member is for internal use only. You should always use the VN() member
|
||||||
int vn;
|
int vn;
|
||||||
/// Set of faces
|
/// Current number of vertices
|
||||||
FaceContainer face;
|
inline int VN() const { return vn; }
|
||||||
/// Actual number of faces
|
|
||||||
int fn;
|
/// Container of edges, usually a vector.
|
||||||
/// Set of edges
|
|
||||||
EdgeContainer edge;
|
EdgeContainer edge;
|
||||||
/// Actual number of edges
|
/// Current number of edges; this member is for internal use only. You should always use the EN() member
|
||||||
int en;
|
int en;
|
||||||
/// Set of hedges
|
/// Current number of edges
|
||||||
HEdgeContainer hedge;
|
inline int EN() const { return en; }
|
||||||
/// Actual number of hedges
|
|
||||||
|
/// Container of faces, usually a vector.
|
||||||
|
FaceContainer face;
|
||||||
|
/// Current number of faces; this member is for internal use only. You should always use the FN() member
|
||||||
|
int fn;
|
||||||
|
/// Current number of faces
|
||||||
|
inline int FN() const { return fn; }
|
||||||
|
|
||||||
|
/// Container of half edges, usually a vector.
|
||||||
|
HEdgeContainer hedge;
|
||||||
|
/// Current number of hedges
|
||||||
int hn;
|
int hn;
|
||||||
|
/// Current number of hedges; this member is for internal use only. You should always use the HN() member
|
||||||
|
inline int HN() const { return hn; }
|
||||||
|
|
||||||
/// Bounding box of the mesh
|
/// Bounding box of the mesh
|
||||||
Box3<ScalarType> bbox;
|
Box3<ScalarType> bbox;
|
||||||
|
|
||||||
|
@ -361,7 +363,7 @@ void Clear()
|
||||||
{
|
{
|
||||||
vert.clear();
|
vert.clear();
|
||||||
face.clear();
|
face.clear();
|
||||||
edge.clear();
|
edge.clear();
|
||||||
// textures.clear();
|
// textures.clear();
|
||||||
// normalmaps.clear();
|
// normalmaps.clear();
|
||||||
vn = 0;
|
vn = 0;
|
||||||
|
@ -380,38 +382,6 @@ int & VertexNumber(){ return vn;}
|
||||||
/// The incremental mark
|
/// The incremental mark
|
||||||
int imark;
|
int imark;
|
||||||
|
|
||||||
/// Calcolo del volume di una mesh chiusa
|
|
||||||
ScalarType Volume()
|
|
||||||
{
|
|
||||||
FaceIterator fi;
|
|
||||||
int j,k;
|
|
||||||
ScalarType V = 0;
|
|
||||||
CoordType T,N,B;
|
|
||||||
|
|
||||||
for(fi = face.begin(); fi!=face.end(); ++fi)
|
|
||||||
{
|
|
||||||
for(j = 0; j < 3; ++j)
|
|
||||||
{
|
|
||||||
/*calcolo tangente, normale e binormale (6 volte)*/
|
|
||||||
k = (j+1)%3;
|
|
||||||
T = (*fi).P(k) - (*fi).P(j);
|
|
||||||
T.Normalize();
|
|
||||||
B = ( (*fi).P( k ) - (*fi).P(j) ) ^
|
|
||||||
( (*fi).P((k+1)%3) - (*fi).P(j) ) ;
|
|
||||||
B.Normalize();
|
|
||||||
N = T ^ B;
|
|
||||||
|
|
||||||
CoordType pj = (*fi).P(j);
|
|
||||||
CoordType pk = (*fi).P(k);
|
|
||||||
|
|
||||||
|
|
||||||
V += (pk* T )*(pk*N)*(pk*B);
|
|
||||||
V += (pj*(-T))*(pj*N)*(pj*B);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return V/6.0;
|
|
||||||
}
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
// TriMesh cannot be copied. Use Append (see vcg/complex/append.h)
|
// TriMesh cannot be copied. Use Append (see vcg/complex/append.h)
|
||||||
TriMesh operator =(const TriMesh & /*m*/){assert(0);return TriMesh();}
|
TriMesh operator =(const TriMesh & /*m*/){assert(0);return TriMesh();}
|
||||||
|
|
|
@ -0,0 +1,35 @@
|
||||||
|
/****************************************************************************
|
||||||
|
* VCGLib o o *
|
||||||
|
* Visual and Computer Graphics Library o o *
|
||||||
|
* _ O _ *
|
||||||
|
* Copyright(C) 2004-2012 \/)\/ *
|
||||||
|
* Visual Computing Lab /\/| *
|
||||||
|
* ISTI - Italian National Research Council | *
|
||||||
|
* \ *
|
||||||
|
* All rights reserved. *
|
||||||
|
* *
|
||||||
|
* This program is free software; you can redistribute it and/or modify *
|
||||||
|
* it under the terms of the GNU General Public License as published by *
|
||||||
|
* the Free Software Foundation; either version 2 of the License, or *
|
||||||
|
* (at your option) any later version. *
|
||||||
|
* *
|
||||||
|
* This program is distributed in the hope that it will be useful, *
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
||||||
|
* GNU General Public License (http://www.gnu.org/licenses/gpl.txt) *
|
||||||
|
* for more details. *
|
||||||
|
* *
|
||||||
|
****************************************************************************/
|
||||||
|
#ifndef __VCG_EXCEPTION_H
|
||||||
|
#define __VCG_EXCEPTION_H
|
||||||
|
|
||||||
|
namespace vcg
|
||||||
|
{
|
||||||
|
class MissingComponentException : public std::exception
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
MissingComponentException() {}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif // EXCEPTION_H
|
|
@ -1,13 +1,23 @@
|
||||||
#ifndef VCG_USED_TYPES_H
|
#ifndef VCG_USED_TYPES_H
|
||||||
#define VCG_USED_TYPES_H
|
#define VCG_USED_TYPES_H
|
||||||
|
|
||||||
#include <string>
|
|
||||||
#include <vcg/space/point3.h>
|
#include <vcg/space/point3.h>
|
||||||
#include <vcg/container/derivation_chain.h>
|
#include <vcg/space/box3.h>
|
||||||
|
#include <vcg/space/color4.h>
|
||||||
|
#include <vcg/math/shot.h>
|
||||||
|
#include <vcg/space/texcoord2.h>
|
||||||
|
#include <vcg/space/triangle3.h>
|
||||||
|
|
||||||
|
#include <vcg/container/derivation_chain.h>
|
||||||
|
#include <vcg/complex/all_types.h>
|
||||||
|
#include <vcg/simplex/vertex/component.h>
|
||||||
#include <vcg/simplex/vertex/base.h>
|
#include <vcg/simplex/vertex/base.h>
|
||||||
|
#include <vcg/simplex/face/component.h>
|
||||||
|
#include <vcg/simplex/face/component_polygon.h>
|
||||||
#include <vcg/simplex/face/base.h>
|
#include <vcg/simplex/face/base.h>
|
||||||
|
#include <vcg/simplex/edge/component.h>
|
||||||
#include <vcg/simplex/edge/base.h>
|
#include <vcg/simplex/edge/base.h>
|
||||||
|
#include <vcg/connectors/hedge_component.h>
|
||||||
#include <vcg/connectors/hedge.h>
|
#include <vcg/connectors/hedge.h>
|
||||||
|
|
||||||
namespace vcg{
|
namespace vcg{
|
||||||
|
|
|
@ -20,18 +20,11 @@
|
||||||
* for more details. *
|
* for more details. *
|
||||||
* *
|
* *
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
#include <vcg/complex/complex.h>
|
||||||
|
|
||||||
#ifndef __VCG_HEDGE_
|
#ifndef __VCG_HEDGE_
|
||||||
#define __VCG_HEDGE_
|
#define __VCG_HEDGE_
|
||||||
|
|
||||||
//#include <vcg/space/point3.h>
|
|
||||||
//#include <vcg/space/texcoord2.h>
|
|
||||||
//#include <vcg/space/color4.h>
|
|
||||||
#include <vcg/complex/all_types.h>
|
|
||||||
//#include <vcg/complex/used_types.h>
|
|
||||||
#include <vcg/connectors/hedge_component.h>
|
|
||||||
#include <vcg/container/derivation_chain.h>
|
|
||||||
|
|
||||||
namespace vcg {
|
namespace vcg {
|
||||||
|
|
||||||
/*------------------------------------------------------------------*/
|
/*------------------------------------------------------------------*/
|
||||||
|
|
|
@ -20,14 +20,10 @@
|
||||||
* for more details. *
|
* for more details. *
|
||||||
* *
|
* *
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
#include <vcg/complex/complex.h>
|
||||||
|
|
||||||
#ifndef __VCG_HEDGE_COMPONENT
|
#ifndef __VCG_HEDGE_COMPONENT
|
||||||
#define __VCG_HEDGE_COMPONENT
|
#define __VCG_HEDGE_COMPONENT
|
||||||
//#include <vector>
|
|
||||||
#include <string>
|
|
||||||
//#include <vcg/space/point3.h>
|
|
||||||
//#include <vcg/space/texcoord2.h>
|
|
||||||
#include <vcg/space/color4.h>
|
|
||||||
|
|
||||||
namespace vcg {
|
namespace vcg {
|
||||||
namespace hedge {
|
namespace hedge {
|
||||||
|
|
|
@ -20,17 +20,11 @@
|
||||||
* for more details. *
|
* for more details. *
|
||||||
* *
|
* *
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
#include <vcg/complex/complex.h>
|
||||||
|
|
||||||
#ifndef __VCG_EDGE_PLUS
|
#ifndef __VCG_EDGE_PLUS
|
||||||
#define __VCG_EDGE_PLUS
|
#define __VCG_EDGE_PLUS
|
||||||
|
|
||||||
//#include <vcg/space/point3.h>
|
|
||||||
//#include <vcg/space/texcoord2.h>
|
|
||||||
//#include <vcg/space/color4.h>
|
|
||||||
#include <vcg/complex/all_types.h>
|
|
||||||
//#include <vcg/complex/used_types.h>
|
|
||||||
#include <vcg/simplex/edge/component.h>
|
|
||||||
#include <vcg/container/derivation_chain.h>
|
|
||||||
|
|
||||||
namespace vcg {
|
namespace vcg {
|
||||||
|
|
||||||
|
|
|
@ -20,14 +20,10 @@
|
||||||
* for more details. *
|
* for more details. *
|
||||||
* *
|
* *
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
#include <vcg/complex/complex.h>
|
||||||
|
|
||||||
#ifndef __VCG_EDGE_PLUS_COMPONENT
|
#ifndef __VCG_EDGE_PLUS_COMPONENT
|
||||||
#define __VCG_EDGE_PLUS_COMPONENT
|
#define __VCG_EDGE_PLUS_COMPONENT
|
||||||
#include <vector>
|
|
||||||
#include <string>
|
|
||||||
//#include <vcg/space/point3.h>
|
|
||||||
//#include <vcg/space/texcoord2.h>
|
|
||||||
#include <vcg/space/color4.h>
|
|
||||||
|
|
||||||
namespace vcg {
|
namespace vcg {
|
||||||
namespace edge {
|
namespace edge {
|
||||||
|
|
|
@ -20,18 +20,11 @@
|
||||||
* for more details. *
|
* for more details. *
|
||||||
* *
|
* *
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
#include <vcg/complex/complex.h>
|
||||||
|
|
||||||
#ifndef __VCG_FACE_PLUS
|
#ifndef __VCG_FACE_PLUS
|
||||||
#define __VCG_FACE_PLUS
|
#define __VCG_FACE_PLUS
|
||||||
|
|
||||||
#include <vcg/space/point3.h>
|
|
||||||
#include <vcg/space/texcoord2.h>
|
|
||||||
#include <vcg/space/color4.h>
|
|
||||||
#include <vcg/complex/all_types.h>
|
|
||||||
#include <vcg/simplex/face/component.h>
|
|
||||||
#include <vcg/simplex/face/component_polygon.h>
|
|
||||||
#include <vcg/container/derivation_chain.h>
|
|
||||||
|
|
||||||
namespace vcg {
|
namespace vcg {
|
||||||
|
|
||||||
/*------------------------------------------------------------------*/
|
/*------------------------------------------------------------------*/
|
||||||
|
|
|
@ -20,14 +20,10 @@
|
||||||
* for more details. *
|
* for more details. *
|
||||||
* *
|
* *
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
#include <vcg/complex/complex.h>
|
||||||
#ifndef __VCG_FACE_PLUS_COMPONENT
|
#ifndef __VCG_FACE_PLUS_COMPONENT
|
||||||
#define __VCG_FACE_PLUS_COMPONENT
|
#define __VCG_FACE_PLUS_COMPONENT
|
||||||
|
|
||||||
#include <vector>
|
|
||||||
#include <vcg/space/triangle3.h>
|
|
||||||
#include <vcg/space/texcoord2.h>
|
|
||||||
#include <vcg/space/color4.h>
|
|
||||||
|
|
||||||
namespace vcg {
|
namespace vcg {
|
||||||
|
|
||||||
|
|
|
@ -24,11 +24,6 @@
|
||||||
#ifndef __VCG_POLYGON_COMPONENT
|
#ifndef __VCG_POLYGON_COMPONENT
|
||||||
#define __VCG_POLYGON_COMPONENT
|
#define __VCG_POLYGON_COMPONENT
|
||||||
|
|
||||||
//#include <vector>
|
|
||||||
//#include <vcg/space/triangle3.h>
|
|
||||||
//#include <vcg/space/texcoord2.h>
|
|
||||||
//#include <vcg/space/color4.h>
|
|
||||||
|
|
||||||
namespace vcg {
|
namespace vcg {
|
||||||
namespace face {
|
namespace face {
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -20,62 +20,10 @@
|
||||||
* for more details. *
|
* for more details. *
|
||||||
* *
|
* *
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
/****************************************************************************
|
#include <vcg/complex/complex.h>
|
||||||
History
|
|
||||||
|
|
||||||
$Log: not supported by cvs2svn $
|
|
||||||
Revision 1.12 2008/03/17 11:39:14 ganovelli
|
|
||||||
added curvature and curvatruredir (compiled .net 2005 and gcc)
|
|
||||||
|
|
||||||
Revision 1.11 2008/02/04 21:26:49 ganovelli
|
|
||||||
added ImportData which imports all local attributes into vertexplus and faceplus.
|
|
||||||
A local attribute is everything (N(), C(), Q()....) except pointers to other simplices
|
|
||||||
(i.e. FFAdj, VFAdj, VertexRef) which are set to NULL.
|
|
||||||
Added some function for const attributes
|
|
||||||
|
|
||||||
Revision 1.10 2007/03/12 15:37:21 tarini
|
|
||||||
Texture coord name change! "TCoord" and "Texture" are BAD. "TexCoord" is GOOD.
|
|
||||||
|
|
||||||
Revision 1.9 2007/02/12 19:00:56 ganovelli
|
|
||||||
added Name(std:vector<std::string>& n) that fills n with the names of the attribute of the vertex type
|
|
||||||
|
|
||||||
Revision 1.8 2006/09/28 17:34:11 cignoni
|
|
||||||
Added Missing GetBBox function
|
|
||||||
|
|
||||||
Revision 1.7 2006/02/27 17:42:43 ponchio
|
|
||||||
Added some documentation.
|
|
||||||
|
|
||||||
Revision 1.6 2005/12/05 15:58:10 cignoni
|
|
||||||
Removed spurious definition of flags in Aritymax that was overriding the correct definition in EmplyBitFlags and BitFlags classes
|
|
||||||
|
|
||||||
Revision 1.5 2005/12/02 00:44:41 cignoni
|
|
||||||
Reformatted and compacted flags code.
|
|
||||||
|
|
||||||
Revision 1.4 2005/11/16 22:59:35 cignoni
|
|
||||||
Standardized name of flags. It is plural becouse each simplex has many flag.
|
|
||||||
|
|
||||||
Revision 1.3 2005/11/12 18:36:51 cignoni
|
|
||||||
Added 'Visited' flag functions
|
|
||||||
|
|
||||||
Revision 1.2 lags2004/04/03 13:33:55 cignoni
|
|
||||||
Missing include
|
|
||||||
|
|
||||||
Revision 1.1 2004/03/29 08:36:26 cignoni
|
|
||||||
First working version!
|
|
||||||
|
|
||||||
|
|
||||||
****************************************************************************/
|
|
||||||
#ifndef __VCG_VERTEX_PLUS
|
#ifndef __VCG_VERTEX_PLUS
|
||||||
#define __VCG_VERTEX_PLUS
|
#define __VCG_VERTEX_PLUS
|
||||||
|
|
||||||
//#include <vcg/space/point3.h>
|
|
||||||
#include <vcg/space/texcoord2.h>
|
|
||||||
#include <vcg/space/color4.h>
|
|
||||||
#include <vcg/complex/all_types.h>
|
|
||||||
#include <vcg/simplex/vertex/component.h>
|
|
||||||
//#include <vcg/complex/used_types.h>
|
|
||||||
#include <vcg/container/derivation_chain.h>
|
|
||||||
|
|
||||||
namespace vcg {
|
namespace vcg {
|
||||||
|
|
||||||
/*------------------------------------------------------------------*/
|
/*------------------------------------------------------------------*/
|
||||||
|
|
|
@ -20,14 +20,9 @@
|
||||||
* for more details. *
|
* for more details. *
|
||||||
* *
|
* *
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
#include <vcg/complex/complex.h>
|
||||||
#ifndef __VCG_VERTEX_PLUS_COMPONENT
|
#ifndef __VCG_VERTEX_PLUS_COMPONENT
|
||||||
#define __VCG_VERTEX_PLUS_COMPONENT
|
#define __VCG_VERTEX_PLUS_COMPONENT
|
||||||
#include <vector>
|
|
||||||
#include <string>
|
|
||||||
#include <vcg/space/point3.h>
|
|
||||||
#include <vcg/space/texcoord2.h>
|
|
||||||
#include <vcg/space/color4.h>
|
|
||||||
|
|
||||||
namespace vcg {
|
namespace vcg {
|
||||||
namespace vertex {
|
namespace vertex {
|
||||||
/*
|
/*
|
||||||
|
|
Loading…
Reference in New Issue