DGtal  0.9.3
Public Types | Public Member Functions | Data Fields
DGtal::ChordGenericStandardPlaneComputer< TSpace, TInputPoint, TInternalScalar >::Transform Struct Reference

#include <DGtal/geometry/surfaces/ChordGenericStandardPlaneComputer.h>

Public Types

typedef InputPoint Value
 
typedef InputPoint value_type
 

Public Member Functions

 Transform ()
 
 Transform (bool posX, bool posY)
 
InputPoint operator() (const InputPoint &p) const
 
bool isPlusZOnX () const
 
bool isPlusZOnY () const
 
InputPoint inverse (const InputPoint &p) const
 
template<typename Vector3D >
void transformBack (Vector3D &v)
 
template<typename Vector3D >
void transform (Vector3D &v)
 

Data Fields

bool _posX
 
bool _posY
 

Detailed Description

template<typename TSpace, typename TInputPoint, typename TInternalScalar>
struct DGtal::ChordGenericStandardPlaneComputer< TSpace, TInputPoint, TInternalScalar >::Transform

This type is used to cast points from \((x,y,z)\) to \((x \pm z,y \pm z,z)\) and inversely. This is used when recognize a standard plane. Indeed, we only know how to recognize naive planes. So we dilate points of standard planes with this transform so that the standard plane becomes naive. Otherwise said, if \(T_{\pm,\pm}: (x,y,z) \mapsto (x \pm z,y \pm z,z)\), then P is a standard plane iff one of \(T_{+,+}(P), T_{+,-}(P), T_{-,+}(P), T_{-,-}(P)\) is a naive plane of main axis z.

Definition at line 166 of file ChordGenericStandardPlaneComputer.h.

Member Typedef Documentation

◆ Value

template<typename TSpace, typename TInputPoint, typename TInternalScalar>
typedef InputPoint DGtal::ChordGenericStandardPlaneComputer< TSpace, TInputPoint, TInternalScalar >::Transform::Value

Definition at line 167 of file ChordGenericStandardPlaneComputer.h.

◆ value_type

template<typename TSpace, typename TInputPoint, typename TInternalScalar>
typedef InputPoint DGtal::ChordGenericStandardPlaneComputer< TSpace, TInputPoint, TInternalScalar >::Transform::value_type

Definition at line 168 of file ChordGenericStandardPlaneComputer.h.

Constructor & Destructor Documentation

◆ Transform() [1/2]

template<typename TSpace, typename TInputPoint, typename TInternalScalar>
DGtal::ChordGenericStandardPlaneComputer< TSpace, TInputPoint, TInternalScalar >::Transform::Transform ( )
inline

◆ Transform() [2/2]

template<typename TSpace, typename TInputPoint, typename TInternalScalar>
DGtal::ChordGenericStandardPlaneComputer< TSpace, TInputPoint, TInternalScalar >::Transform::Transform ( bool  posX,
bool  posY 
)
inline

Member Function Documentation

◆ inverse()

template<typename TSpace, typename TInputPoint, typename TInternalScalar>
InputPoint DGtal::ChordGenericStandardPlaneComputer< TSpace, TInputPoint, TInternalScalar >::Transform::inverse ( const InputPoint p) const
inline

◆ isPlusZOnX()

template<typename TSpace, typename TInputPoint, typename TInternalScalar>
bool DGtal::ChordGenericStandardPlaneComputer< TSpace, TInputPoint, TInternalScalar >::Transform::isPlusZOnX ( ) const
inline

◆ isPlusZOnY()

template<typename TSpace, typename TInputPoint, typename TInternalScalar>
bool DGtal::ChordGenericStandardPlaneComputer< TSpace, TInputPoint, TInternalScalar >::Transform::isPlusZOnY ( ) const
inline

◆ operator()()

template<typename TSpace, typename TInputPoint, typename TInternalScalar>
InputPoint DGtal::ChordGenericStandardPlaneComputer< TSpace, TInputPoint, TInternalScalar >::Transform::operator() ( const InputPoint p) const
inline

◆ transform()

template<typename TSpace, typename TInputPoint, typename TInternalScalar>
template<typename Vector3D >
void DGtal::ChordGenericStandardPlaneComputer< TSpace, TInputPoint, TInternalScalar >::Transform::transform ( Vector3D &  v)
inline

◆ transformBack()

template<typename TSpace, typename TInputPoint, typename TInternalScalar>
template<typename Vector3D >
void DGtal::ChordGenericStandardPlaneComputer< TSpace, TInputPoint, TInternalScalar >::Transform::transformBack ( Vector3D &  v)
inline

Definition at line 184 of file ChordGenericStandardPlaneComputer.h.

185  {
186  v[ 2 ] += ( _posX ? v[ 0 ] : -v[ 0 ] );
187  v[ 2 ] += ( _posY ? v[ 1 ] : -v[ 1 ] );
188  }

Field Documentation

◆ _posX

template<typename TSpace, typename TInputPoint, typename TInternalScalar>
bool DGtal::ChordGenericStandardPlaneComputer< TSpace, TInputPoint, TInternalScalar >::Transform::_posX

◆ _posY

template<typename TSpace, typename TInputPoint, typename TInternalScalar>
bool DGtal::ChordGenericStandardPlaneComputer< TSpace, TInputPoint, TInternalScalar >::Transform::_posY

The documentation for this struct was generated from the following file: