DGtal 1.4.0
|
Aim: the common part of all geometric kernels for computing the convex hull or Delaunay triangulation of a range of points. More...
#include <DGtal/geometry/tools/QuickHullKernels.h>
Data Structures | |
class | HalfSpace |
Public Types | |
typedef TCoordinateInteger | CoordinateInteger |
typedef TInternalInteger | InternalInteger |
typedef CoordinateInteger | CoordinateScalar |
typedef InternalInteger | InternalScalar |
typedef DGtal::PointVector< dim, CoordinateInteger > | CoordinatePoint |
typedef DGtal::PointVector< dim, CoordinateInteger > | CoordinateVector |
typedef DGtal::PointVector< dim, InternalInteger > | InternalPoint |
typedef DGtal::PointVector< dim, InternalInteger > | InternalVector |
typedef std::size_t | Size |
typedef Size | Index |
typedef std::vector< Index > | IndexRange |
typedef std::array< Index, dim > | CombinatorialPlaneSimplex |
typedef IntegerConverter< dim, CoordinateInteger > | Outer |
Converter to outer coordinate integers or lattice points / vector. | |
typedef IntegerConverter< dim, InternalInteger > | Inner |
Converter to inner internal integers or lattice points / vector. | |
Static Public Attributes | |
static const Dimension | dimension = dim |
Aim: the common part of all geometric kernels for computing the convex hull or Delaunay triangulation of a range of points.
Description of template class 'ConvexHullCommonKernel'
dim | the dimension of the space that is used for computing the convex hull (either the same as input points for convex hull, or one more than input points for Delaunay triangulation) |
TCoordinateInteger | the integer type that represents coordinates of lattice points, a model of concepts::CInteger. |
TInternalInteger | the integer type that is used for internal computations of above/below plane tests, a model of concepts::CInteger. Must be at least as precise as TCoordinateInteger. |
Definition at line 178 of file QuickHullKernels.h.
typedef std::array< Index, dim > DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::CombinatorialPlaneSimplex |
Definition at line 195 of file QuickHullKernels.h.
typedef TCoordinateInteger DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::CoordinateInteger |
Definition at line 181 of file QuickHullKernels.h.
typedef DGtal::PointVector< dim, CoordinateInteger > DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::CoordinatePoint |
Definition at line 188 of file QuickHullKernels.h.
typedef CoordinateInteger DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::CoordinateScalar |
Definition at line 184 of file QuickHullKernels.h.
typedef DGtal::PointVector< dim, CoordinateInteger > DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::CoordinateVector |
Definition at line 189 of file QuickHullKernels.h.
typedef Size DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::Index |
Definition at line 193 of file QuickHullKernels.h.
typedef std::vector< Index > DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::IndexRange |
Definition at line 194 of file QuickHullKernels.h.
typedef IntegerConverter< dim, InternalInteger > DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::Inner |
Converter to inner internal integers or lattice points / vector.
Definition at line 201 of file QuickHullKernels.h.
typedef TInternalInteger DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::InternalInteger |
Definition at line 182 of file QuickHullKernels.h.
typedef DGtal::PointVector< dim, InternalInteger > DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::InternalPoint |
Definition at line 190 of file QuickHullKernels.h.
typedef InternalInteger DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::InternalScalar |
Definition at line 185 of file QuickHullKernels.h.
typedef DGtal::PointVector< dim, InternalInteger > DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::InternalVector |
Definition at line 191 of file QuickHullKernels.h.
typedef IntegerConverter< dim, CoordinateInteger > DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::Outer |
Converter to outer coordinate integers or lattice points / vector.
Definition at line 199 of file QuickHullKernels.h.
typedef std::size_t DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::Size |
Definition at line 192 of file QuickHullKernels.h.
|
default |
Default constructor.
|
inline |
H | the half-space |
p | any point |
Definition at line 333 of file QuickHullKernels.h.
References DGtal::H.
|
inline |
H | the half-space |
p | any point |
Definition at line 339 of file QuickHullKernels.h.
References DGtal::H.
DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::BOOST_CONCEPT_ASSERT | ( | (concepts::CInteger< TCoordinateInteger >) | ) |
DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::BOOST_CONCEPT_ASSERT | ( | (concepts::CInteger< TInternalInteger >) | ) |
|
inline |
Computes an halfspace from dimension points specified by simplex with vertices in a range vpoints of Point. Orientation is induced by the order of the points. If the simplex is degenrated, the half-space is invalid and has null normal.
[in] | vpoints | a range of points over which the simplex is defined. |
[in] | simplex | a range of dimension indices of points defining an hyperplane. |
Definition at line 257 of file QuickHullKernels.h.
References DGtal::IntegerConverter< dim, TInteger >::cast(), DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::dimension, and DGtal::PointVector< dim, TEuclideanRing, TContainer >::dot().
|
inline |
Computes an halfspace from dimension points specified by simplex with vertices in a range vpoints of Point. It is oriented such that the point of index idx_below is included in the half-space (i.e. below).
[in] | vpoints | a range of points over which the simplex is defined. |
[in] | simplex | a range of dimension indices of points defining an hyperplane. |
[in] | idx_below | the index of a p-oint that is below the hyperplane. |
Definition at line 230 of file QuickHullKernels.h.
References DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::HalfSpace::c, DGtal::IntegerConverter< dim, TInteger >::cast(), DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::compute(), DGtal::PointVector< dim, TEuclideanRing, TContainer >::dot(), DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::HalfSpace::N, and DGtal::PointVector< dim, InternalInteger >::zero.
Referenced by DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::compute().
|
inline |
Equivalent of the dot product of the normals of the half-spaces.
H1 | an half-space |
H2 | an half-space |
Definition at line 297 of file QuickHullKernels.h.
References DGtal::PointVector< dim, TEuclideanRing, TContainer >::dot(), and DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::HalfSpace::N.
|
inline |
H1 | an half-space |
H2 | an half-space |
H1={{1,0},3}
and H1={{2,0},6}
. Definition at line 310 of file QuickHullKernels.h.
References DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::HalfSpace::c, and DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::HalfSpace::N.
|
inline |
H | the half-space |
p | any point |
Definition at line 318 of file QuickHullKernels.h.
References DGtal::IntegerConverter< dim, TInteger >::cast(), and DGtal::H.
|
inline |
H | the half-space |
Definition at line 284 of file QuickHullKernels.h.
References DGtal::IntegerConverter< dim, TInteger >::cast(), and DGtal::H.
|
inline |
H | the half-space |
Definition at line 277 of file QuickHullKernels.h.
References DGtal::IntegerConverter< dim, TInteger >::cast(), and DGtal::H.
|
inline |
H | the half-space |
p | any point |
Definition at line 345 of file QuickHullKernels.h.
|
inline |
H | the half-space |
p | any point |
Definition at line 324 of file QuickHullKernels.h.
References DGtal::H.
|
static |
Definition at line 196 of file QuickHullKernels.h.
Referenced by DGtal::ConvexHullCommonKernel< dim, TCoordinateInteger, TInternalInteger >::compute().