This commit is contained in:
Andreas Fabri 2018-10-30 16:15:38 +01:00
parent a6e5e0ef0c
commit 347fab4d34
3 changed files with 20 additions and 10 deletions

View File

@ -5,9 +5,9 @@
The concept `HeatMethodTraits_3` describes the types,
predicates, and constructions required by the traits class parameter of
`CGAL::Heat_method_3::Heat_method_3`.
`CGAL::Heat_method_3::Surface_mesh_geodesic_distances_3`.
\cgalHasModel All the \cgal Kernels
\cgalHasModel All the \cgal kernels
*/
@ -28,8 +28,12 @@ public:
/// The 2D point type.
typedef unspecified_type Point_2;
typedef unspecified_type Compute_x_3;
typedef unspecified_type Compute_y_3;
typedef unspecified_type Compute_z_3;
typedef unspecified_type Construct_vector_3;
typedef unspecified_type Construct_cross_product_vector_3;
/// @}

View File

@ -40,7 +40,7 @@ source vertices. }
## Functions ##
- `CGAL::Heat_method_3::geodesic_distances_3()`
- `CGAL::Heat_method_3::estimate_geodesic_distances()`
*/
\todo Add more detailed cache

View File

@ -709,7 +709,7 @@ struct Base_helper<TriangleMesh, Traits, Intrinsic_Delaunay, LA, VertexPointMap>
/**
* \ingroup PkgHeatMethod
*
* Class `Surface_mesh_geodesic_distances_3` computes geodesic distances for a set of source vertices where sources can be added and removed.
* Class `Surface_mesh_geodesic_distances_3` computes estimated geodesic distances for a set of source vertices where sources can be added and removed.
* The class performs a preprocessing step that does only depend on the mesh, so that the distance computation takes less
* time after changes of the set of sources.
*
@ -860,11 +860,14 @@ public:
/// \ingroup PkgHeatMethod
/// computes for each vertex of the triangle mesh `tm` the estimated geodesic distance to a given source vertex.
/// \tparam TriangleMesh a triangulated surface mesh, model of `FaceListGraph` and `HalfedgeListGraph`
/// with `boost::graph_traits<TriangleMesh>::vertex_descriptor` as key type and `double` as value type.
/// \tparam VertexDistanceMap a property map model of `WritablePropertyMap`
/// with `boost::graph_traits<TriangleMesh>::vertex_descriptor` as key type and `double` as value type.
/// \tparam Mode either the tag `Direct` or `Intrinsic_Delaunay`, which determines if the geodesic distance
/// is computed directly on the mesh, or if the intrinsic Delaunay triangulation is applied first.
/// The default is `Direct`.
///
/// \sa CGAL::Heat_method_3::Surface_mesh_geodesic_distances_3
template <typename TriangleMesh, typename VertexDistanceMap, typename Mode>
template <typename TriangleMesh, typename VertexDistanceMap,Mode>
void
estimate_geodesic_distances(const TriangleMesh& tm,
VertexDistanceMap vdm,
@ -876,8 +879,8 @@ estimate_geodesic_distances(const TriangleMesh& tm,
hm.estimate_geodesic_distances(vdm);
}
template <typename TriangleMesh, typename VertexDistanceMap>
template <typename TriangleMesh, typename VertexDistanceMap>
void
estimate_geodesic_distances(const TriangleMesh& tm,
VertexDistanceMap vdm,
@ -895,6 +898,9 @@ estimate_geodesic_distances(const TriangleMesh& tm,
/// \tparam VertexDistanceMap a property map model of `WritablePropertyMap`
/// with `boost::graph_traits<TriangleMesh>::vertex_descriptor` as key type and `double` as value type.
/// \tparam VertexRange a range with value type `boost::graph_traits<TriangleMesh>::vertex_descriptor`
/// \tparam Mode either the tag `Direct` or `Intrinsic_Delaunay`, which determines if the geodesic distance
/// is computed directly on the mesh, or if the intrinsic Delaunay triangulation is applied first.
/// The default is `Direct`.
///
/// \sa CGAL::Heat_method_3::Surface_mesh_geodesic_distances_3
template <typename TriangleMesh, typename VertexDistanceMap, typename VertexRange, typename Mode>