37#include <visp3/core/vpMomentAreaNormalized.h>
38#include <visp3/core/vpMomentCentered.h>
39#include <visp3/core/vpMomentDatabase.h>
40#include <visp3/core/vpMomentObject.h>
50 bool found_moment_centered;
60 if (!found_moment_centered)
67 a = momentCentered.
get(2, 0) + momentCentered.
get(0, 2);
71 values[0] = desiredDepth * sqrt(desiredSurface / a);
80 :
vpMoment(), desiredSurface(a_star), desiredDepth(Z_star)
95 os << (__FILE__) << std::endl;
96 os <<
"Desired depth Z* = " << desiredDepth << std::endl;
97 os <<
"Desired area m00* = " << desiredSurface << std::endl;
99 bool found_moment_centered;
102 if (!found_moment_centered)
107 a = momentCentered.
get(2, 0) + momentCentered.
get(0, 2);
110 os <<
"a = " << a << std::endl;
118 os << (__FILE__) << std::endl;
119 os <<
"An = " << m.
values[0] << std::endl;
error that can be emitted by ViSP classes.
@ notInitialized
Used to indicate that a parameter is not initialized.
friend VISP_EXPORT std::ostream & operator<<(std::ostream &os, const vpMomentAreaNormalized &v)
void compute() VP_OVERRIDE
void printDependencies(std::ostream &os) const VP_OVERRIDE
vpMomentAreaNormalized(double a_star, double Z_star)
This class defines the double-indexed centered moment descriptor .
double get(unsigned int i, unsigned int j) const
const vpMoment & get(const std::string &moment_name, bool &found) const
const std::vector< double > & get() const
const vpMomentObject & getObject() const
std::vector< double > values
vpMomentDatabase & getMoments() const
vpMoment(const vpMoment &)=delete