36 #include <visp3/core/vpConfig.h>
37 #include <visp3/core/vpImagePoint.h>
38 #include <visp3/core/vpMath.h>
39 #include <visp3/core/vpRect.h>
132 double i1 = ip1.
get_i();
133 double j1 = ip1.
get_j();
134 double i2 = ip2.
get_i();
135 double j2 = ip2.
get_j();
137 return ((std::fabs(i1 - i2) <= std::fabs(
vpMath::maximum(i1, i2)) * std::numeric_limits<double>::epsilon()) &&
138 (std::fabs(j1 - j2) <= std::fabs(
vpMath::maximum(j1, j2)) * std::numeric_limits<double>::epsilon()));
150 double i1 = ip1.
get_i();
151 double j1 = ip1.
get_j();
152 double i2 = ip2.
get_i();
153 double j2 = ip2.
get_j();
155 return ((std::fabs(i1 - i2) > std::fabs(
vpMath::maximum(i1, i2)) * std::numeric_limits<double>::epsilon()) ||
156 (std::fabs(j1 - j2) > std::fabs(
vpMath::maximum(j1, j2)) * std::numeric_limits<double>::epsilon()));
bool operator==(const vpArray2D< double > &A) const
bool operator!=(const vpArray2D< Type > &A) const
friend std::ostream & operator<<(std::ostream &s, const vpArray2D< Type > &A)
Class that defines a 2D point in an image. This class is useful for image processing and stores only ...
vpImagePoint & operator/=(double scale)
static double distance(const vpImagePoint &iP1, const vpImagePoint &iP2)
bool inRectangle(const vpRect &rect) const
vpImagePoint & operator+=(const vpImagePoint &ip)
VISP_EXPORT vpImagePoint operator+=(const vpImagePoint &ip1, const vpImagePoint &ip2)
VISP_EXPORT vpImagePoint operator+(const vpImagePoint &ip1, const vpImagePoint &ip2)
static vpRect getBBox(const std::vector< vpImagePoint > &ipVec)
VISP_EXPORT vpImagePoint operator*(const vpImagePoint &ip1, double scale)
VISP_EXPORT vpImagePoint operator/(const vpImagePoint &ip1, double scale)
static double sqrDistance(const vpImagePoint &iP1, const vpImagePoint &iP2)
VISP_EXPORT vpImagePoint operator-(const vpImagePoint &ip1, const vpImagePoint &ip2)
static Type maximum(const Type &a, const Type &b)
static double sqr(double x)
Defines a rectangle in the plane.