35 #include <visp3/core/vpFeatureDisplay.h>
38 #include <visp3/core/vpMeterPixelConversion.h>
41 #include <visp3/core/vpDisplay.h>
44 #include <visp3/core/vpMath.h>
46 #include <visp3/core/vpImagePoint.h>
61 const vpColor &color,
unsigned int thickness)
86 double co = cos(thetap);
87 double si = sin(thetap);
94 if (fabs(a) < fabs(b)) {
97 ip2.
set_ij(h, (-c - (a * h)) / b);
103 ip2.
set_ij((-c - (b * w)) / a, w);
121 const vpColor &color,
unsigned int thickness)
123 displayLine(rho1, theta1, cam, I, color, thickness);
124 displayLine(rho2, theta2, cam, I, color, thickness);
146 const vpColor &color,
unsigned int thickness)
149 double n20_p, n11_p, n02_p;
150 const unsigned int index_0 = 0;
151 const unsigned int index_1 = 1;
152 const unsigned int index_2 = 2;
153 const unsigned int index_3 = 3;
154 const unsigned int index_4 = 4;
156 circle.
p[index_0] = x;
157 circle.
p[index_1] = y;
158 circle.
p[index_2] = n20;
159 circle.
p[index_3] = n11;
160 circle.
p[index_4] = n02;
178 const vpColor &color,
unsigned int thickness)
197 const vpColor &color,
unsigned int thickness)
204 double co = cos(thetap);
205 double si = sin(thetap);
212 if (fabs(a) < fabs(b)) {
215 ip2.
set_ij(h, (-c - (a * h)) / b);
221 ip2.
set_ij((-c - (b * w)) / a, w);
239 unsigned int thickness)
241 displayLine(rho1, theta1, cam, I, color, thickness);
242 displayLine(rho2, theta2, cam, I, color, thickness);
264 unsigned int thickness)
267 double n20_p, n11_p, n02_p;
268 const unsigned int index_0 = 0;
269 const unsigned int index_1 = 1;
270 const unsigned int index_2 = 2;
271 const unsigned int index_3 = 3;
272 const unsigned int index_4 = 4;
274 circle.
p[index_0] = x;
275 circle.
p[index_1] = y;
276 circle.
p[index_2] = n20;
277 circle.
p[index_3] = n11;
278 circle.
p[index_4] = n02;
Generic class defining intrinsic camera parameters.
Class that defines a 3D circle in the object frame and allows forward projection of a 3D circle in th...
Class to define RGB colors available for display functionalities.
static void displayLine(const vpImage< unsigned char > &I, const vpImagePoint &ip1, const vpImagePoint &ip2, const vpColor &color, unsigned int thickness=1, bool segment=true)
static void displayEllipse(const vpImage< unsigned char > &I, const vpImagePoint ¢er, const double &coef1, const double &coef2, const double &coef3, bool use_normalized_centered_moments, const vpColor &color, unsigned int thickness=1, bool display_center=false, bool display_arc=false)
static void displayCross(const vpImage< unsigned char > &I, const vpImagePoint &ip, unsigned int size, const vpColor &color, unsigned int thickness=1)
static void displayCylinder(double rho1, double theta1, double rho2, double theta2, const vpCameraParameters &cam, const vpImage< unsigned char > &I, const vpColor &color=vpColor::green, unsigned int thickness=1)
static void displayLine(double rho, double theta, const vpCameraParameters &cam, const vpImage< unsigned char > &I, const vpColor &color=vpColor::green, unsigned int thickness=1)
static void displayEllipse(double x, double y, double n20, double n11, double n02, const vpCameraParameters &cam, const vpImage< unsigned char > &I, const vpColor &color=vpColor::green, unsigned int thickness=1)
static void displayPoint(double x, double y, const vpCameraParameters &cam, const vpImage< unsigned char > &I, const vpColor &color=vpColor::green, unsigned int thickness=1)
Class that defines a 2D point in an image. This class is useful for image processing and stores only ...
void set_ij(double ii, double jj)
unsigned int getWidth() const
unsigned int getHeight() const
static void convertLine(const vpCameraParameters &cam, const double &rho_m, const double &theta_m, double &rho_p, double &theta_p)
static void convertPoint(const vpCameraParameters &cam, const double &x, const double &y, double &u, double &v)
static void convertEllipse(const vpCameraParameters &cam, const vpSphere &sphere, vpImagePoint ¢er_p, double &n20_p, double &n11_p, double &n02_p)