Improving documentation. Reordered groups and started documenting main components
This commit is contained in:
parent
4c0acdbb7c
commit
9658740974
|
@ -9,19 +9,14 @@ This module contains the documentation for the types and the functions used for.
|
|||
This module contains the documentation for the types and the functions used for representing and managing mathematical entities.
|
||||
*/
|
||||
|
||||
/** \defgroup simplex Simplexes
|
||||
The module containing the various simplicial complexes
|
||||
*/
|
||||
|
||||
//@{
|
||||
/** \defgroup vertex Vertexes
|
||||
Vertex of edge, triangular and tetrahedral meshes
|
||||
This module contains the documentation for the types and the functions used for representing and managing vertexes of meshes.
|
||||
*/
|
||||
|
||||
/** \defgroup face Faces
|
||||
Face of a triangular or a tetrahedral mesh
|
||||
*/
|
||||
//@}
|
||||
|
||||
/** \defgroup trimesh Triangular Meshes
|
||||
This module contains the documentation for the types and the functions used for representing and managing generic \b triangular \b meshes.
|
||||
|
|
|
@ -30,8 +30,6 @@ namespace tri {
|
|||
|
||||
/// \ingroup trimesh
|
||||
|
||||
/// \headerfile edges.h vcg/complex/algorithms/update/edges.h
|
||||
|
||||
/// \brief This class is used to compute or update the precomputed data used to efficiently compute point-face distances.
|
||||
template <class ComputeMeshType>
|
||||
class UpdateComponentEP
|
||||
|
|
|
@ -40,11 +40,6 @@ namespace tri {
|
|||
/** \addtogroup trimesh */
|
||||
/*@{*/
|
||||
/*@{*/
|
||||
/** Class Mesh.
|
||||
This is class for definition of a mesh.
|
||||
@param VertContainerType (Template Parameter) Specifies the type of the vertices container any the vertex type.
|
||||
@param FaceContainer (Template Parameter) Specifies the type of the faces container any the face type.
|
||||
*/
|
||||
|
||||
|
||||
/* MeshTypeHolder is a class which is used to define the types in the mesh
|
||||
|
@ -135,13 +130,12 @@ namespace tri {
|
|||
typedef typename HEdgeContainer::const_iterator ConstHEdgeIterator;
|
||||
};
|
||||
|
||||
|
||||
/*struct DummyContainer {};
|
||||
template <class CONT> struct Deriver: public MeshTypeHolder<CONT, typename CONT::value_type::IAm>{};
|
||||
template <> struct Deriver<DummyContainer>{}*/;
|
||||
|
||||
template <typename T, typename CONT> struct Der: public MeshTypeHolder<T,CONT, typename CONT::value_type::IAm>{};
|
||||
struct DummyContainer{struct value_type{ typedef int IAm;}; };
|
||||
/** \brief The official \b mesh class
|
||||
|
||||
As explained in \ref basic_concepts, this class is templated over a list of container of simplexes (like vertex, face, edges)
|
||||
*/
|
||||
|
||||
template < class Container0 = DummyContainer, class Container1 = DummyContainer, class Container2 = DummyContainer, class Container3 = DummyContainer >
|
||||
class TriMesh
|
||||
|
|
|
@ -20,18 +20,14 @@
|
|||
* for more details. *
|
||||
* *
|
||||
****************************************************************************/
|
||||
#include <vcg/complex/complex.h>
|
||||
#ifndef __VCG_VERTEX_PLUS_COMPONENT
|
||||
#define __VCG_VERTEX_PLUS_COMPONENT
|
||||
namespace vcg {
|
||||
namespace vertex {
|
||||
/*
|
||||
Some naming Rules
|
||||
All the Components that can be added to a vertex should be defined in the namespace vert:
|
||||
|
||||
namespace vertex {
|
||||
/** \addtogroup vertex
|
||||
@{
|
||||
*/
|
||||
|
||||
/*------------------------- Base Classes -----------------------------------------*/
|
||||
/*------------------------- Base Classes -----------------------------------------*/
|
||||
|
||||
template <class S>
|
||||
struct CurvatureDirBaseType{
|
||||
|
@ -156,7 +152,10 @@ public:
|
|||
};
|
||||
|
||||
/*-------------------------- COORD ----------------------------------------*/
|
||||
/*! \brief Geometric position of the vertex
|
||||
|
||||
Stored as a templated Point3.
|
||||
*/
|
||||
template <class A, class T> class Coord: public T {
|
||||
public:
|
||||
typedef A CoordType;
|
||||
|
@ -181,6 +180,10 @@ public: static void Name(std::vector<std::string> & name){name.push_back(std::st
|
|||
};
|
||||
|
||||
/*-------------------------- NORMAL ----------------------------------------*/
|
||||
/*! \brief Normal of the vertex
|
||||
|
||||
Stored as a templated Point3. It can be of a different type of the Coord Component
|
||||
*/
|
||||
|
||||
template <class A, class T> class Normal: public T {
|
||||
public:
|
||||
|
@ -213,6 +216,10 @@ public: static void Name(std::vector<std::string> & name){name.push_back(std::st
|
|||
|
||||
|
||||
/*-------------------------- INCREMENTAL MARK ----------------------------------------*/
|
||||
/*! \brief Per vertex Incremental Mark
|
||||
|
||||
It is just an int that allow to efficent un-marking of the whole mesh. \sa UnmarkAll
|
||||
*/
|
||||
|
||||
template <class T> class Mark: public T {
|
||||
public:
|
||||
|
@ -231,6 +238,12 @@ public:
|
|||
};
|
||||
|
||||
/*-------------------------- TEXCOORD ----------------------------------------*/
|
||||
/*! \brief Per vertex Texture Coords
|
||||
|
||||
Note that to have multiple different TexCoord for a single vertex (as it happens on atlas where a vertex can belong to two triangles mapped on different portionof the texture) you have two options:
|
||||
- duplicate vertexes
|
||||
- use PerWedge Texture coords
|
||||
*/
|
||||
|
||||
template <class A, class TT> class TexCoord: public TT {
|
||||
public:
|
||||
|
@ -510,6 +523,9 @@ private:
|
|||
int _zp ;
|
||||
};
|
||||
|
||||
/**
|
||||
@}
|
||||
*/
|
||||
|
||||
|
||||
} // end namespace vert
|
||||
|
|
Loading…
Reference in New Issue