DGtal  1.5.beta
DGtal::LcontinuityPolicy< TSpace, TDomain, TBijectiveRotation > Struct Template Reference

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

Inheritance diagram for DGtal::LcontinuityPolicy< TSpace, TDomain, TBijectiveRotation >:
[legend]

Public Types

typedef std::vector< std::vector< typename TSpace::RealPoint > > VectorField
 
typedef ErrorVectorField< TSpace, TDomain, TBijectiveRotation, typename TSpace::RealPointErrorRealVectors
 
- Public Types inherited from DGtal::Policy< TSpace, TDomain, TBijectiveRotation >
typedef std::vector< std::vector< typename TSpace::RealPoint > > VectorField
 

Public Member Functions

double evaluate (const TDomain &set2d, const TBijectiveRotation &reflections, double my_angle, typename TSpace::Point my_center) const override
 
- Public Member Functions inherited from DGtal::Policy< TSpace, TDomain, TBijectiveRotation >
virtual ~Policy ()=default
 

Detailed Description

template<typename TSpace, typename TDomain, typename TBijectiveRotation>
struct DGtal::LcontinuityPolicy< TSpace, TDomain, TBijectiveRotation >

Definition at line 105 of file Policy.h.

Member Typedef Documentation

◆ ErrorRealVectors

template<typename TSpace , typename TDomain , typename TBijectiveRotation >
typedef ErrorVectorField<TSpace,TDomain,TBijectiveRotation,typename TSpace::RealPoint> DGtal::LcontinuityPolicy< TSpace, TDomain, TBijectiveRotation >::ErrorRealVectors

Definition at line 107 of file Policy.h.

◆ VectorField

template<typename TSpace , typename TDomain , typename TBijectiveRotation >
typedef std::vector<std::vector<typename TSpace::RealPoint> > DGtal::LcontinuityPolicy< TSpace, TDomain, TBijectiveRotation >::VectorField

Definition at line 106 of file Policy.h.

Member Function Documentation

◆ evaluate()

template<typename TSpace , typename TDomain , typename TBijectiveRotation >
double DGtal::LcontinuityPolicy< TSpace, TDomain, TBijectiveRotation >::evaluate ( const TDomain &  set2d,
const TBijectiveRotation &  reflections,
double  my_angle,
typename TSpace::Point  my_center 
) const
inlineoverridevirtual

Implements DGtal::Policy< TSpace, TDomain, TBijectiveRotation >.

Definition at line 109 of file Policy.h.

109  {
110  ErrorRealVectors errorsVectors(reflections,my_angle,my_center);
111  VectorField errors = errorsVectors.getOutputVectorFieldFromContour(set2d,true);
112  double outError = 0.;
113 
114  for(std::vector<typename TSpace::RealPoint> vecError: errors) {
115  for(int i = 1 ; i<vecError.size();++i ) {
116  //std::cout << "vec error i ="<<vecError[i]<<std::endl;
117  outError+=(1./8.)*(vecError[i][0]*vecError[i][0]+vecError[i][1]*vecError[i][1]);
118  }
119  }
120  return std::sqrt(outError/(set2d.size()));
121 
122  }
std::vector< std::vector< typename TSpace::RealPoint > > VectorField
Definition: Policy.h:106
ErrorVectorField< TSpace, TDomain, TBijectiveRotation, typename TSpace::RealPoint > ErrorRealVectors
Definition: Policy.h:107

References DGtal::ErrorVectorField< TSpace, TDomain, TBijectiveReflections, TInputValue, TOutputValue >::getOutputVectorFieldFromContour().

Referenced by DGtal::MixedPolicy< TSpace, TDomain, TBijectiveRotation >::evaluate().


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