Visual Servoing Platform
version 3.5.1 under development (2023-09-22)
|
#include <visp3/core/vpPoint.h>
Public Types | |
enum | vpForwardProjectionDeallocatorType { user , vpDisplayForwardProjection } |
Public Member Functions | |
vpPoint () | |
vpPoint (double oX, double oY, double oZ) | |
vpPoint (const vpColVector &oP) | |
vpPoint (const std::vector< double > &oP) | |
virtual | ~vpPoint () |
void | changeFrame (const vpHomogeneousMatrix &cMo, vpColVector &cP) const |
void | changeFrame (const vpHomogeneousMatrix &cMo) |
void | display (const vpImage< unsigned char > &I, const vpCameraParameters &cam, const vpColor &color=vpColor::green, unsigned int thickness=1) |
void | display (const vpImage< vpRGBa > &I, const vpCameraParameters &cam, const vpColor &color=vpColor::green, unsigned int thickness=1) |
void | display (const vpImage< unsigned char > &I, const vpHomogeneousMatrix &cMo, const vpCameraParameters &cam, const vpColor &color=vpColor::green, unsigned int thickness=1) |
void | display (const vpImage< vpRGBa > &I, const vpHomogeneousMatrix &cMo, const vpCameraParameters &cam, const vpColor &color=vpColor::green, unsigned int thickness=1) |
vpPoint * | duplicate () const |
double | get_X () const |
double | get_Y () const |
double | get_Z () const |
double | get_W () const |
double | get_oX () const |
double | get_oY () const |
double | get_oZ () const |
double | get_oW () const |
double | get_x () const |
double | get_y () const |
double | get_w () const |
void | getWorldCoordinates (double &oX, double &oY, double &oZ) |
void | getWorldCoordinates (vpColVector &oP) |
vpColVector | getWorldCoordinates (void) |
void | getWorldCoordinates (std::vector< double > &oP) |
vpPoint & | operator= (const vpPoint &vpp)=default |
void | projection (const vpColVector &_cP, vpColVector &_p) const |
void | projection () |
void | set_X (double cX) |
void | set_Y (double cY) |
void | set_Z (double cZ) |
void | set_W (double cW) |
void | set_oX (double oX) |
void | set_oY (double oY) |
void | set_oZ (double oZ) |
void | set_oW (double oW) |
void | set_x (double x) |
void | set_y (double y) |
void | set_w (double w) |
void | setWorldCoordinates (double oX, double oY, double oZ) |
void | setWorldCoordinates (const vpColVector &oP) |
void | setWorldCoordinates (const std::vector< double > &oP) |
Public Member Functions Inherited from vpForwardProjection | |
vpColVector | get_oP () const |
vpForwardProjectionDeallocatorType | getDeallocate () |
virtual void | print () const |
void | project () |
void | project (const vpHomogeneousMatrix &cMo) |
void | setDeallocate (vpForwardProjectionDeallocatorType d) |
void | track (const vpHomogeneousMatrix &cMo) |
Public Member Functions Inherited from vpTracker | |
vpColVector | get_p () const |
vpColVector | get_cP () const |
Public Attributes | |
Public Attributes Inherited from vpForwardProjection | |
vpColVector | oP |
Public Attributes Inherited from vpTracker | |
vpColVector | p |
vpColVector | cP |
bool | cPAvailable |
Protected Member Functions | |
void | init () |
Friends | |
VISP_EXPORT std::ostream & | operator<< (std::ostream &os, const vpPoint &vpp) |
Class that defines a 3D point in the object frame and allows forward projection of a 3D point in the camera frame and in the 2D image plane by perspective projection. All the parameters must be set in meter.
A 3D point has the followings parameters:
|
inherited |
Used for memory issue especially in the vpServo class.
Enumerator | |
---|---|
user | |
vpDisplayForwardProjection |
Definition at line 68 of file vpForwardProjection.h.
vpPoint::vpPoint | ( | ) |
Basic constructor.
Definition at line 61 of file vpPoint.cpp.
References init().
Referenced by duplicate().
vpPoint::vpPoint | ( | double | oX, |
double | oY, | ||
double | oZ | ||
) |
Construction from a 3D point with coordinates in object frame.
oX,oY,oZ | Coordinates of a 3D point in object frame. |
Definition at line 67 of file vpPoint.cpp.
References init(), and setWorldCoordinates().
|
explicit |
Construction from a 3D point with coordinates in object frame.
oP_ | Vector containing the coordinates of the 3D point in the object frame. This vector could be of dimension 3 or 4.
|
Definition at line 83 of file vpPoint.cpp.
References init(), and setWorldCoordinates().
|
explicit |
Construction from a 3D point with coordinates in object frame.
oP_ | Vector containing the coordinates of the 3D point in the object frame. This vector could be of dimension 3 or 4.
|
Definition at line 99 of file vpPoint.cpp.
References init(), and setWorldCoordinates().
|
virtual |
From the 3D coordinates of the point in the object frame oP that are set using for example setWorldCoordinates() or set_oX(), set_oY(), set_oZ(), compute the 3D coordinates of the point in the camera frame cP = cMo * oP.
cMo | : Transformation from camera to object frame. |
Implements vpForwardProjection.
Definition at line 260 of file vpPoint.cpp.
References vpTracker::cP, and vpForwardProjection::oP.
|
virtual |
From the 3D coordinates of the point in the object frame oP that are set using for example setWorldCoordinates() or set_oX(), set_oY(), set_oZ(), compute the 3D coordinates of the point in the camera frame cP = cMo * oP.
cMo | : Transformation from camera to object frame. |
_cP | : 3D normalized coordinates of the point in the camera frame cP = (cX, cY, cZ, 1). |
Implements vpForwardProjection.
Definition at line 236 of file vpPoint.cpp.
References vpForwardProjection::oP, and vpColVector::resize().
Referenced by vpPolygon3D::changeFrame(), vpMbtDistanceKltCylinder::computeInteractionMatrixAndResidu(), display(), vpMbtFaceDepthNormal::displayFeature(), vpMbtFaceDepthNormal::getFeaturesForDisplay(), vpMbtDistanceCylinder::getModelForDisplay(), vpMbtDistanceLine::getModelForDisplay(), vpMbtDistanceCylinder::initMovingEdge(), vpMbtDistanceLine::initMovingEdge(), vpMbtDistanceCylinder::updateMovingEdge(), and vpMbtDistanceLine::updateMovingEdge().
|
virtual |
Display the projection of a 3D point in image I.
I | : Image used as background. |
cam | : Camera parameters. |
color | : Color used to draw the point. |
thickness | : Thickness used to draw the point. |
Implements vpForwardProjection.
Definition at line 427 of file vpPoint.cpp.
References vpFeatureDisplay::displayPoint(), and vpTracker::p.
|
virtual |
Display the projection of a 3D point in image I. This method is non destructive wrt. cP and p internal 3D point parameters.
I | : Image used as background. |
cMo | : Homogeneous transformation from camera frame to object frame. The point is considered as viewed from this camera position. |
cam | : Camera parameters. |
color | : Color used to draw the sphere. |
thickness | : Thickness used to draw the sphere. |
Implements vpForwardProjection.
Definition at line 367 of file vpPoint.cpp.
References changeFrame(), vpFeatureDisplay::displayPoint(), and projection().
void vpPoint::display | ( | const vpImage< vpRGBa > & | I, |
const vpCameraParameters & | cam, | ||
const vpColor & | color = vpColor::green , |
||
unsigned int | thickness = 1 |
||
) |
Display the projection of a 3D point in image I.
I | : Image used as background. |
cam | : Camera parameters. |
color | : Color used to draw the point. |
thickness | : Thickness used to draw the point. |
Definition at line 441 of file vpPoint.cpp.
References vpFeatureDisplay::displayPoint(), and vpTracker::p.
void vpPoint::display | ( | const vpImage< vpRGBa > & | I, |
const vpHomogeneousMatrix & | cMo, | ||
const vpCameraParameters & | cam, | ||
const vpColor & | color = vpColor::green , |
||
unsigned int | thickness = 1 |
||
) |
Display the projection of a 3D point in image I. This method is non destructive wrt. cP and p internal 3D point parameters.
I | : Image used as background. |
cMo | : Homogeneous transformation from camera frame to object frame. The point is considered as viewed from this camera position. |
cam | : Camera parameters. |
color | : Color used to draw the sphere. |
thickness | : Thickness used to draw the sphere. |
Definition at line 392 of file vpPoint.cpp.
References changeFrame(), vpFeatureDisplay::displayPoint(), and projection().
|
virtual |
For memory issue (used by the vpServo class only).
Implements vpForwardProjection.
Definition at line 350 of file vpPoint.cpp.
References vpPoint().
|
inlineinherited |
Return object parameters expressed in the 3D camera frame.
Definition at line 94 of file vpTracker.h.
|
inlineinherited |
Return object parameters expressed in the 3D object frame.
Definition at line 160 of file vpForwardProjection.h.
double vpPoint::get_oW | ( | ) | const |
Get the point oW coordinate in the object frame.
Definition at line 464 of file vpPoint.cpp.
References vpForwardProjection::oP.
double vpPoint::get_oX | ( | ) | const |
Get the point oX coordinate in the object frame.
Definition at line 458 of file vpPoint.cpp.
References vpForwardProjection::oP.
Referenced by vpMbTracker::addPolygon(), vpMbTracker::addProjectionErrorPolygon(), vpMbtDistanceCircle::buildFrom(), vpMbtDistanceCylinder::buildFrom(), vpMbtDistanceKltCylinder::buildFrom(), vpMbtDistanceLine::buildFrom(), vpKeyPoint::compute3DForPointsOnCylinders(), vpPose::coplanar(), vpMbTracker::createCylinderBBox(), vpMbTracker::extractCylinders(), vpMbTracker::getGravityCenter(), vpPlane::init(), vpPose::poseDementhonNonPlan(), vpPose::poseDementhonPlan(), vpPose::poseLagrangeNonPlan(), vpPose::poseLagrangePlan(), vpPose::poseLowe(), vpMbtFaceDepthDense::samePoint(), vpMbtFaceDepthNormal::samePoint(), vpMbTracker::samePoint(), and vpPlane::vpPlane().
double vpPoint::get_oY | ( | ) | const |
Get the point oY coordinate in the object frame.
Definition at line 460 of file vpPoint.cpp.
References vpForwardProjection::oP.
Referenced by vpMbTracker::addPolygon(), vpMbTracker::addProjectionErrorPolygon(), vpMbtDistanceCircle::buildFrom(), vpMbtDistanceCylinder::buildFrom(), vpMbtDistanceKltCylinder::buildFrom(), vpMbtDistanceLine::buildFrom(), vpKeyPoint::compute3DForPointsOnCylinders(), vpPose::coplanar(), vpMbTracker::createCylinderBBox(), vpMbTracker::extractCylinders(), vpPlane::init(), vpPose::poseDementhonNonPlan(), vpPose::poseDementhonPlan(), vpPose::poseLagrangeNonPlan(), vpPose::poseLagrangePlan(), vpPose::poseLowe(), vpMbtFaceDepthDense::samePoint(), vpMbtFaceDepthNormal::samePoint(), vpMbTracker::samePoint(), and vpPlane::vpPlane().
double vpPoint::get_oZ | ( | ) | const |
Get the point oZ coordinate in the object frame.
Definition at line 462 of file vpPoint.cpp.
References vpForwardProjection::oP.
Referenced by vpMbTracker::addPolygon(), vpMbTracker::addProjectionErrorPolygon(), vpMbtDistanceCircle::buildFrom(), vpMbtDistanceCylinder::buildFrom(), vpMbtDistanceKltCylinder::buildFrom(), vpMbtDistanceLine::buildFrom(), vpKeyPoint::compute3DForPointsOnCylinders(), vpPose::coplanar(), vpMbTracker::createCylinderBBox(), vpMbTracker::extractCylinders(), vpPlane::init(), vpPose::poseDementhonNonPlan(), vpPose::poseDementhonPlan(), vpPose::poseLagrangeNonPlan(), vpPose::poseLagrangePlan(), vpPose::poseLowe(), vpMbtFaceDepthDense::samePoint(), vpMbtFaceDepthNormal::samePoint(), vpMbTracker::samePoint(), and vpPlane::vpPlane().
|
inlineinherited |
Return object parameters expressed in the 2D image plane computed by perspective projection.
Definition at line 92 of file vpTracker.h.
double vpPoint::get_W | ( | ) | const |
Get the point cW coordinate in the camera frame.
Definition at line 455 of file vpPoint.cpp.
References vpTracker::cP.
Referenced by vpHomogeneousMatrix::operator*(), and vpPlane::projectionPointOnPlan().
double vpPoint::get_w | ( | ) | const |
Get the point w coordinate in the image plane.
Definition at line 471 of file vpPoint.cpp.
References vpTracker::p.
Referenced by vpHomography::operator*().
double vpPoint::get_X | ( | ) | const |
Get the point cX coordinate in the camera frame.
Definition at line 449 of file vpPoint.cpp.
References vpTracker::cP.
Referenced by vpMbtFaceDepthNormal::computeNormalVisibility(), vpMbtFaceDepthNormal::computePolygonCentroid(), vpMbtFaceDepthDense::computeROI(), vpMbtFaceDepthNormal::displayFeature(), vpMbtFaceDepthNormal::getFeaturesForDisplay(), vpPlane::init(), vpMbtPolygon::isVisible(), vpHomogeneousMatrix::operator*(), vpPlane::projectionPointOnPlan(), vpPlane::rayIntersection(), and vpPlane::vpPlane().
double vpPoint::get_x | ( | ) | const |
Get the point x coordinate in the image plane.
Definition at line 467 of file vpPoint.cpp.
References vpTracker::p.
Referenced by vpMbtDistanceKltCylinder::computeInteractionMatrixAndResidu(), vpPose::computeResidual(), vpFeatureBuilder::create(), vpMbtFaceDepthNormal::displayFeature(), vpMbtFaceDepthNormal::getFeaturesForDisplay(), vpKeyPoint::matchPointAndDetect(), vpHomography::operator*(), vpPose::poseFromRectangle(), vpPose::poseLagrangeNonPlan(), vpPose::poseLagrangePlan(), vpPose::poseLowe(), vpPose::poseVirtualVS(), vpPose::poseVirtualVSrobust(), vpHomography::project(), vpWireFrameSimulator::projectCameraTrajectory(), vpSimulatorAfma6::updateArticularPosition(), and vpSimulatorViper850::updateArticularPosition().
double vpPoint::get_Y | ( | ) | const |
Get the point cY coordinate in the camera frame.
Definition at line 451 of file vpPoint.cpp.
References vpTracker::cP.
Referenced by vpMbtFaceDepthNormal::computeNormalVisibility(), vpMbtFaceDepthDense::computeROI(), vpMbtFaceDepthNormal::displayFeature(), vpMbtFaceDepthNormal::getFeaturesForDisplay(), vpPlane::init(), vpMbtPolygon::isVisible(), vpHomogeneousMatrix::operator*(), vpPlane::projectionPointOnPlan(), vpPlane::rayIntersection(), and vpPlane::vpPlane().
double vpPoint::get_y | ( | ) | const |
Get the point y coordinate in the image plane.
Definition at line 469 of file vpPoint.cpp.
References vpTracker::p.
Referenced by vpMbtDistanceKltCylinder::computeInteractionMatrixAndResidu(), vpPose::computeResidual(), vpFeatureBuilder::create(), vpMbtFaceDepthNormal::displayFeature(), vpMbtFaceDepthNormal::getFeaturesForDisplay(), vpKeyPoint::matchPointAndDetect(), vpHomography::operator*(), vpPose::poseFromRectangle(), vpPose::poseLagrangeNonPlan(), vpPose::poseLagrangePlan(), vpPose::poseLowe(), vpPose::poseVirtualVS(), vpPose::poseVirtualVSrobust(), vpHomography::project(), vpWireFrameSimulator::projectCameraTrajectory(), vpSimulatorAfma6::updateArticularPosition(), and vpSimulatorViper850::updateArticularPosition().
double vpPoint::get_Z | ( | ) | const |
Get the point cZ coordinate in the camera frame.
Definition at line 453 of file vpPoint.cpp.
References vpTracker::cP.
Referenced by vpMbtFaceDepthNormal::computeNormalVisibility(), vpMbtFaceDepthDense::computeROI(), vpFeatureBuilder::create(), vpProjectionDisplay::displayCamera(), vpMbtFaceDepthNormal::displayFeature(), vpMbtFaceDepthNormal::getFeaturesForDisplay(), vpPlane::init(), vpMbtPolygon::isVisible(), vpHomogeneousMatrix::operator*(), vpPose::poseVirtualVS(), vpPose::poseVirtualVSrobust(), vpPlane::projectionPointOnPlan(), vpPlane::rayIntersection(), and vpPlane::vpPlane().
|
inlineinherited |
Definition at line 162 of file vpForwardProjection.h.
void vpPoint::getWorldCoordinates | ( | double & | oX, |
double & | oY, | ||
double & | oZ | ||
) |
Get the point object frame coordinates.
Definition at line 175 of file vpPoint.cpp.
References vpForwardProjection::oP.
void vpPoint::getWorldCoordinates | ( | std::vector< double > & | oP_ | ) |
Get the point object frame normalized coordinates.
oP_ | Normalized coordinates of the point in the object frame oP = (oX, oY, oZ, oW) as a 4-dim vector. |
Definition at line 196 of file vpPoint.cpp.
References vpForwardProjection::oP, vpColVector::resize(), and vpArray2D< Type >::size().
vpColVector vpPoint::getWorldCoordinates | ( | void | ) |
Return the point object frame normalized coordinates.
Definition at line 209 of file vpPoint.cpp.
References vpForwardProjection::oP.
void vpPoint::getWorldCoordinates | ( | vpColVector & | oP_ | ) |
Get the point object frame normalized coordinates.
oP_ | Normalized coordinates of the point in the object frame oP = (oX, oY, oZ, oW) as a 4-dim vector. |
Definition at line 188 of file vpPoint.cpp.
References vpForwardProjection::oP.
|
protectedvirtual |
Basic construction.
Implements vpForwardProjection.
Definition at line 45 of file vpPoint.cpp.
References vpTracker::cP, vpForwardProjection::oP, vpTracker::p, vpColVector::resize(), and set_Z().
Referenced by vpPoint().
|
virtualinherited |
Print to stdout the feature parameters in:
Definition at line 50 of file vpForwardProjection.cpp.
References vpTracker::cP, vpForwardProjection::oP, vpTracker::p, and vpColVector::t().
|
inherited |
Compute the feature parameters in the image plane (vpTracker::p) from the parameters in the camera frame (vpTracker::cP).
Definition at line 65 of file vpForwardProjection.cpp.
References vpTracker::cP, vpTracker::p, and vpForwardProjection::projection().
Referenced by vpMbtDistanceKltCylinder::computeInteractionMatrixAndResidu(), vpMbtFaceDepthNormal::computeNormalVisibility(), vpMbtFaceDepthDense::computeROI(), vpMbtFaceDepthNormal::displayFeature(), vpMbtFaceDepthNormal::getFeaturesForDisplay(), vpKeyPoint::matchPointAndDetect(), and vpForwardProjection::track().
|
inherited |
Compute the feature parameters in the camera frame (vpTracker::cP) and than compute the projection of these parameters in the image plane (vpTracker::p).
cMo | : The homogeneous matrix corresponding to the pose between the camera frame and the object frame. |
Definition at line 81 of file vpForwardProjection.cpp.
References vpForwardProjection::changeFrame(), and vpForwardProjection::projection().
|
virtual |
Perspective projection of the 3D point.
Projection onto the image plane of the point. Update the object attribute p (2D homogeneous coordinates) according to object attribute cP (current 3D coordinates in the camera frame).
Implements vpForwardProjection.
Definition at line 481 of file vpPoint.cpp.
References vpTracker::cP, and vpTracker::p.
Referenced by display().
|
virtual |
Projection onto the image plane of a point. Input: the 3D coordinates in the camera frame _cP, output : the 2D coordinates _p.
Compute the perspective projection of a point _cP.
_cP | : 3-dim vector cP = (cX, cY, cZ) or 4-dim vector cP = (cX, cY, cZ, 1) corresponding to the normalized coordinates of the 3D point in the camera frame. |
_p | : Coordinates of the point in the image plane obtained by perspective projection. |
Implements vpForwardProjection.
Definition at line 219 of file vpPoint.cpp.
References vpColVector::resize().
Referenced by vpPolygon3D::changeFrame(), vpPolygon3D::computePolygonClipped(), vpMbtDistanceCylinder::getModelForDisplay(), vpMbtDistanceCylinder::initMovingEdge(), and vpMbtDistanceCylinder::updateMovingEdge().
void vpPoint::set_oW | ( | double | oW | ) |
Set the point oW coordinate in the object frame.
Definition at line 505 of file vpPoint.cpp.
References vpForwardProjection::oP.
Referenced by vpHomogeneousMatrix::operator*().
void vpPoint::set_oX | ( | double | oX | ) |
Set the point oX coordinate in the object frame.
Definition at line 499 of file vpPoint.cpp.
References vpForwardProjection::oP.
Referenced by vpHomogeneousMatrix::operator*(), vpPose::poseDementhonNonPlan(), and vpPose::poseDementhonPlan().
void vpPoint::set_oY | ( | double | oY | ) |
Set the point oY coordinate in the object frame.
Definition at line 501 of file vpPoint.cpp.
References vpForwardProjection::oP.
Referenced by vpHomogeneousMatrix::operator*(), vpPose::poseDementhonNonPlan(), and vpPose::poseDementhonPlan().
void vpPoint::set_oZ | ( | double | oZ | ) |
Set the point oZ coordinate in the object frame.
Definition at line 503 of file vpPoint.cpp.
References vpForwardProjection::oP.
Referenced by vpHomogeneousMatrix::operator*(), vpPose::poseDementhonNonPlan(), and vpPose::poseDementhonPlan().
void vpPoint::set_W | ( | double | cW | ) |
Set the point cW coordinate in the camera frame.
Definition at line 496 of file vpPoint.cpp.
References vpTracker::cP.
Referenced by vpHomogeneousMatrix::operator*(), and vpPlane::projectionPointOnPlan().
void vpPoint::set_w | ( | double | w | ) |
Set the point w coordinate in the image plane.
Definition at line 512 of file vpPoint.cpp.
References vpTracker::p.
Referenced by vpHomography::operator*().
void vpPoint::set_X | ( | double | cX | ) |
Set the point cX coordinate in the camera frame.
Definition at line 490 of file vpPoint.cpp.
References vpTracker::cP.
Referenced by vpMbtFaceDepthNormal::computeNormalVisibility(), vpMbtFaceDepthNormal::computePolygonCentroid(), vpMbtFaceDepthDense::computeROI(), vpMbtFaceDepthNormal::displayFeature(), vpMbtFaceDepthNormal::getFeaturesForDisplay(), vpMbtPolygon::isVisible(), vpHomogeneousMatrix::operator*(), and vpPlane::projectionPointOnPlan().
void vpPoint::set_x | ( | double | x | ) |
Set the point x coordinate in the image plane.
Definition at line 508 of file vpPoint.cpp.
References vpTracker::p.
Referenced by vpPose::computePlanarObjectPoseWithAtLeast3Points(), vpPose::findMatch(), vpKeyPoint::matchPoint(), vpHomography::operator*(), and vpHomography::project().
void vpPoint::set_Y | ( | double | cY | ) |
Set the point cY coordinate in the camera frame.
Definition at line 492 of file vpPoint.cpp.
References vpTracker::cP.
Referenced by vpMbtFaceDepthNormal::computeNormalVisibility(), vpMbtFaceDepthNormal::computePolygonCentroid(), vpMbtFaceDepthDense::computeROI(), vpMbtFaceDepthNormal::displayFeature(), vpMbtFaceDepthNormal::getFeaturesForDisplay(), vpMbtPolygon::isVisible(), vpHomogeneousMatrix::operator*(), and vpPlane::projectionPointOnPlan().
void vpPoint::set_y | ( | double | y | ) |
Set the point y coordinate in the image plane.
Definition at line 510 of file vpPoint.cpp.
References vpTracker::p.
Referenced by vpPose::computePlanarObjectPoseWithAtLeast3Points(), vpPose::findMatch(), vpKeyPoint::matchPoint(), vpHomography::operator*(), and vpHomography::project().
void vpPoint::set_Z | ( | double | cZ | ) |
Set the point cZ coordinate in the camera frame.
Definition at line 494 of file vpPoint.cpp.
References vpTracker::cP.
Referenced by vpMbtFaceDepthNormal::computeNormalVisibility(), vpPose::computePlanarObjectPoseWithAtLeast3Points(), vpMbtFaceDepthNormal::computePolygonCentroid(), vpMbtFaceDepthDense::computeROI(), vpMbtFaceDepthNormal::displayFeature(), vpMbtFaceDepthNormal::getFeaturesForDisplay(), init(), vpMbtPolygon::isVisible(), vpHomogeneousMatrix::operator*(), and vpPlane::projectionPointOnPlan().
|
inlineinherited |
Definition at line 191 of file vpForwardProjection.h.
void vpPoint::setWorldCoordinates | ( | const std::vector< double > & | oP_ | ) |
Set the 3D point object frame coordinates.
oP_ | Vector containing the coordinates of the 3D point in the object frame. This vector could be of dimension 3 or 4.
|
Definition at line 156 of file vpPoint.cpp.
References vpException::dimensionError, and vpForwardProjection::oP.
|
virtual |
Set the 3D point object frame coordinates.
oP_ | Vector containing the coordinates of the 3D point in the object frame. This vector could be of dimension 3 or 4.
|
Implements vpForwardProjection.
Definition at line 128 of file vpPoint.cpp.
References vpException::dimensionError, vpForwardProjection::oP, and vpArray2D< Type >::size().
void vpPoint::setWorldCoordinates | ( | double | oX, |
double | oY, | ||
double | oZ | ||
) |
Set the 3D point object frame coordinates oP = (oX, oY, oZ, 1).
oX,oY,oZ | Coordinates of a 3D point in the object frame. |
Definition at line 110 of file vpPoint.cpp.
References vpForwardProjection::oP.
Referenced by vpMbTracker::addPolygon(), vpMbTracker::addProjectionErrorPolygon(), vpKeyPoint::compute3D(), vpKeyPoint::compute3DForPointsOnCylinders(), vpMbtFaceDepthNormal::computeDesiredNormalAndCentroid(), vpMbTracker::extractCylinders(), vpMbTracker::extractFaces(), vpMbTracker::extractLines(), vpMbTracker::getGravityCenter(), vpProjectionDisplay::init(), vpMbtDistanceKltCylinder::init(), vpMbTracker::loadCAOModel(), vpKeyPoint::matchPoint(), vpPose::poseFromRectangle(), vpWireFrameSimulator::projectCameraTrajectory(), and vpPoint().
|
inherited |
Track the feature parameters in the camera frame (vpTracker::cP) and than compute the projection of these parameters in the image plane (vpTracker::p).
This method is similar to project(const vpHomogeneousMatrix &).
cMo | : The homogeneous matrix corresponding to the pose between the camera frame and the object frame. |
Definition at line 103 of file vpForwardProjection.cpp.
References vpForwardProjection::project().
Referenced by vpPose::computeResidual(), vpProjectionDisplay::displayCamera(), vpImageDraw::drawFrame(), vpPose::poseVirtualVS(), vpPose::poseVirtualVSrobust(), vpWireFrameSimulator::projectCameraTrajectory(), vpSimulatorAfma6::updateArticularPosition(), and vpSimulatorViper850::updateArticularPosition().
|
friend |
Definition at line 405 of file vpPoint.cpp.
|
inherited |
Feature coordinates expressed in the camera frame cP.
Definition at line 72 of file vpTracker.h.
Referenced by vpFeaturePoint3D::buildFrom(), vpCircle::changeFrame(), vpCylinder::changeFrame(), vpLine::changeFrame(), changeFrame(), vpSphere::changeFrame(), vpFeatureBuilder::create(), get_W(), get_X(), get_Y(), get_Z(), vpCircle::init(), vpCylinder::init(), vpLine::init(), init(), vpSphere::init(), vpMbtPolygon::isVisible(), vpTracker::operator=(), vpForwardProjection::print(), vpPose::printPoint(), vpForwardProjection::project(), vpCircle::projection(), vpCylinder::projection(), vpLine::projection(), projection(), vpSphere::projection(), set_W(), set_X(), set_Y(), and set_Z().
|
inherited |
Flag used to indicate if the feature parameters cP expressed in the camera frame are available.
Definition at line 78 of file vpTracker.h.
Referenced by vpTracker::init(), and vpTracker::operator=().
|
inherited |
Feature coordinates expressed in the object frame.
Definition at line 223 of file vpForwardProjection.h.
Referenced by vpCylinder::changeFrame(), vpLine::changeFrame(), changeFrame(), vpSphere::changeFrame(), vpCircle::changeFrame(), get_oW(), get_oX(), get_oY(), get_oZ(), getWorldCoordinates(), vpCircle::init(), vpCylinder::init(), vpLine::init(), init(), vpSphere::init(), vpForwardProjection::print(), vpPose::printPoint(), set_oW(), set_oX(), set_oY(), set_oZ(), vpLine::setWorldCoordinates(), vpCircle::setWorldCoordinates(), vpCylinder::setWorldCoordinates(), vpSphere::setWorldCoordinates(), and setWorldCoordinates().
|
inherited |
Feature coordinates expressed in the image plane p. They correspond to 2D normalized coordinates expressed in meters.
Definition at line 68 of file vpTracker.h.
Referenced by vpMbtDistanceCircle::computeInteractionMatrixError(), vpCircle::computeIntersectionPoint(), vpMeterPixelConversion::convertEllipse(), vpFeatureBuilder::create(), vpCircle::display(), vpCylinder::display(), vpLine::display(), display(), vpSphere::display(), vpProjectionDisplay::display(), vpProjectionDisplay::displayCamera(), vpFeatureDisplay::displayEllipse(), vpPose::displayModel(), vpImageDraw::drawFrame(), get_w(), get_x(), get_y(), vpCircle::init(), vpCylinder::init(), vpLine::init(), init(), vpSphere::init(), vpMeTracker::init(), vpTracker::operator=(), vpForwardProjection::print(), vpPose::printPoint(), vpForwardProjection::project(), vpCircle::projection(), vpCylinder::projection(), vpLine::projection(), projection(), vpSphere::projection(), set_w(), set_x(), and set_y().