36 #include <visp3/visual_features/vpBasicFeature.h>
37 #include <visp3/visual_features/vpFeaturePoint3D.h>
40 #include <visp3/core/vpException.h>
41 #include <visp3/visual_features/vpFeatureException.h>
44 #include <visp3/core/vpDebug.h>
235 if (
flags[i] ==
false) {
238 vpTRACE(
"Warning !!! The interaction matrix is computed but X was "
242 vpTRACE(
"Warning !!! The interaction matrix is computed but Y was "
246 vpTRACE(
"Warning !!! The interaction matrix is computed but Z was "
250 vpTRACE(
"Problem during the reading of the variable flags");
362 ex[0] =
s[0] - s_star[0];
369 ey[0] =
s[1] - s_star[1];
375 ez[0] =
s[2] - s_star[2];
406 s[0] = p.
cP[0] / p.
cP[3];
407 s[1] = p.
cP[1] / p.
cP[3];
408 s[2] = p.
cP[2] / p.
cP[3];
412 vpERROR_TRACE(
"Point is behind the camera ");
413 std::cout <<
"Z = " << Z << std::endl;
418 if (fabs(Z) < 1e-6) {
419 vpERROR_TRACE(
"Point Z coordinates is null ");
420 std::cout <<
"Z = " << Z << std::endl;
454 vpERROR_TRACE(
"Point is behind the camera ");
455 std::cout <<
"Z = " << Z << std::endl;
460 if (fabs(Z) < 1e-6) {
461 vpERROR_TRACE(
"Point Z coordinates is null ");
462 std::cout <<
"Z = " << Z << std::endl;
499 std::cout <<
"Point3D: ";
501 std::cout <<
" X=" <<
get_X();
503 std::cout <<
" Y=" <<
get_Y();
505 std::cout <<
" Z=" <<
get_Z();
506 std::cout << std::endl;
531 const vpColor & ,
unsigned int )
const
533 static int firsttime = 0;
535 if (firsttime == 0) {
537 vpERROR_TRACE(
"not implemented");
548 const vpColor & ,
unsigned int )
const
550 static int firsttime = 0;
552 if (firsttime == 0) {
554 vpERROR_TRACE(
"not implemented");
class that defines what is a visual feature
vpColVector s
State of the visual feature.
unsigned int nbParameters
Number of parameters needed to compute the interaction matrix.
unsigned int dim_s
Dimension of the visual feature.
static const unsigned int FEATURE_LINE[32]
vpBasicFeatureDeallocatorType deallocate
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.
Error that can be emitted by the vpBasicFeature class and its derivates.
@ badInitializationError
Wrong feature initialization.
Class that defines the 3D point visual feature.
static unsigned int selectX()
double get_X() const
Return the coordinate in the camera frame of the 3D point.
void set_XYZ(double X, double Y, double Z)
double get_Y() const
Return the coordinate in the camera frame of the 3D point.
vpFeaturePoint3D * duplicate() const VP_OVERRIDE
static unsigned int selectZ()
vpColVector error(const vpBasicFeature &s_star, unsigned int select=FEATURE_ALL) VP_OVERRIDE
vpFeaturePoint3D & buildFrom(const vpPoint &p)
void print(unsigned int select=FEATURE_ALL) const VP_OVERRIDE
static unsigned int selectY()
vpMatrix interaction(unsigned int select=FEATURE_ALL) VP_OVERRIDE
double get_Z() const
Return the coordinate in the camera frame of the 3D point.
void display(const vpCameraParameters &cam, const vpImage< unsigned char > &I, const vpColor &color=vpColor::green, unsigned int thickness=1) const VP_OVERRIDE
Implementation of a matrix and operations on matrices.
void stack(const vpMatrix &A)
Class that defines a 3D point in the object frame and allows forward projection of a 3D point in the ...