36 #include <visp3/core/vpFeatureDisplay.h>
37 #include <visp3/core/vpSphere.h>
149 s = r * r - y0 * y0 - z0 * z0;
151 if ((s = z0 * z0 - r * r) < 0.0) {
158 if (fabs(x0) > 1e-6) {
160 double b = r / sqrt(s);
161 double a = x0 * x0 + y0 * y0 + z0 * z0 - r * r;
166 if (fabs(e) <= 1.0) {
180 B = r * sqrt(y0 * y0 + z0 * z0 - r * r) / s;
215 x0 = cMo[0][0] *
oP[0] + cMo[0][1] *
oP[1] + cMo[0][2] *
oP[2] + cMo[0][3];
216 y0 = cMo[1][0] *
oP[0] + cMo[1][1] *
oP[1] + cMo[1][2] *
oP[2] + cMo[1][3];
217 z0 = cMo[2][0] *
oP[0] + cMo[2][1] *
oP[1] + cMo[2][2] *
oP[2] + cMo[2][3];
245 const vpColor &color,
unsigned int thickness)
265 const vpColor &color,
unsigned int thickness)
282 unsigned int thickness)
296 unsigned int thickness)
Generic class defining intrinsic camera parameters.
Implementation of column vector and the associated operations.
void resize(unsigned int i, bool flagNullify=true)
Class to define RGB colors available for display functionalities.
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)
Implementation of an homogeneous matrix and operations on such kind of matrices.
static double sqr(double x)
Class that defines a 3D sphere in the object frame and allows forward projection of a 3D sphere in th...
void projection() vp_override
void setWorldCoordinates(const vpColVector &oP) vp_override
vpSphere * duplicate() const vp_override
For memory issue (used by the vpServo class only).
void changeFrame(const vpHomogeneousMatrix &cMo, vpColVector &cP) const vp_override
void display(const vpImage< unsigned char > &I, const vpCameraParameters &cam, const vpColor &color=vpColor::green, unsigned int thickness=1) vp_override