User Documentation
RAVL, Recognition And Vision Library
Ravl - Math - Geometry - 3D - LinePV3dC

LinePV3dC::LinePV3dC(const Point3dC &,const Point3dC &)
LinePV3dC::LinePV3dC(const Point3dC &,const Vector3dC &)
LinePV3dC::FirstPoint(void) const
LinePV3dC::SecondPoint(void) const
LinePV3dC::MiddlePoint(void) const
LinePV3dC::PointT(RealT) const
LinePV3dC::Vector(void) const
LinePV3dC::LinePP(void) const
LinePV3dC::Distance(const LinePV3dC &)
LinePV3dC::Distance(const Point3dC &) const
LinePV3dC::ShortestLine(const LinePV3dC &) const
LinePV3dC::Intersection(const LinePV3dC &) const
LinePV3dC::ProjectionInto(const PlaneABCD3dC &) const

Line determined by one point and a vector in 3D space
include "Ravl/LinePV3d.hh"
User Level:Normal
In Scope:RavlN

The LinePV3dC class represents the line in 3 dimensional Euclidian space. The line is represented by one point and its direction vector.


Constructors, assigment, copy, and destructor.
Creates the non-existing line (0,0,0) [0,0,0].

LinePV3dC(const Point3dC & first,const Point3dC & second)
Creates the line passing through the points 'first' and second.

LinePV3dC(const Point3dC & a,const Vector3dC & v)
Creates the line passing through the point 'a' and with the direction 'v'.

Access to elements of the line.
const Point3dC & FirstPoint() const
Returns the point of the line.

Point3dC SecondPoint() const
Returns the point which is the end point of the direction vector placed in the first point of the line.

Point3dC MiddlePoint() const
Returns the point which is in the middle of the FirstPoint() and the SecondPoint() of the line segment.

Point3dC PointT(RealT lambda) const
Returns the point FirstPoint() + lambda * direction.

const Vector3dC & Vector() const
Returns the direction vector of this line.

LinePP3dC LinePP() const
Returns the line segment represented by the start point and the end point.
The start point is equal to the start point of this line. The end point of the returned line is determined by the sum of the start point and the direction vector of this line.

Geometrical computations.
RealT Distance(const LinePV3dC & line)
Returns the shortest distance between the lines.

RealT Distance(const Point3dC & p) const
Returns the distance of the point 'p' from this line.

LinePV3dC ShortestLine(const LinePV3dC & line) const
Returns the line which passes through the closest points of both lines.
The returned line has the first point on this line and the second point on the 'line'.

Point3dC Intersection(const LinePV3dC & l) const
Returns the point which belongs to both lines.
If the lines have no intersection, the function returns the point which lies in the middle of the shortest line segment between both lines.

LinePV3dC ProjectionInto(const PlaneABCD3dC & p) const
Returns the line which is the orthogonal projection of this line into the plane 'p'.

Maintainer:Radek Marik, Created: 06/08/1995, Documentation by CxxDoc: Tue Aug 13 09:59:02 2002