45 #include <visp3/core/vpMath.h> 46 #include <visp3/visual_features/vpFeatureBuilder.h> 66 if (fabs(t.
cP[3]) > fabs(t.
cP[7]))
110 double x0 = t.
getX();
111 double y0 = t.
getY();
112 double z0 = t.
getZ();
119 double alpha1 = (1 - a * a) * x0 - a * b * y0 - a * c * z0;
120 double beta1 = -a * b * x0 + (1 - b * b) * y0 - b * c * z0;
121 double gamma1 = -a * c * x0 - b * c * y0 + (1 - c * c) * z0;
132 s.
setABCD(alpha1, beta1, gamma1, D);
148 #ifdef VISP_HAVE_MODULE_ME 204 if (thetap >= 0 && thetap < M_PI / 2) {
205 thetap = M_PI / 2 - thetap;
208 else if (thetap >= M_PI / 2 && thetap < 3 * M_PI / 2) {
209 thetap = 3 * M_PI / 2 + M_PI - thetap;
212 else if (thetap >= 3 * M_PI / 2 && thetap <= 2 * M_PI) {
213 thetap = M_PI / 2 + 2 * M_PI - thetap;
222 while (theta > M_PI) {
225 while (theta < -M_PI) {
257 #endif //#ifdef VISP_HAVE_MODULE_ME void setABCD(const double A, const double B, const double C, const double D)
void buildFrom(const double rho, const double theta)
Class that defines a line in the object frame, the camera frame and the image plane. All the parameters must be set in meter.
static double sqr(double x)
Class that tracks in an image a line moving edges.
Generic class defining intrinsic camera parameters.
Class that defines a 2D line visual feature which is composed by two parameters that are and ...
Class that defines what is a cylinder.
static void convertLine(const vpCameraParameters &cam, const double &rho_p, const double &theta_p, double &rho_m, double &theta_m)
static void create(vpFeaturePoint &s, const vpCameraParameters &cam, const vpDot &d)
void setRhoTheta(const double rho, const double theta)