Removed doxygen warnings
This commit is contained in:
parent
90cdbb6214
commit
94fe86b876
|
@ -1,4 +1,4 @@
|
||||||
/** \page adjacency
|
/** \page adjacency
|
||||||
Adjacency
|
Adjacency
|
||||||
=========
|
=========
|
||||||
VCG Lib does not have a hard-coded way to encode the adjacencies among simplices. It all depends on which attributes are stored with the simplices and how they are used. I the previous examples the definition of face has always included the attribute vcg::face::VertexRef , which stores 3 pointers to MyVertex accessible with the member function V() (the well known Indexed Data Structure). The reason is that almost all of the algorithms currently implemented in VCG Lib assume its presence. So, if your type MyFace does not include the attribute vcg::face::VertexRef, the definition will be correct but almost no algorithm will work..
|
VCG Lib does not have a hard-coded way to encode the adjacencies among simplices. It all depends on which attributes are stored with the simplices and how they are used. I the previous examples the definition of face has always included the attribute vcg::face::VertexRef , which stores 3 pointers to MyVertex accessible with the member function V() (the well known Indexed Data Structure). The reason is that almost all of the algorithms currently implemented in VCG Lib assume its presence. So, if your type MyFace does not include the attribute vcg::face::VertexRef, the definition will be correct but almost no algorithm will work..
|
||||||
|
@ -130,7 +130,9 @@ sf/apps/sample/trimesh_pos_demo/trimesh_pos_demo.cpp
|
||||||
VF Adjacency
|
VF Adjacency
|
||||||
------------
|
------------
|
||||||
|
|
||||||
VCG Lib implements vertex-to-face adjacency, i.e. given a vertex v we can retrieve all the faces incident to v. Let v_star =(f0,f1,f2,...,fk) be the set faces incident to v arranged in a sequence (with no preferred criteria). VCG Lib allows to retrieve v_star in optimal time ( O(#star_v) by using the following attibutes:
|
VCG Lib implements vertex-to-face adjacency, i.e. given a vertex v we can retrieve all the faces incident to v.
|
||||||
|
Let v_star =(f0,f1,f2,...,fk) be the set faces incident to v arranged in a sequence (with no preferred criteria).
|
||||||
|
VCG Lib allows to retrieve v_star in optimal time ( O( star_v) ) by using the following attibutes:
|
||||||
|
|
||||||
vcg::vertex::VFAdj which is a vertex attribute containing a pointer to f0
|
vcg::vertex::VFAdj which is a vertex attribute containing a pointer to f0
|
||||||
vcg::face::VFAdj which is a face attribute containing a pointer to the next face in the list v_star for each of its 3 vertices (4 in the case of tetrahedra)
|
vcg::face::VFAdj which is a face attribute containing a pointer to the next face in the list v_star for each of its 3 vertices (4 in the case of tetrahedra)
|
||||||
|
|
|
@ -1,36 +1,38 @@
|
||||||
/**
|
/**
|
||||||
\page "VCG Library Coding Guide"
|
\page "VCG Library Coding Guide"
|
||||||
\section style VCG Library Coding Guide
|
VCG Library Coding Guide
|
||||||
|
=========================
|
||||||
|
|
||||||
\subsection naming Naming Rules
|
Naming Rules
|
||||||
|
------------
|
||||||
|
|
||||||
<P><B><I>Class names </I></B> with first letter Uppercase and internal
|
<B><I>Class names </I></B> with first letter Uppercase and internal
|
||||||
uppercase to separate compound words.\n
|
uppercase to separate compound words.\n
|
||||||
|
|
||||||
<P><B><I>Function members</I></B> of classes follow the same rule.</P>
|
<B><I>Function members</I></B> of classes follow the same rule.
|
||||||
|
|
||||||
<P>Example:</P>
|
Example:
|
||||||
|
|
||||||
\code
|
\code
|
||||||
Point3f
|
Point3f
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
ScalarType &V(const int i);
|
ScalarType &V(const int i);
|
||||||
}
|
}
|
||||||
\endcode
|
\endcode
|
||||||
|
|
||||||
<P><B><I>Public Variable members</I></B> has the first letter
|
<B><I>Public Variable members</I></B> has the first letter
|
||||||
lowercase and internal uppercase to separate compound words.</P>
|
lowercase and internal uppercase to separate compound words.
|
||||||
|
|
||||||
<P>Example:</P>
|
Example:
|
||||||
|
|
||||||
<pre></pre>
|
<pre></pre>
|
||||||
|
|
||||||
<P><B><I>Private Variable members</I></B> has an underscore as first char and
|
<B><I>Private Variable members</I></B> has an underscore as first char and
|
||||||
the first letter lowercase and internal uppercase to separate compound
|
the first letter lowercase and internal uppercase to separate compound
|
||||||
words.</P>
|
words.
|
||||||
|
|
||||||
<P>Example:</P>
|
Example:
|
||||||
|
|
||||||
<pre>
|
<pre>
|
||||||
Point3f
|
Point3f
|
||||||
|
@ -40,65 +42,62 @@ words.</P>
|
||||||
}
|
}
|
||||||
</pre>
|
</pre>
|
||||||
|
|
||||||
<P><B><I>Class Template Arguments</I></B> all capitalized and with names
|
<B><I>Class Template Arguments</I></B> all capitalized and with names
|
||||||
remembering where they have been defined.<br>
|
remembering where they have been defined.<br>
|
||||||
Class TypeDefs used for templated Class arguments or for shortness are just like Class Names,
|
Class TypeDefs used for templated Class arguments or for shortness are just like Class Names,
|
||||||
but ending with “Type”, “Iterator”, “Pointer”, or “Container”.</P>
|
but ending with “Type”, “Iterator”, “Pointer”, or “Container”.
|
||||||
|
|
||||||
<P>Example:</P>
|
Example:
|
||||||
<pre>
|
<pre>
|
||||||
typedef typename VertexType::CoordType CoordType;
|
typedef typename VertexType::CoordType CoordType;
|
||||||
typedef typename VertContainer::iterator VertexIterator;
|
typedef typename VertContainer::iterator VertexIterator;
|
||||||
|
|
||||||
</pre>
|
</pre>
|
||||||
|
|
||||||
<H2 >Header Files</H2>
|
<H2 >Header Files</H2>
|
||||||
<P>Header filenames and folders always fully lower case. Compound names
|
Header filenames and folders always fully lower case. Compound names
|
||||||
are separated by '_'.</P>
|
are separated by '_'.
|
||||||
|
|
||||||
<P>Example:</P>
|
Example:
|
||||||
|
|
||||||
<pre>
|
#include<vcg/space/point3.h>;
|
||||||
#include<vcg/space/point3.h>
|
|
||||||
</pre>
|
|
||||||
|
|
||||||
<P>Each include file must begin with the standard legal
|
Each include file must begin with the standard legal
|
||||||
disclamier/license intestation and report in the first line of history
|
disclamier/license intestation and report in the first line of history
|
||||||
the $LOG$ cvs string.</P>
|
the $LOG$ cvs string.
|
||||||
|
|
||||||
<P>The following automatically generated history can be, from time to
|
The following automatically generated history can be, from time to
|
||||||
time, compressed and shortened to save space.</P>
|
time, compressed and shortened to save space.
|
||||||
|
|
||||||
<P>Each file of the library has to include all the files that it
|
Each file of the library has to include all the files that it
|
||||||
requires. A include file should rely on the files included by its own
|
requires. A include file should rely on the files included by its own
|
||||||
include files. Example: in vcg/space/box3.h:</P>
|
include files. Example: in vcg/space/box3.h:
|
||||||
|
|
||||||
<pre>
|
|
||||||
#include<vcg/math/base.h> // not necessary because included by point3.h
|
|
||||||
|
|
||||||
#include<vcg/space/point3.h>
|
#include<vcg/math/base.h>; // not necessary because included by point3.h
|
||||||
</pre>
|
#include<vcg/space/point3.h>;
|
||||||
|
|
||||||
<P>In Class definitions place all the prototypes all together before
|
|
||||||
the inline or templated implementations.</P>
|
|
||||||
|
|
||||||
<H2 >Editing Rules</H2>
|
In Class definitions place all the prototypes all together before
|
||||||
|
the inline or templated implementations.
|
||||||
|
|
||||||
<P>Tabs are equivalent to two spaces.</P>
|
<H2 >Editing Rules</H2>
|
||||||
|
|
||||||
<P>There are no strict rules for the placement of '{' or indenting.</P>
|
Tabs are equivalent to two spaces.
|
||||||
|
|
||||||
<H2 >Constructors and casting</H2>
|
There are no strict rules for the placement of '{' or indenting.
|
||||||
|
|
||||||
<P>All basic classes (point3, box3 ecc) must have null
|
<H2 >Constructors and casting</H2>
|
||||||
|
|
||||||
|
All basic classes (point3, box3 ecc) must have null
|
||||||
constructors. Non null constructors can be added in debug
|
constructors. Non null constructors can be added in debug
|
||||||
versions.</P>
|
versions.
|
||||||
|
|
||||||
<P>Implicit casting is disallowed. Write a member Import function for
|
Implicit casting is disallowed. Write a member Import function for
|
||||||
casting from different integral types and a static.<br>
|
casting from different integral types and a static.<br>
|
||||||
Construct to build an object from different a integral type.</P>
|
Construct to build an object from different a integral type.
|
||||||
|
|
||||||
<P>Example:</P>
|
Example:
|
||||||
|
|
||||||
<pre>
|
<pre>
|
||||||
Point3f pf(1.0f,0.0f,0.0f);
|
Point3f pf(1.0f,0.0f,0.0f);
|
||||||
|
@ -106,10 +105,7 @@ Construct to build an object from different a integral type.</P>
|
||||||
pf.Import(pd);
|
pf.Import(pd);
|
||||||
</pre>
|
</pre>
|
||||||
|
|
||||||
<H2 >Comment and documenting</H2>
|
<H2 >Comment and documenting</H2>
|
||||||
<P>All the classes, algorithms and functions <B>MUST</B> be documented using Doxygen. Please add a short intro before each class explaining design choices and for non trivial classes give some short usage example. For complex classes try to group similar members under categories. Non trivial algorithms should refer the paper/book where they are explained.</p>
|
All the classes, algorithms and functions <B>MUST</B> be documented using Doxygen. Please add a short intro before each class explaining design choices and for non trivial classes give some short usage example. For complex classes try to group similar members under categories. Non trivial algorithms should refer the paper/book where they are explained.
|
||||||
<P> Namespaces and files should be also documented trying to explain how the file/namespace partitioning works.
|
Namespaces and files should be also documented trying to explain how the file/namespace partitioning works.
|
||||||
</P>
|
|
||||||
</BODY>
|
|
||||||
</HTML>
|
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in New Issue