Aim: An helper class for building classical meshes.
More...
#include <DGtal/shapes/SurfaceMeshHelper.h>
|
|
static SurfaceMesh | makeSphere (const Scalar radius, const RealPoint ¢er, Size m, Size n, NormalsType normals) |
|
static Scalars | sphereMeanCurvatures (const Scalar radius, Size m, Size n) |
|
static Scalars | sphereGaussianCurvatures (const Scalar radius, Size m, Size n) |
|
static Scalars | sphereFirstPrincipalCurvatures (const Scalar radius, Size m, Size n) |
|
static Scalars | sphereSecondPrincipalCurvatures (const Scalar radius, Size m, Size n) |
|
static RealVectors | sphereFirstPrincipalDirections (const Scalar radius, Size m, Size n) |
|
static RealVectors | sphereSecondPrincipalDirections (const Scalar radius, Size m, Size n) |
|
|
static SurfaceMesh | makeLantern (const Scalar radius, const Scalar height, const RealPoint ¢er, Size m, Size n, const NormalsType normals) |
|
static Scalars | lanternMeanCurvatures (const Scalar radius, Size m, Size n) |
|
static Scalars | lanternGaussianCurvatures (const Scalar radius, Size m, Size n) |
|
static Scalars | lanternFirstPrincipalCurvatures (const Scalar radius, Size m, Size n) |
|
static Scalars | lanternSecondPrincipalCurvatures (const Scalar radius, Size m, Size n) |
|
static RealVectors | lanternFirstPrincipalDirections (const Scalar radius, Size m, Size n) |
|
static RealVectors | lanternSecondPrincipalDirections (const Scalar radius, Size m, Size n) |
|
|
static SurfaceMesh | makeTorus (const Scalar big_radius, const Scalar small_radius, const RealPoint ¢er, Size m, Size n, const int twist, const NormalsType normals) |
|
static Scalars | torusMeanCurvatures (const Scalar big_radius, const Scalar small_radius, Size m, Size n, const int twist) |
|
static Scalars | torusGaussianCurvatures (const Scalar big_radius, const Scalar small_radius, Size m, Size n, const int twist) |
|
static Scalars | torusFirstPrincipalCurvatures (const Scalar big_radius, const Scalar small_radius, Size m, Size n, const int twist) |
|
static Scalars | torusSecondPrincipalCurvatures (const Scalar big_radius, const Scalar small_radius, Size m, Size n, const int twist) |
|
static RealVectors | torusFirstPrincipalDirections (const Scalar big_radius, const Scalar small_radius, Size m, Size n, const int twist) |
|
static RealVectors | torusSecondPrincipalDirections (const Scalar big_radius, const Scalar small_radius, Size m, Size n, const int twist) |
|
template<typename TRealPoint, typename TRealVector>
struct DGtal::SurfaceMeshHelper< TRealPoint, TRealVector >
Aim: An helper class for building classical meshes.
Description of template class 'SurfaceMeshHelper'
- Template Parameters
-
TRealPoint | an arbitrary model of RealPoint. |
TRealVector | an arbitrary model of RealVector. |
- Examples
- geometry/meshes/curvature-measures-icnc-3d.cpp, geometry/meshes/curvature-measures-icnc-XY-3d.cpp, geometry/meshes/curvature-measures-nc-3d.cpp, geometry/meshes/curvature-measures-nc-XY-3d.cpp, and shapes/exampleSurfaceMesh.cpp.
Definition at line 63 of file SurfaceMeshHelper.h.
◆ Faces
template<typename TRealPoint , typename TRealVector >
◆ Index
template<typename TRealPoint , typename TRealVector >
◆ RealPoint
template<typename TRealPoint , typename TRealVector >
◆ RealVector
template<typename TRealPoint , typename TRealVector >
◆ RealVectors
template<typename TRealPoint , typename TRealVector >
◆ Scalar
template<typename TRealPoint , typename TRealVector >
◆ Scalars
template<typename TRealPoint , typename TRealVector >
◆ Self
template<typename TRealPoint , typename TRealVector >
◆ Size
template<typename TRealPoint , typename TRealVector >
◆ SurfaceMesh
template<typename TRealPoint , typename TRealVector >
◆ Vertices
template<typename TRealPoint , typename TRealVector >
◆ NormalsType
template<typename TRealPoint , typename TRealVector >
Enum type for specifying if the mesh should have after construction: NO_NORMALS no normals, VERTEX_NORMALS the normals at each vertex, FACE_NORMALS the normals at each face.
Enumerator |
---|
NO_NORMALS | |
VERTEX_NORMALS | |
FACE_NORMALS | |
Definition at line 83 of file SurfaceMeshHelper.h.
◆ BOOST_STATIC_ASSERT()
template<typename TRealPoint , typename TRealVector >
◆ lanternFirstPrincipalCurvatures()
template<typename TRealPoint , typename TRealVector >
Returns the first principal curvature at each vertex of a Schwarz lantern of given parameters with m latitudes and n longitudes.
- Parameters
-
[in] | radius | the radius of the lantern. |
[in] | m | the number of latitudes, minimum is 2. |
[in] | n | the number of longitudes, minimum is 3. |
- Returns
- the first principal curvature at each vertex (zero).
◆ lanternFirstPrincipalDirections()
template<typename TRealPoint , typename TRealVector >
Returns the first principal direction at each vertex of a Schwarz lantern of given parameters with m latitudes and n longitudes.
- Parameters
-
[in] | radius | the radius of the lantern. |
[in] | m | the number of latitudes, minimum is 2. |
[in] | n | the number of longitudes, minimum is 3. |
- Returns
- the first principal direction at each vertex (z-axis).
◆ lanternGaussianCurvatures()
template<typename TRealPoint , typename TRealVector >
Returns the Gaussian curvature at each vertex of a Schwarz lantern of given parameters with m latitudes and n longitudes.
- Parameters
-
[in] | radius | the radius of the lantern. |
[in] | m | the number of latitudes, minimum is 2. |
[in] | n | the number of longitudes, minimum is 3. |
- Returns
- the Gaussian curvature at each vertex.
◆ lanternMeanCurvatures()
template<typename TRealPoint , typename TRealVector >
Returns the mean curvature at each vertex of a Schwarz lantern of given parameters with m latitudes and n longitudes.
- Parameters
-
[in] | radius | the radius of the lantern. |
[in] | m | the number of latitudes, minimum is 2. |
[in] | n | the number of longitudes, minimum is 3. |
- Returns
- the mean curvature at each vertex.
◆ lanternSecondPrincipalCurvatures()
template<typename TRealPoint , typename TRealVector >
Returns the second principal curvature at each vertex of a Schwarz lantern of given parameters with m latitudes and n longitudes.
- Parameters
-
[in] | radius | the radius of the lantern. |
[in] | m | the number of latitudes, minimum is 2. |
[in] | n | the number of longitudes, minimum is 3. |
- Returns
- the second principal curvature at each vertex (1/radius).
◆ lanternSecondPrincipalDirections()
template<typename TRealPoint , typename TRealVector >
Returns the second principal direction at each vertex of a Schwarz lantern of given parameters with m latitudes and n longitudes.
- Parameters
-
[in] | radius | the radius of the lantern. |
[in] | m | the number of latitudes, minimum is 2. |
[in] | n | the number of longitudes, minimum is 3. |
- Returns
- the second principal direction at each vertex (xy-plane).
◆ makeLantern()
template<typename TRealPoint , typename TRealVector >
Builds a surface mesh representing a Schwarz lantern with m latitudes and n longitudes.
- Parameters
-
[in] | radius | the radius of the lantern. |
[in] | height | the height of the lantern. |
[in] | center | the center of the lantern. |
[in] | m | the number of latitudes, minimum is 2. |
[in] | n | the number of longitudes, minimum is 3. |
[in] | normals | specifies built-time normals of the output mesh: NO_NORMALS no normals, VERTEX_NORMALS the normals at each vertex, FACE_NORMALS the normals at each face. |
- Returns
- the corresponding surface mesh.
◆ makeSphere()
template<typename TRealPoint , typename TRealVector >
Builds a surface mesh representing a sphere of given parameters with m latitudes (poles excluded) and n longitudes.
- Parameters
-
[in] | radius | the radius of the sphere. |
[in] | center | the center of the sphere. |
[in] | m | the number of latitudes (poles excepted), minimum is 1. |
[in] | n | the number of longitudes, minimum is 3. |
[in] | normals | specifies built-time normals of the output mesh: NO_NORMALS no normals, VERTEX_NORMALS the normals at each vertex, FACE_NORMALS the normals at each face. |
- Returns
- the corresponding surface mesh.
◆ makeTorus()
template<typename TRealPoint , typename TRealVector >
Builds a surface mesh representing a torus with m latitudes and n longitudes.
- Parameters
-
[in] | big_radius | the big radius of the torus. |
[in] | small_radius | the small radius of the torus. |
[in] | center | the center of the torus. |
[in] | m | the number of latitudes, minimum is 3. |
[in] | n | the number of longitudes, minimum is 3. |
[in] | twist | the integer shift when visiting a whole parallel: 0 is a natural torus parameterization, +n or -n makes the visitor arriving on another parallel after one turn. |
[in] | normals | specifies built-time normals of the output mesh: NO_NORMALS no normals, VERTEX_NORMALS the normals at each vertex, FACE_NORMALS the normals at each face. |
- Returns
- the corresponding surface mesh.
◆ sphereFirstPrincipalCurvatures()
template<typename TRealPoint , typename TRealVector >
Returns the first principal curvature at each vertex of a sphere of given parameters with m latitudes (poles excluded) and n longitudes.
- Parameters
-
[in] | radius | the radius of the sphere. |
[in] | m | the number of latitudes (poles excepted), minimum is 1. |
[in] | n | the number of longitudes, minimum is 3. |
- Returns
- the first principal curvature at each vertex.
◆ sphereFirstPrincipalDirections()
template<typename TRealPoint , typename TRealVector >
Returns the first principal direction at each vertex of a sphere of given parameters with m latitudes (poles excluded) and n longitudes.
- Parameters
-
[in] | radius | the radius of the sphere. |
[in] | m | the number of latitudes (poles excepted), minimum is 1. |
[in] | n | the number of longitudes, minimum is 3. |
- Returns
- the first principal direction at each vertex (umbilic, any tangent direction is ok).
◆ sphereGaussianCurvatures()
template<typename TRealPoint , typename TRealVector >
Returns the Gaussian curvature at each vertex of a sphere of given parameters with m latitudes (poles excluded) and n longitudes.
- Parameters
-
[in] | radius | the radius of the sphere. |
[in] | m | the number of latitudes (poles excepted), minimum is 1. |
[in] | n | the number of longitudes, minimum is 3. |
- Returns
- the Gaussian curvature at each vertex.
◆ sphereMeanCurvatures()
template<typename TRealPoint , typename TRealVector >
Returns the mean curvature at each vertex of a sphere of given parameters with m latitudes (poles excluded) and n longitudes.
- Parameters
-
[in] | radius | the radius of the sphere. |
[in] | m | the number of latitudes (poles excepted), minimum is 1. |
[in] | n | the number of longitudes, minimum is 3. |
- Returns
- the mean curvature at each vertex.
◆ sphereSecondPrincipalCurvatures()
template<typename TRealPoint , typename TRealVector >
Returns the second principal curvature at each vertex of a sphere of given parameters with m latitudes (poles excluded) and n longitudes.
- Parameters
-
[in] | radius | the radius of the sphere. |
[in] | m | the number of latitudes (poles excepted), minimum is 1. |
[in] | n | the number of longitudes, minimum is 3. |
- Returns
- the second principal curvature at each vertex.
◆ sphereSecondPrincipalDirections()
template<typename TRealPoint , typename TRealVector >
Returns the second principal direction at each vertex of a sphere of given parameters with m latitudes (poles excluded) and n longitudes.
- Parameters
-
[in] | radius | the radius of the sphere. |
[in] | m | the number of latitudes (poles excepted), minimum is 1. |
[in] | n | the number of longitudes, minimum is 3. |
- Returns
- the second principal direction at each vertex (umbilic, any tangent direction is ok).
◆ torusFirstPrincipalCurvatures()
template<typename TRealPoint , typename TRealVector >
Returns the first principal curvature at each vertex of a torus of given parameters with m latitudes and n longitudes.
- Parameters
-
[in] | big_radius | the big radius of the torus. |
[in] | small_radius | the small radius of the torus. |
[in] | m | the number of latitudes, minimum is 3. |
[in] | n | the number of longitudes, minimum is 3. |
[in] | twist | the integer shift when visiting a whole parallel: 0 is a natural torus parameterization, +n or -n makes the visitor arriving on another parallel after one turn. |
- Returns
- the first principal curvature at each vertex.
◆ torusFirstPrincipalDirections()
template<typename TRealPoint , typename TRealVector >
Returns the first principal direction at each vertex of a torus of given parameters with m latitudes and n longitudes.
- Parameters
-
[in] | big_radius | the big radius of the torus. |
[in] | small_radius | the small radius of the torus. |
[in] | m | the number of latitudes, minimum is 3. |
[in] | n | the number of longitudes, minimum is 3. |
[in] | twist | the integer shift when visiting a whole parallel: 0 is a natural torus parameterization, +n or -n makes the visitor arriving on another parallel after one turn. |
- Returns
- the first principal direction at each vertex (in xy-plane).
◆ torusGaussianCurvatures()
template<typename TRealPoint , typename TRealVector >
Returns the Gaussian curvature at each vertex of a torus of given parameters with m latitudes and n longitudes.
- Parameters
-
[in] | big_radius | the big radius of the torus. |
[in] | small_radius | the small radius of the torus. |
[in] | m | the number of latitudes, minimum is 3. |
[in] | n | the number of longitudes, minimum is 3. |
[in] | twist | the integer shift when visiting a whole parallel: 0 is a natural torus parameterization, +n or -n makes the visitor arriving on another parallel after one turn. |
- Returns
- the Gaussian curvature at each vertex.
◆ torusMeanCurvatures()
template<typename TRealPoint , typename TRealVector >
Returns the mean curvature at each vertex of a torus of given parameters with m latitudes and n longitudes.
- Parameters
-
[in] | big_radius | the big radius of the torus. |
[in] | small_radius | the small radius of the torus. |
[in] | m | the number of latitudes, minimum is 3. |
[in] | n | the number of longitudes, minimum is 3. |
[in] | twist | the integer shift when visiting a whole parallel: 0 is a natural torus parameterization, +n or -n makes the visitor arriving on another parallel after one turn. |
- Returns
- the mean curvature at each vertex.
◆ torusSecondPrincipalCurvatures()
template<typename TRealPoint , typename TRealVector >
Returns the second principal curvature at each vertex of a torus of given parameters with m latitudes and n longitudes.
- Parameters
-
[in] | big_radius | the big radius of the torus. |
[in] | small_radius | the small radius of the torus. |
[in] | m | the number of latitudes, minimum is 3. |
[in] | n | the number of longitudes, minimum is 3. |
[in] | twist | the integer shift when visiting a whole parallel: 0 is a natural torus parameterization, +n or -n makes the visitor arriving on another parallel after one turn. |
- Returns
- the second principal curvature at each vertex.
◆ torusSecondPrincipalDirections()
template<typename TRealPoint , typename TRealVector >
Returns the second principal direction at each vertex of a torus of given parameters with m latitudes and n longitudes.
- Parameters
-
[in] | big_radius | the big radius of the torus. |
[in] | small_radius | the small radius of the torus. |
[in] | m | the number of latitudes, minimum is 3. |
[in] | n | the number of longitudes, minimum is 3. |
[in] | twist | the integer shift when visiting a whole parallel: 0 is a natural torus parameterization, +n or -n makes the visitor arriving on another parallel after one turn. |
- Returns
- the second principal direction at each vertex (in meridian-sliced plane).
◆ dimension
template<typename TRealPoint , typename TRealVector >
The documentation for this struct was generated from the following file: