Loading [MathJax]/extensions/TeX/AMSsymbols.js
 
CGAL 6.0.1 - The Heat Method
All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Modules Pages
Loading...
Searching...
No Matches
Heat Method Reference

Keenan Crane, Christina Vaz, and Andreas Fabri
The package provides an algorithm that solves the single- or multiple-source shortest path problem by returning an approximation of the geodesic distance for all vertices of a triangle mesh to the closest vertex in a given set of source vertices.
Introduced in: CGAL 4.14
Depends on: CGAL and Solvers
BibTeX: cgal:cvf-hm3-24b
License: GPL
Windows Demo: CGAL Lab

Classified Reference Pages

Concepts

Classes

Functions

Modules

 Concepts
 

Classes

class  CGAL::Heat_method_3::Surface_mesh_geodesic_distances_3< TriangleMesh, Mode, VertexPointMap, LA, Traits >
 Class Surface_mesh_geodesic_distances_3 computes estimated geodesic distances for a set of source vertices where sources can be added and removed. More...
 

Functions

template<typename TriangleMesh , typename VertexDistanceMap , typename Mode >
void CGAL::Heat_method_3::estimate_geodesic_distances (const TriangleMesh &tm, VertexDistanceMap vdm, typename boost::graph_traits< TriangleMesh >::vertex_descriptor source, Mode)
 computes for each vertex of the triangle mesh tm the estimated geodesic distance to a given source vertex.
 
template<typename TriangleMesh , typename VertexDistanceMap , typename VertexConstRange , typename Mode >
void CGAL::Heat_method_3::estimate_geodesic_distances (const TriangleMesh &tm, VertexDistanceMap vdm, const VertexConstRange &sources, Mode)
 computes for each vertex of the triangle mesh tm the estimated geodesic distance to a given set of source vertices.
 

Function Documentation

◆ estimate_geodesic_distances() [1/2]

template<typename TriangleMesh , typename VertexDistanceMap , typename VertexConstRange , typename Mode >
void CGAL::Heat_method_3::estimate_geodesic_distances ( const TriangleMesh &  tm,
VertexDistanceMap  vdm,
const VertexConstRange &  sources,
Mode   
)

#include <CGAL/Heat_method_3/Surface_mesh_geodesic_distances_3.h>

computes for each vertex of the triangle mesh tm the estimated geodesic distance to a given set of source vertices.

This function is provided only if Eigen 3.3 (or greater) is available and CGAL_EIGEN3_ENABLED is defined.

Template Parameters
TriangleMesha triangulated surface mesh, model of FaceListGraph and HalfedgeListGraph It must have an internal vertex point property map with the value type being a 3D point from a cgal Kernel model
VertexDistanceMapa property map model of WritablePropertyMap with boost::graph_traits<TriangleMesh>::vertex_descriptor as key type and double as value type.
VertexConstRangea model of the concept ConstRange with value type boost::graph_traits<TriangleMesh>::vertex_descriptor
Modeeither 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 Intrinsic_Delaunay.
Precondition
If Mode is Direct, tm mesh does not have any degenerate faces
Warning
The return type is double even when used with an exact kernel.
See also
CGAL::Heat_method_3::Surface_mesh_geodesic_distances_3

◆ estimate_geodesic_distances() [2/2]

template<typename TriangleMesh , typename VertexDistanceMap , typename Mode >
void CGAL::Heat_method_3::estimate_geodesic_distances ( const TriangleMesh &  tm,
VertexDistanceMap  vdm,
typename boost::graph_traits< TriangleMesh >::vertex_descriptor  source,
Mode   
)

#include <CGAL/Heat_method_3/Surface_mesh_geodesic_distances_3.h>

computes for each vertex of the triangle mesh tm the estimated geodesic distance to a given source vertex.

This function is provided only if Eigen 3.3 (or greater) is available and CGAL_EIGEN3_ENABLED is defined.

Template Parameters
TriangleMesha triangulated surface mesh, model of FaceListGraph and HalfedgeListGraph. It must have an internal vertex point property map with the value type being a 3D point from a cgal Kernel model
VertexDistanceMapa property map model of WritablePropertyMap with boost::graph_traits<TriangleMesh>::vertex_descriptor as key type and double as value type.
Modeeither 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 Intrinsic_Delaunay.
Precondition
If Mode is Direct, tm does not have any degenerate faces
Warning
The return type is double even when used with an exact kernel.
See also
CGAL::Heat_method_3::Surface_mesh_geodesic_distances_3
Examples
Heat_method_3/heat_method.cpp, and Heat_method_3/heat_method_polyhedron.cpp.