DGtal  1.5.beta
DGtal::Reflection< TSpace, TInputValue, TOutputValue > Struct Template Reference

#include <DGtal/images/bijectiveRotations/DigitizedReflection.h>

Public Member Functions

 Reflection (const GAVector< TSpace > &m=GAVector< TSpace >())
 
TOutputValue operator() (const TInputValue &aInput) const
 

Data Fields

GAVector< TSpace > normalVector
 

Detailed Description

template<typename TSpace, typename TInputValue = typename TSpace::RealPoint, typename TOutputValue = typename TSpace::Point>
struct DGtal::Reflection< TSpace, TInputValue, TOutputValue >

Definition at line 44 of file DigitizedReflection.h.

Constructor & Destructor Documentation

◆ Reflection()

template<typename TSpace , typename TInputValue = typename TSpace::RealPoint, typename TOutputValue = typename TSpace::Point>
DGtal::Reflection< TSpace, TInputValue, TOutputValue >::Reflection ( const GAVector< TSpace > &  m = GAVector<TSpace>())
inlineexplicit

Definition at line 48 of file DigitizedReflection.h.

49  :normalVector(m){}
GAVector< TSpace > normalVector

Member Function Documentation

◆ operator()()

template<typename TSpace , typename TInputValue = typename TSpace::RealPoint, typename TOutputValue = typename TSpace::Point>
TOutputValue DGtal::Reflection< TSpace, TInputValue, TOutputValue >::operator() ( const TInputValue &  aInput) const
inline

Operator

Returns
the reflected and digitized point.

Definition at line 56 of file DigitizedReflection.h.

57  {
59  Z2i::RealPoint m_r = Z2i::RealPoint(normalVector.my_gavec[0],normalVector.my_gavec[1]);
60  Z2i::RealPoint x_r = Z2i::RealPoint(aInput[0],aInput[1]);
61  Z2i::RealPoint p=x_r - 2.0*((x_r[0]*m_r[0] + x_r[1]*m_r[1])/(m_r[0]*m_r[0] + m_r[1]*m_r[1]))*m_r;
62  return roundingOpe(p);
63  }
Space::RealPoint RealPoint
Definition: StdDefs.h:97

References DGtal::Reflection< TSpace, TInputValue, TOutputValue >::normalVector.

Field Documentation

◆ normalVector

template<typename TSpace , typename TInputValue = typename TSpace::RealPoint, typename TOutputValue = typename TSpace::Point>
GAVector<TSpace> DGtal::Reflection< TSpace, TInputValue, TOutputValue >::normalVector

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