 |
Visual Servoing Platform
version 3.3.0
|
39 #include <visp3/core/vpFeatureDisplay.h>
40 #include <visp3/core/vpSphere.h>
95 s = r * r - y0 * y0 - z0 * z0;
103 if ((s = z0 * z0 - r * r) < 0.0) {
110 if (fabs(x0) > 1e-6) {
113 double b = r / sqrt(s);
114 double a = x0 * x0 + y0 * y0 + z0 * z0 - r * r;
119 if (fabs(e) <= 1.0) {
132 B = r * sqrt(y0 * y0 + z0 * z0 - r * r) / s;
135 p_[2] = (A * A + B * B * E * E) / (1.0 + E * E);
136 p_[3] = (A * A - B * B) * E / (1.0 + E * E);
137 p_[4] = (B * B + A * A * E * E) / (1.0 + E * E);
151 x0 = cMo[0][0] *
oP[0] + cMo[0][1] *
oP[1] + cMo[0][2] *
oP[2] + cMo[0][3];
152 y0 = cMo[1][0] *
oP[0] + cMo[1][1] *
oP[1] + cMo[1][2] *
oP[2] + cMo[1][3];
153 z0 = cMo[2][0] *
oP[0] + cMo[2][1] *
oP[1] + cMo[2][2] *
oP[2] + cMo[2][3];
171 const vpColor &color,
unsigned int thickness)
180 unsigned int thickness)
void changeFrame(const vpHomogeneousMatrix &cMo, vpColVector &cP)
Perspective projection of the circle.
Generic class defining intrinsic camera parameters.
void projection()
perspective projection of the sphere
vpSphere * duplicate() const
for memory issue (used by the vpServo class only)
Implementation of column vector and the associated operations.
static void displayEllipse(double x, double y, double mu20, double mu11, double m02, const vpCameraParameters &cam, const vpImage< unsigned char > &I, const vpColor &color=vpColor::green, unsigned int thickness=1)
void setWorldCoordinates(const vpColVector &oP)
void display(const vpImage< unsigned char > &I, const vpCameraParameters &cam, const vpColor &color=vpColor::green, unsigned int thickness=1)
Class that defines what is a sphere.
void resize(unsigned int i, bool flagNullify=true)
Class to define colors available for display functionnalities.
Implementation of an homogeneous matrix and operations on such kind of matrices.