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

@ -8,3 +8,8 @@ INPUT = ${CMAKE_SOURCE_DIR}/Polygon_mesh_processing/doc/Polygon_mesh_processing
EXTRACT_ALL = false EXTRACT_ALL = false
HIDE_UNDOC_CLASSES = true 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 pmesh the polygon mesh containing `f`
* @param np optional sequence of \ref namedparameters among the ones listed below * @param np optional sequence of \ref namedparameters among the ones listed below
* *
\b Named \b parameters * \cgalNamedParamsBegin
<ul> * \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh` * \cgalParamBegin{kernel} a geometric traits class instance \cgalParamEnd
<li>\b kernel a geometric traits class instance * \cgalNamedParamsEnd
</ul>
* *
* @return the computed normal. The return type is a 3D vector type. It is * @return the computed normal. The return type is a 3D vector type. It is
* either deduced from the `kernel` \ref namedparameters if provided, * 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 fnm the property map in which the normals are written
* @param np optional sequence of \ref namedparameters among the ones listed below * @param np optional sequence of \ref namedparameters among the ones listed below
* *
\b Named \b parameters * \cgalNamedParamsBegin
<ul> * \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh` * \cgalParamBegin{kernel} a geometric traits class instance \cgalParamEnd
<li>\b kernel a geometric traits class instance * \cgalNamedParamsEnd
</ul>
* *
*/ */
template <typename PolygonMesh template <typename PolygonMesh
@ -152,11 +150,10 @@ compute_face_normals(const PolygonMesh& pmesh
* @param pmesh the polygon mesh containing `v` * @param pmesh the polygon mesh containing `v`
* @param np optional sequence of \ref namedparameters among the ones listed below * @param np optional sequence of \ref namedparameters among the ones listed below
* *
\b Named \b parameters * \cgalNamedParamsBegin
<ul> * \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh` * \cgalParamBegin{kernel} a geometric traits class instance \cgalParamEnd
<li>\b kernel a geometric traits class instance * \cgalNamedParamsEnd
</ul>
* *
* @return the computed normal. The return type is a 3D vector type. It is * @return the computed normal. The return type is a 3D vector type. It is
* either deduced from the `kernel` \ref namedparameters if provided, * 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 vnm the property map in which the normals are written
* @param np optional sequence of \ref namedparameters among the ones listed below * @param np optional sequence of \ref namedparameters among the ones listed below
* *
\b Named \b parameters * \cgalNamedParamsBegin
<ul> * \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh` * \cgalParamBegin{kernel} a geometric traits class instance \cgalParamEnd
<li>\b kernel a geometric traits class instance * \cgalNamedParamsEnd
</ul> *
*/ */
template <typename PolygonMesh template <typename PolygonMesh
, typename VertexNormalMap , 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 fnm the property map in which the face normals are written
* @param np optional sequence of \ref namedparameters among the ones listed below * @param np optional sequence of \ref namedparameters among the ones listed below
* *
\b Named \b parameters * \cgalNamedParamsBegin
<ul> * \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh` * \cgalParamBegin{kernel} a geometric traits class instance \cgalParamEnd
<li>\b kernel a geometric traits class instance * \cgalNamedParamsEnd
</ul> *
*/ */
template <typename PolygonMesh template <typename PolygonMesh
, typename VertexNormalMap , 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 out the output iterator that collects faces from the same connected component as `seed_face`
* \param np optional \ref namedparameters described below * \param np optional \ref namedparameters described below
* *
* \b Named \b parameters * \cgalNamedParamsBegin
* <ul> * \cgalParamBegin{edge_is_constrained_map} a property map containing the constrained-or-not status of each edge of `pmesh` \cgalParamEnd
* <li>\b edge_is_constrained_map a property map containing the constrained-or-not status of each edge of `pmesh` * \cgalNamedParamsEnd
* </ul>
* *
* \returns the output iterator. * \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 fcm the property map with indices of components associated to faces in `pmesh`
* \param np optional \ref namedparameters described below * \param np optional \ref namedparameters described below
* *
* \b Named \b parameters * \cgalNamedParamsBegin
* <ul> * \cgalParamBegin{edge_is_constrained_map} a property map containing the constrained-or-not status of each edge of `pmesh` \cgalParamEnd
* <li>\b edge_is_constrained_map a property map containing the constrained-or-not status of each edge of `pmesh` * \cgalParamBegin{face_index_map} a property map containing the index of each face of `pmesh` \cgalParamEnd
* <li>\b face_index_map a property map containing the index of each face of `pmesh` * \cgalNamedParamsEnd
* </ul>
* *
* \returns the number of connected components. * \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 nb_components_to_keep the number of components to be kept
* \param np optional \ref namedparameters described below * \param np optional \ref namedparameters described below
* *
* \b Named \b parameters * \cgalNamedParamsBegin
* <ul> * \cgalParamBegin{edge_is_constrained_map} a property map containing the constrained-or-not status of each edge of `pmesh` \cgalParamEnd
* <li>\b edge_is_constrained_map a property map containing the constrained-or-not status of each edge of `pmesh` * \cgalParamBegin{face_index_map} a property map containing the index of each face of `pmesh` \cgalParamEnd
* <li>\b face_index_map a property map containing the index of each face of `pmesh` * \cgalParamBegin{vertex_index_map} a property map containing the index of each vertex of `pmesh` \cgalParamEnd
* <li>\b vertex_index_map a property map containing the index of each vertex of `pmesh` * \cgalNamedParamsEnd
* </ul>
* *
* \return the number of connected components erased (ignoring isolated vertices). * \return the number of connected components erased (ignoring isolated vertices).
*/ */

View File

@ -76,12 +76,11 @@ namespace internal {
@param vertices the vertices of the patches to be faired (the positions of only those vertices will be changed) @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 @param np optional sequence of \ref namedparameters among the ones listed below
\b Named \b parameters \cgalNamedParamsBegin
<ul> \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh` \cgalParamBegin{fairing_continuity} tangential continuity of the output surface patch. The larger `fairing_continuity` gets, the more fixed vertices are required \cgalParamEnd
<li>\b fairing_continuity tangential continuity of the output surface patch. The larger `fairing_continuity` gets, the more fixed vertices are required. \cgalParamBegin{sparse_linear_solver} an instance of the sparse linear solver used for fairing \cgalParamEnd
<li>\b sparse_linear_solver an instance of the sparse linear solver used for fairing \cgalNamedParamsEnd
</ul>
@return `true` if fairing is successful, otherwise no vertex position is changed @return `true` if fairing is successful, otherwise no vertex position is changed

View File

@ -74,11 +74,10 @@ namespace internal{
* @param pmesh the closed polygon mesh to be tested * @param pmesh the closed polygon mesh to be tested
* @param np optional sequence of \ref namedparameters among the ones listed below * @param np optional sequence of \ref namedparameters among the ones listed below
* *
\b Named \b parameters * \cgalNamedParamsBegin
<ul> * \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh` * \cgalParamBegin{kernel} a geometric traits class instance \cgalParamEnd
<li>\b kernel a geometric traits class instance * \cgalNamedParamsEnd
</ul>
* *
* \todo code : The following only handles polyhedron with one connected component * \todo code : The following only handles polyhedron with one connected component
* the code, the sample example and the plugin must be updated. * 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 vertices_out output iterator into which descriptors of new vertices are put
@param np optional sequence of \ref namedparameters among the ones listed below @param np optional sequence of \ref namedparameters among the ones listed below
\b Named \b parameters \cgalNamedParamsBegin
<ul> \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh`
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh`. Instance of a class model of `ReadWritePropertyMap` \cgalParamEnd
Instance of a class model of `ReadWritePropertyMap` \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
<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.` \cgalNamedParamsEnd
</ul>
@return pair of `faces_out` and `vertices_out` @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 tmesh the triangle mesh to be repaired
/// @param np optional \ref namedparameters described below /// @param np optional \ref namedparameters described below
/// ///
/// \b Named \b parameters /// \cgalNamedParamsBegin
/// <ul> /// \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
/// <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`. /// \cgalParamBegin{kernel} a geometric traits class instance.
/// <li>\b kernel a geometric traits class instance. /// The traits class must provide the nested types :
/// The traits class must provide the nested types : /// - `Point_3`,
/// - `Point_3`, /// - `Compare_distance_3` to compute the distance between 2 points
/// - `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_are_ordered_along_line_3` to check whether 3 collinear points are ordered /// - `Collinear_3` to check whether 3 points are collinear
/// - `Collinear_3` to check whether 3 points are collinear /// - `Less_xyz_3` to compare lexicographically two points
/// - `Less_xyz_3` to compare lexicographically two points /// - `Equal_3` to check whether 2 points are identical
/// - `Equal_3` to check whether 2 points are identical /// - for each functor Foo, a function `Foo foo_object()`
/// - for each functor Foo, a function `Foo foo_object()` /// \cgalParamEnd
/// </ul> /// \cgalNamedParamsEnd
///
/// \return number of degenerate faces found /// \return number of degenerate faces found
/// ///
template <class TriangleMesh, class NamedParameters> 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 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 * @param np optional sequence of \ref namedparameters among the ones listed below
* *
\b Named \b parameters * \cgalNamedParamsBegin
<ul> * \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh` * \cgalParamBegin{geom_traits} an instance of a geometric traits class, model of `SelfIntersectionTraits` \cgalParamEnd
<li>\b geom_traits an instance of a geometric traits class, model of `SelfIntersectionTraits` * \cgalNamedParamsEnd
</ul>
* *
* @return `out` * @return `out`
*/ */
@ -346,11 +345,10 @@ OutputIterator self_intersections(const FaceRange& face_range,
* @param tmesh triangle mesh to be tested * @param tmesh triangle mesh to be tested
* @param np optional sequence of \ref namedparameters among the ones listed below * @param np optional sequence of \ref namedparameters among the ones listed below
* *
\b Named \b parameters * \cgalNamedParamsBegin
<ul> * \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
<li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh` * \cgalParamBegin{geom_traits} an instance of a geometric traits class, model of `SelfIntersectionTraits` \cgalParamEnd
<li>\b geom_traits an instance of a geometric traits class, model of `SelfIntersectionTraits` * \cgalNamedParamsEnd
</ul>
* *
* @return true if `tmesh` is self-intersecting * @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 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 /// @param np optional \ref namedparameters described below
/// ///
/// \b Named \b parameters /// \cgalNamedParamsBegin
/// <ul> /// \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
/// <li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh` /// \cgalNamedParamsEnd
/// </ul>
/// ///
template <typename PolygonMesh, class NamedParameters> template <typename PolygonMesh, class NamedParameters>
void stitch_borders( void stitch_borders(
@ -325,11 +324,10 @@ void stitch_borders(
/// @param pmesh the polygon mesh to be modified by stitching /// @param pmesh the polygon mesh to be modified by stitching
/// @param np optional sequence of \ref namedparameters among the ones listed below /// @param np optional sequence of \ref namedparameters among the ones listed below
/// ///
/// \b Named \b parameters /// \cgalNamedParamsBegin
/// <ul> /// \cgalParamBegin{vertex_point_map} the property map with the points associated to the vertices of `pmesh` \cgalParamEnd
/// <li>\b vertex_point_map the property map with the points associated to the vertices of `pmesh` /// \cgalParamBegin{less_halfedge} a comparison functor on halfedges of `pmesh` \cgalParamEnd
/// <li>\b less_halfedge a comparison functor on halfedges of `pmesh` /// \cgalNamedParamsEnd
/// </ul>
/// ///
template <typename PolygonMesh, class NamedParameters> template <typename PolygonMesh, class NamedParameters>
void stitch_borders(PolygonMesh& pmesh, const NamedParameters& np) void stitch_borders(PolygonMesh& pmesh, const NamedParameters& np)

View File

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

View File

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