Jafar
|
This class defines a line (which is a space of dimension 1). More...
This class defines a line (which is a space of dimension 1).
#include <Line.hpp>
Classes | |
class | Driver |
Base class of Drivers for a Line. More... | |
class | EuclideanDriver |
An EuclideanDriver for a Line is used for Lines known from their origin (a point of the line) and the direction verctor. More... | |
class | TwoPointsPointerDriver |
The TwoPointsPointerDriver is used for Line for which we knows two points. More... | |
Public Member Functions | |
Line (Driver *d) | |
Line (const Line &l) | |
Line & | operator= (const Line &rhs) |
virtual Atom< dimension >::Type | type () const |
virtual BoundingBox< dimension > | boundingBox () const |
HomogenousVecD | pointAt (double t) const |
This will call Line::Driver::pointAt . | |
HomogenousSymMatrixD | pointAtCov (double t, double tCov) const |
This will call Line::Driver::pointAt . | |
HomogenousVecD | origin () const |
This will call Line::Driver::origin . | |
HomogenousSymMatrixD | originCov () const |
HomogenousVecD | direction () const |
This will call Line::Driver::direction . | |
HomogenousSymMatrixD | directionCov () const |
HomogenousVecD | project (const HomogenousVecD &p) const |
Project "orthogonally" a point on the line. | |
HomogenousVecD | project (const Point< dimension > &p) const |
Project "orthogonally" a point on the line. | |
void | projectCov (const HomogenousVecD &p, const HomogenousSymMatrixD &pCov, HomogenousVecD &v, HomogenousSymMatrixD &vCov) const |
Compute the projection and the associated covariance of a point. | |
void | projectCov (const Point< dimension > &p, HomogenousVecD &v, HomogenousSymMatrixD &cov) const |
Compute the projection and the associated covariance of a point. | |
void | closestPoint (const Line< dimension > &l, HomogenousVecD &v1, HomogenousVecD &v2) const |
void | closestPointCov (const Line< dimension > &l, HomogenousVecD &v1, HomogenousSymMatrixD &cov1, HomogenousVecD &v2, HomogenousSymMatrixD &cov2) const |
Driver * | clonedDriver () const |
Protected Member Functions | |
void | setDriver (Driver *d) |
Private Types | |
typedef Atom< dimension > ::HomogenousVecD | HomogenousVecD |
typedef Atom< dimension > ::HomogenousMatrixD | HomogenousMatrixD |
typedef Atom< dimension > ::HomogenousSymMatrixD | HomogenousSymMatrixD |
typedef Atom< dimension >::VecD | VecD |
typedef Repere< dimension > | RepereD |
Private Member Functions | |
void | closestPointJac (const HomogenousVecD &O1, const HomogenousVecD &u1, const HomogenousVecD &O2, const HomogenousVecD &u2, HomogenousMatrixD &O1Jac, HomogenousMatrixD &u1Jac, HomogenousMatrixD &O2Jac, HomogenousMatrixD &u2Jac) const |
template<> | |
void | closestPointJac (const HomogenousVecD &O1, const HomogenousVecD &u1, const HomogenousVecD &O2, const HomogenousVecD &u2, HomogenousMatrixD &O1Jac, HomogenousMatrixD &u1Jac, HomogenousMatrixD &O2Jac, HomogenousMatrixD &u2Jac) const |
Private Attributes | |
Driver * | m_driver |
BoundingBox< dimension > jafar::geom::Line< dimension >::boundingBox | ( | ) | const [inline, virtual] |
Implements jafar::geom::Atom< dimension >.
Reimplemented in jafar::geom::Segment< dimension >.
Definition at line 463 of file LineImpl.hpp.
Line< dimension >::Driver * jafar::geom::Line< dimension >::clonedDriver | ( | ) | const [inline] |
Definition at line 452 of file LineImpl.hpp.
References jafar::geom::Line< dimension >::Driver::cloneLineDriver().
Line< dimension >::HomogenousVecD jafar::geom::Line< dimension >::direction | ( | ) | const [inline] |
This will call Line::Driver::direction .
Definition at line 195 of file LineImpl.hpp.
References jafar::geom::Line< dimension >::Driver::direction().
Referenced by jafar::geom::Segment< dimension >::TwoPointsDriver::cloneLineDriver(), jafar::geom::Line< dimension >::project(), and jafar::geom::Line< dimension >::projectCov().
Line< dimension >::HomogenousVecD jafar::geom::Line< dimension >::origin | ( | ) | const [inline] |
This will call Line::Driver::origin .
Definition at line 184 of file LineImpl.hpp.
References jafar::geom::Line< dimension >::Driver::origin().
Referenced by jafar::geom::Segment< dimension >::TwoPointsDriver::cloneLineDriver(), jafar::geom::intersection(), jafar::geom::Line< dimension >::project(), and jafar::geom::Line< dimension >::projectCov().
Line< dimension >::HomogenousVecD jafar::geom::Line< dimension >::pointAt | ( | double | t | ) | const [inline] |
This will call Line::Driver::pointAt .
t | parameter |
Definition at line 174 of file LineImpl.hpp.
References jafar::geom::Line< dimension >::Driver::pointAt().
Referenced by jafar::geom::intersection().
Line< dimension >::HomogenousSymMatrixD jafar::geom::Line< dimension >::pointAtCov | ( | double | t, |
double | tCov | ||
) | const [inline] |
This will call Line::Driver::pointAt .
t | parameter |
Definition at line 179 of file LineImpl.hpp.
References jafar::geom::Line< dimension >::Driver::direction().
virtual Atom<dimension>::Type jafar::geom::Line< dimension >::type | ( | ) | const [inline, virtual] |
Implements jafar::geom::Atom< dimension >.
Reimplemented in jafar::geom::Segment< dimension >.
Generated on Wed Oct 15 2014 00:37:37 for Jafar by doxygen 1.7.6.1 |