NAME
SbDPLine -
The SbDPLine class represents a line in 3D space.
SbDPLine is used by many other classes in Coin. It provides a way of
specifying a directed line (also known as a ray) through a specified
point (origin) and a direction in 3D space. Note that the line is
infinite in both directions from its definition point.
SYNOPSIS
Public Member Functions
SbDPLine (void)
SbDPLine (const SbVec3d &p0, const SbVec3d &p1)
void setValue (const SbVec3d &p0, const SbVec3d &p1)
SbBool getClosestPoints (const SbDPLine &line2, SbVec3d &ptOnThis,
SbVec3d &ptOnLine2) const
SbVec3d getClosestPoint (const SbVec3d &point) const
const SbVec3d & getPosition (void) const
const SbVec3d & getDirection (void) const
void print (FILE *file) const
Detailed Description
The SbDPLine class represents a line in 3D space.
SbDPLine is used by many other classes in Coin. It provides a way of
specifying a directed line (also known as a ray) through a specified
point (origin) and a direction in 3D space. Note that the line is
infinite in both directions from its definition point.
Be aware that this class is an extension for Coin, and it is not
available in the original SGI Open Inventor v2.1 API.
See also:
SbVec3d
Since:
Coin 2.0
Constructor & Destructor Documentation
SbDPLine::SbDPLine (void) The empty constructor does nothing. The line will
be uninitialized until the first assignment or setValue() call.
SbDPLine::SbDPLine (const SbVec3d & p0, const SbVec3d & p1) Constructor
with p0 specifying the line start point and p1 the line end point. p0
should not be the same as p1, as this will lead to having a null vector
as the direction vector, which would cause division by zero problems in
some of the other methods on this class.
Member Function Documentation
void SbDPLine::setValue (const SbVec3d & p0, const SbVec3d & p1) Set new
position and direction of the line by specifying line start point and
end point. p0 should not be the same as p1, as this will lead to having
a null vector as the direction vector, which would cause division by
zero problems in some of the other methods on this class.
SbBool SbDPLine::getClosestPoints (const SbDPLine & line2, SbVec3d &
ptOnThis, SbVec3d & ptOnLine2) const Returns the two closest points on
the lines. If the lines are parallel, all points are equally close and
we return FALSE. If the lines are not parallel, the point positions
will be stored in ptOnThis and ptOnLine2, and we’ll return TRUE.
See also:
getClosestPoint().
SbVec3d SbDPLine::getClosestPoint (const SbVec3d & point) const Returns the
point on the line which is closest to point.
See also:
getClosestPoints().
const SbVec3d & SbDPLine::getPosition (void) const Return a vector
representing a point on the line.
const SbVec3d & SbDPLine::getDirection (void) const Return a vector
representing the direction of the line. The direction vector will
always be normalized.
void SbDPLine::print (FILE * fp) const Dump the state of this object to the
file stream. Only works in debug version of library, method does
nothing in an optimized compile.
Author
Generated automatically by Doxygen for Coin from the source code.