use macro for documenting named parameters

This commit is contained in:
Sébastien Loriot 2015-04-01 18:15:17 +02:00
parent 9f1f8ae95d
commit c04077e7af
11 changed files with 113 additions and 124 deletions

View File

@ -7,4 +7,9 @@ INPUT = ${CMAKE_SOURCE_DIR}/Polygon_mesh_processing/doc/Polygon_mesh_processing
# custom options for this package
EXTRACT_ALL = false
HIDE_UNDOC_CLASSES = true
WARN_IF_UNDOCUMENTED = false
WARN_IF_UNDOCUMENTED = false
ALIASES += "cgalNamedParamsBegin=<dl class=\"params\"><dt>Named Parameters</dt><dd> <table class=\"params\">"
ALIASES += "cgalNamedParamsEnd=</table> </dd> </dl>"
ALIASES += "cgalParamBegin{1}=<tr><td class=\"paramname\">\1</td><td>"
ALIASES += "cgalParamEnd=</td></tr>"

View File

@ -69,11 +69,10 @@ void sum_normals(const PM& pmesh,
* @param pmesh the polygon mesh containing `f`
* @param np optional sequence of \ref namedparameters among the ones listed below
*
\b Named \b parameters
<ul>
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh`
<li>\b kernel a geometric traits class instance
</ul>
* \cgalNamedParamsBegin
* \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
* \cgalParamBegin{kernel} a geometric traits class instance \cgalParamEnd
* \cgalNamedParamsEnd
*
* @return the computed normal. The return type is a 3D vector type. It is
* either deduced from the `kernel` \ref namedparameters if provided,
@ -118,11 +117,10 @@ compute_face_normal(typename boost::graph_traits<PolygonMesh>::face_descriptor f
* @param fnm the property map in which the normals are written
* @param np optional sequence of \ref namedparameters among the ones listed below
*
\b Named \b parameters
<ul>
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh`
<li>\b kernel a geometric traits class instance
</ul>
* \cgalNamedParamsBegin
* \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
* \cgalParamBegin{kernel} a geometric traits class instance \cgalParamEnd
* \cgalNamedParamsEnd
*
*/
template <typename PolygonMesh
@ -152,11 +150,10 @@ compute_face_normals(const PolygonMesh& pmesh
* @param pmesh the polygon mesh containing `v`
* @param np optional sequence of \ref namedparameters among the ones listed below
*
\b Named \b parameters
<ul>
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh`
<li>\b kernel a geometric traits class instance
</ul>
* \cgalNamedParamsBegin
* \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
* \cgalParamBegin{kernel} a geometric traits class instance \cgalParamEnd
* \cgalNamedParamsEnd
*
* @return the computed normal. The return type is a 3D vector type. It is
* either deduced from the `kernel` \ref namedparameters if provided,
@ -208,11 +205,11 @@ compute_vertex_normal(typename boost::graph_traits<PolygonMesh>::vertex_descript
* @param vnm the property map in which the normals are written
* @param np optional sequence of \ref namedparameters among the ones listed below
*
\b Named \b parameters
<ul>
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh`
<li>\b kernel a geometric traits class instance
</ul>
* \cgalNamedParamsBegin
* \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
* \cgalParamBegin{kernel} a geometric traits class instance \cgalParamEnd
* \cgalNamedParamsEnd
*
*/
template <typename PolygonMesh
, typename VertexNormalMap
@ -252,11 +249,11 @@ compute_vertex_normals(const PolygonMesh& pmesh
* @param fnm the property map in which the face normals are written
* @param np optional sequence of \ref namedparameters among the ones listed below
*
\b Named \b parameters
<ul>
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh`
<li>\b kernel a geometric traits class instance
</ul>
* \cgalNamedParamsBegin
* \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
* \cgalParamBegin{kernel} a geometric traits class instance \cgalParamEnd
* \cgalNamedParamsEnd
*
*/
template <typename PolygonMesh
, typename VertexNormalMap

View File

@ -409,10 +409,9 @@ namespace Polygon_mesh_processing{
* \param out the output iterator that collects faces from the same connected component as `seed_face`
* \param np optional \ref namedparameters described below
*
* \b Named \b parameters
* <ul>
* <li>\b edge_is_constrained_map a property map containing the constrained-or-not status of each edge of `pmesh`
* </ul>
* \cgalNamedParamsBegin
* \cgalParamBegin{edge_is_constrained_map} a property map containing the constrained-or-not status of each edge of `pmesh` \cgalParamEnd
* \cgalNamedParamsEnd
*
* \returns the output iterator.
*
@ -487,11 +486,10 @@ connected_component(typename boost::graph_traits<PolygonMesh>::face_descriptor s
* \param fcm the property map with indices of components associated to faces in `pmesh`
* \param np optional \ref namedparameters described below
*
* \b Named \b parameters
* <ul>
* <li>\b edge_is_constrained_map a property map containing the constrained-or-not status of each edge of `pmesh`
* <li>\b face_index_map a property map containing the index of each face of `pmesh`
* </ul>
* \cgalNamedParamsBegin
* \cgalParamBegin{edge_is_constrained_map} a property map containing the constrained-or-not status of each edge of `pmesh` \cgalParamEnd
* \cgalParamBegin{face_index_map} a property map containing the index of each face of `pmesh` \cgalParamEnd
* \cgalNamedParamsEnd
*
* \returns the number of connected components.
*/
@ -558,12 +556,11 @@ connected_components(const PolygonMesh& pmesh,
* \param nb_components_to_keep the number of components to be kept
* \param np optional \ref namedparameters described below
*
* \b Named \b parameters
* <ul>
* <li>\b edge_is_constrained_map a property map containing the constrained-or-not status of each edge of `pmesh`
* <li>\b face_index_map a property map containing the index of each face of `pmesh`
* <li>\b vertex_index_map a property map containing the index of each vertex of `pmesh`
* </ul>
* \cgalNamedParamsBegin
* \cgalParamBegin{edge_is_constrained_map} a property map containing the constrained-or-not status of each edge of `pmesh` \cgalParamEnd
* \cgalParamBegin{face_index_map} a property map containing the index of each face of `pmesh` \cgalParamEnd
* \cgalParamBegin{vertex_index_map} a property map containing the index of each vertex of `pmesh` \cgalParamEnd
* \cgalNamedParamsEnd
*
* \return the number of connected components erased (ignoring isolated vertices).
*/

View File

@ -76,13 +76,12 @@ namespace internal {
@param vertices the vertices of the patches to be faired (the positions of only those vertices will be changed)
@param np optional sequence of \ref namedparameters among the ones listed below
\b Named \b parameters
<ul>
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh`
<li>\b fairing_continuity tangential continuity of the output surface patch. The larger `fairing_continuity` gets, the more fixed vertices are required.
<li>\b sparse_linear_solver an instance of the sparse linear solver used for fairing
</ul>
\cgalNamedParamsBegin
\cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
\cgalParamBegin{fairing_continuity} tangential continuity of the output surface patch. The larger `fairing_continuity` gets, the more fixed vertices are required \cgalParamEnd
\cgalParamBegin{sparse_linear_solver} an instance of the sparse linear solver used for fairing \cgalParamEnd
\cgalNamedParamsEnd
@return `true` if fairing is successful, otherwise no vertex position is changed
@todo accuracy of solvers are not good, for example when there is no boundary condition pre_factor should fail, but it does not.

View File

@ -74,11 +74,10 @@ namespace internal{
* @param pmesh the closed polygon mesh to be tested
* @param np optional sequence of \ref namedparameters among the ones listed below
*
\b Named \b parameters
<ul>
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh`
<li>\b kernel a geometric traits class instance
</ul>
* \cgalNamedParamsBegin
* \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
* \cgalParamBegin{kernel} a geometric traits class instance \cgalParamEnd
* \cgalNamedParamsEnd
*
* \todo code : The following only handles polyhedron with one connected component
* the code, the sample example and the plugin must be updated.

View File

@ -49,12 +49,12 @@ namespace Polygon_mesh_processing {
@param vertices_out output iterator into which descriptors of new vertices are put
@param np optional sequence of \ref namedparameters among the ones listed below
\b Named \b parameters
<ul>
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh`.
Instance of a class model of `ReadWritePropertyMap`
<li>\b density_control_factor factor to control density of the ouput mesh, where larger values cause denser refinements. The density of vertices of `faces_out` is this factor times higher than the vertices of `faces.`
</ul>
\cgalNamedParamsBegin
\cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh`
Instance of a class model of `ReadWritePropertyMap` \cgalParamEnd
\cgalParamBegin{density_control_factor} factor to control density of the ouput mesh, where larger values cause denser refinements. The density of vertices of `faces_out` is this factor times higher than the vertices of `faces.` \cgalParamEnd
\cgalNamedParamsEnd
@return pair of `faces_out` and `vertices_out`

View File

@ -244,20 +244,20 @@ namespace internal {
/// @param tmesh the triangle mesh to be repaired
/// @param np optional \ref namedparameters described below
///
/// \b Named \b parameters
/// <ul>
/// <li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh`. The type of this mad is model of `ReadWritePropertyMap`.
/// <li>\b kernel a geometric traits class instance.
/// The traits class must provide the nested types :
/// - `Point_3`,
/// - `Compare_distance_3` to compute the distance between 2 points
/// - `Collinear_are_ordered_along_line_3` to check whether 3 collinear points are ordered
/// - `Collinear_3` to check whether 3 points are collinear
/// - `Less_xyz_3` to compare lexicographically two points
/// - `Equal_3` to check whether 2 points are identical
/// - for each functor Foo, a function `Foo foo_object()`
/// </ul>
/// \cgalNamedParamsBegin
/// \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh`. The type of this mad is model of `ReadWritePropertyMap` \cgalParamEnd
/// \cgalParamBegin{kernel} a geometric traits class instance.
/// The traits class must provide the nested types :
/// - `Point_3`,
/// - `Compare_distance_3` to compute the distance between 2 points
/// - `Collinear_are_ordered_along_line_3` to check whether 3 collinear points are ordered
/// - `Collinear_3` to check whether 3 points are collinear
/// - `Less_xyz_3` to compare lexicographically two points
/// - `Equal_3` to check whether 2 points are identical
/// - for each functor Foo, a function `Foo foo_object()`
/// \cgalParamEnd
/// \cgalNamedParamsEnd
///
/// \return number of degenerate faces found
///
template <class TriangleMesh, class NamedParameters>

View File

@ -218,11 +218,10 @@ self_intersections( const FaceRange& face_range,
* @param out output iterator to be filled with all pairs of non-adjacent faces that intersect
* @param np optional sequence of \ref namedparameters among the ones listed below
*
\b Named \b parameters
<ul>
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh`
<li>\b geom_traits an instance of a geometric traits class, model of `SelfIntersectionTraits`
</ul>
* \cgalNamedParamsBegin
* \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
* \cgalParamBegin{geom_traits} an instance of a geometric traits class, model of `SelfIntersectionTraits` \cgalParamEnd
* \cgalNamedParamsEnd
*
* @return `out`
*/
@ -346,11 +345,10 @@ OutputIterator self_intersections(const FaceRange& face_range,
* @param tmesh triangle mesh to be tested
* @param np optional sequence of \ref namedparameters among the ones listed below
*
\b Named \b parameters
<ul>
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh`
<li>\b geom_traits an instance of a geometric traits class, model of `SelfIntersectionTraits`
</ul>
* \cgalNamedParamsBegin
* \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
* \cgalParamBegin{geom_traits} an instance of a geometric traits class, model of `SelfIntersectionTraits` \cgalParamEnd
* \cgalNamedParamsEnd
*
* @return true if `tmesh` is self-intersecting
*/

View File

@ -271,10 +271,9 @@ private:
/// @param hedge_pairs_to_stitch a `std::vector` filled with `std::pair`s of halfedges to be stitched together
/// @param np optional \ref namedparameters described below
///
/// \b Named \b parameters
/// <ul>
/// <li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh`
/// </ul>
/// \cgalNamedParamsBegin
/// \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
/// \cgalNamedParamsEnd
///
template <typename PolygonMesh, class NamedParameters>
void stitch_borders(
@ -325,11 +324,10 @@ void stitch_borders(
/// @param pmesh the polygon mesh to be modified by stitching
/// @param np optional sequence of \ref namedparameters among the ones listed below
///
/// \b Named \b parameters
/// <ul>
/// <li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh`
/// <li>\b less_halfedge a comparison functor on halfedges of `pmesh`
/// </ul>
/// \cgalNamedParamsBegin
/// \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
/// \cgalParamBegin{less_halfedge} a comparison functor on halfedges of `pmesh` \cgalParamEnd
/// \cgalNamedParamsEnd
///
template <typename PolygonMesh, class NamedParameters>
void stitch_borders(PolygonMesh& pmesh, const NamedParameters& np)

View File

@ -233,11 +233,11 @@ public:
* @param pmesh the polygon mesh to be triangulated
* @param np optional sequence of \ref namedparameters among the ones listed below
*
\b Named \b parameters
<ul>
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh`
<li>\b kernel a geometric traits class instance
</ul>
* \cgalNamedParamsBegin
* \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
* \cgalParamBegin{kernel} a geometric traits class instance \cgalParamEnd
* \cgalNamedParamsEnd
*
*/
template <typename PolygonMesh, typename NamedParameters>
void triangulate_faces(PolygonMesh& pmesh,

View File

@ -53,12 +53,11 @@ namespace Polygon_mesh_processing {
@param out iterator over patch faces
@param np optional sequence of \ref namedparameters among the ones listed below
\b Named \b parameters
<ul>
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh`
<li>\b use_delaunay_triangulation if `true`, use the Delaunay triangulation facet search space
<li>\b kernel a geometric traits class instance
</ul>
\cgalNamedParamsBegin
\cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
\cgalParamBegin{use_delaunay_triangulation} if `true`, use the Delaunay triangulation facet search space \cgalParamEnd
\cgalParamBegin{kernel} a geometric traits class instance \cgalParamEnd
\cgalNamedParamsEnd
@return `out`
@ -128,13 +127,12 @@ namespace Polygon_mesh_processing {
@param vertex_out output iterator over patch vertices without including the boundary
@param np optional sequence of \ref namedparameters among the ones listed below
\b Named \b parameters
<ul>
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh`
<li>\b density_control_factor factor to control density of the ouput mesh, where larger values cause denser refinements, as in `refine()`
<li>\b use_delaunay_triangulation if `true`, use the Delaunay triangulation facet search space
<li>\b kernel a geometric traits class instance
</ul>
\cgalNamedParamsBegin
\cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
\cgalParamBegin{density_control_factor} factor to control density of the ouput mesh, where larger values cause denser refinements, as in `refine()` \cgalParamEnd
\cgalParamBegin{use_delaunay_triangulation} if `true`, use the Delaunay triangulation facet search space \cgalParamEnd
\cgalParamBegin{kernel} a geometric traits class instance \cgalParamEnd
\cgalNamedParamsEnd
@return pair of `face_out` and `vertex_out`
@ -194,15 +192,14 @@ namespace Polygon_mesh_processing {
@param vertex_out output iterator over patch vertices without including the boundary
@param np optional sequence of \ref namedparameters among the ones listed below
\b Named \b parameters
<ul>
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh`
<li>\b use_delaunay_triangulation if `true`, use the Delaunay triangulation facet search space
<li>\b density_control_factor factor to control density of the ouput mesh, where larger values cause denser refinements, as in `refine()`
<li>\b fairing_continuity tangential continuity of the output surface patch
<li>\b sparse_linear_solver an instance of the sparse linear solver used for fairing
<li>\b kernel a geometric traits class instance
</ul>
\cgalNamedParamsBegin
\cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
\cgalParamBegin{use_delaunay_triangulation} if `true`, use the Delaunay triangulation facet search space \cgalParamEnd
\cgalParamBegin{density_control_factor} factor to control density of the ouput mesh, where larger values cause denser refinements, as in `refine()` \cgalParamEnd
\cgalParamBegin{fairing_continuity} tangential continuity of the output surface patch \cgalParamEnd
\cgalParamBegin{sparse_linear_solver} an instance of the sparse linear solver used for fairing \cgalParamEnd
\cgalParamBegin{kernel} a geometric traits class instance \cgalParamEnd
\cgalNamedParamsEnd
@return tuple of
- bool: `true` if fairing is successful
@ -276,11 +273,10 @@ namespace Polygon_mesh_processing {
@param out iterator over output patch triangles
@param np optional sequence of \ref namedparameters among the ones listed below
\b Named \b parameters
<ul>
<li>\b use_delaunay_triangulation if `true`, use the Delaunay triangulation facet search space
<li>\b kernel a geometric traits class instance
</ul>
\cgalNamedParamsBegin
\cgalParamBegin{use_delaunay_triangulation} if `true`, use the Delaunay triangulation facet search space \cgalParamEnd
\cgalParamBegin{kernel} a geometric traits class instance \cgalParamEnd
\cgalNamedParamsEnd
\todo handle islands
*/