DGtal  1.3.beta
Public Types | Static Public Member Functions | Static Public Attributes
DGtal::detail::BoundedLatticePolytopeSpecializer< N, TInteger > Struct Template Reference

Aim: It is just a helper class for BoundedLatticePolytope to add dimension specific static methods. More...

#include <DGtal/geometry/volumes/BoundedLatticePolytope.h>

Public Types

typedef TInteger Integer
 
typedef SpaceND< N, IntegerSpace
 
typedef Space::Point Point
 
typedef Space::Vector Vector
 
typedef BoundedLatticePolytope< SpacePolytope
 

Static Public Member Functions

static void addEdgeConstraint (Polytope &, unsigned int, unsigned int, const std::vector< Point > &)
 
static Vector crossProduct (const Vector &, const Vector &)
 

Static Public Attributes

static const Dimension dimension = Space::dimension
 

Detailed Description

template<DGtal::Dimension N, typename TInteger>
struct DGtal::detail::BoundedLatticePolytopeSpecializer< N, TInteger >

Aim: It is just a helper class for BoundedLatticePolytope to add dimension specific static methods.

Description of template class 'BoundedLatticePolytopeSpecializer'

Template Parameters
Nthe dimension of the polytope.
TIntegerany model of integer.

Definition at line 724 of file BoundedLatticePolytope.h.

Member Typedef Documentation

◆ Integer

template<DGtal::Dimension N, typename TInteger >
typedef TInteger DGtal::detail::BoundedLatticePolytopeSpecializer< N, TInteger >::Integer

Definition at line 725 of file BoundedLatticePolytope.h.

◆ Point

template<DGtal::Dimension N, typename TInteger >
typedef Space::Point DGtal::detail::BoundedLatticePolytopeSpecializer< N, TInteger >::Point

Definition at line 727 of file BoundedLatticePolytope.h.

◆ Polytope

template<DGtal::Dimension N, typename TInteger >
typedef BoundedLatticePolytope< Space > DGtal::detail::BoundedLatticePolytopeSpecializer< N, TInteger >::Polytope

Definition at line 729 of file BoundedLatticePolytope.h.

◆ Space

template<DGtal::Dimension N, typename TInteger >
typedef SpaceND< N, Integer> DGtal::detail::BoundedLatticePolytopeSpecializer< N, TInteger >::Space

Definition at line 726 of file BoundedLatticePolytope.h.

◆ Vector

template<DGtal::Dimension N, typename TInteger >
typedef Space::Vector DGtal::detail::BoundedLatticePolytopeSpecializer< N, TInteger >::Vector

Definition at line 728 of file BoundedLatticePolytope.h.

Member Function Documentation

◆ addEdgeConstraint()

template<DGtal::Dimension N, typename TInteger >
static void DGtal::detail::BoundedLatticePolytopeSpecializer< N, TInteger >::addEdgeConstraint ( Polytope ,
unsigned int  ,
unsigned int  ,
const std::vector< Point > &   
)
inlinestatic

Not implemented generic method.

This method add extremal constraints for simplex edges, faces, etc. Each constraint is a half-space bounded by the edge, face, etc, and one axis. Such constraints are useful when computing the Minkowski sum.

Note
This method is useful starting from 3D, where it is implemented in the specialization of this class.
Todo:
For higher dimensions, one should add constraint for extremal faces, etc.

Definition at line 745 of file BoundedLatticePolytope.h.

747  {
748  trace.error() << "[BoundedLatticePolytopeHelper::addEdgeConstraint]"
749  << " this method is only implemented in 3D." << std::endl;
750  }

References DGtal::Trace::error(), and DGtal::trace.

◆ crossProduct()

template<DGtal::Dimension N, typename TInteger >
static Vector DGtal::detail::BoundedLatticePolytopeSpecializer< N, TInteger >::crossProduct ( const Vector ,
const Vector  
)
inlinestatic

Generic method for cross product, only implemented in 3D.

Returns
their cross product.

Definition at line 755 of file BoundedLatticePolytope.h.

756  {
757  trace.error() << "[BoundedLatticePolytopeHelper::crossProduct]"
758  << " this method is only implemented in 3D." << std::endl;
759  return Vector::zero;
760  }

References DGtal::Trace::error(), DGtal::trace, and DGtal::PointVector< dim, Integer >::zero.

Field Documentation

◆ dimension

template<DGtal::Dimension N, typename TInteger >
const Dimension DGtal::detail::BoundedLatticePolytopeSpecializer< N, TInteger >::dimension = Space::dimension
static

The documentation for this struct was generated from the following file:
DGtal::PointVector< dim, Integer >::zero
static Self zero
Static const for zero PointVector.
Definition: PointVector.h:1595
DGtal::Trace::error
std::ostream & error()
DGtal::trace
Trace trace
Definition: Common.h:154