39#ifndef VP_IMAGE_CIRCLE_H
40#define VP_IMAGE_CIRCLE_H
42#include <visp3/core/vpConfig.h>
43#include <visp3/core/vpColor.h>
44#include <visp3/core/vpImage.h>
45#include <visp3/core/vpImagePoint.h>
46#include <visp3/core/vpRect.h>
48#if defined(VISP_HAVE_OPENCV)
49#include <opencv2/core/core.hpp>
69#ifdef HAVE_OPENCV_CORE
151 double radius =
static_cast<double>(m_radius);
152 double squaredRadius = radius * radius;
154 return (distance <= squaredRadius);
Class that defines a 2D circle in an image.
float computeAngularCoverageInRoI(const vpRect &roi, const float &roundingTolerance=0.001f) const
vpImagePoint getCenter() const
float computeArcLengthInRoI(const vpRect &roi, const float &roundingTolerance=0.001f) const
bool isInside(const vpImagePoint &ip) const
Returns true if the image point belongs to the circle and false otherwise.
unsigned int computePixelsInMask(const vpImage< bool > &mask) const
Count the number of pixels of the circle whose value in the mask is true.
Class that defines a 2D point in an image. This class is useful for image processing and stores only ...
static double sqrDistance(const vpImagePoint &iP1, const vpImagePoint &iP2)
Definition of the vpImage class member functions.
Defines a rectangle in the plane.