Provided by: libcoin80-doc_3.1.4~abc9f50-4ubuntu2_all bug

NAME

       SbDPPlane -

       The SbDPPlane class represents a plane in 3D space.

       SbDPPlane is used by many other classes in Coin. It provides a way of representing a
       plane, specified by a plane normal vector and a distance from the origin of the coordinate
       system.

SYNOPSIS

       #include <Inventor/SbLinear.h>

   Public Member Functions
       SbDPPlane (void)
       SbDPPlane (const SbVec3d &normal, const double D)
       SbDPPlane (const SbVec3d &p0, const SbVec3d &p1, const SbVec3d &p2)
       SbDPPlane (const SbVec3d &normal, const SbVec3d &point)
       void offset (const double d)
       SbBool intersect (const SbDPLine &l, SbVec3d &intersection) const
       void transform (const SbDPMatrix &matrix)
       SbBool isInHalfSpace (const SbVec3d &point) const
       double getDistance (const SbVec3d &point) const
       const SbVec3d & getNormal (void) const
       double getDistanceFromOrigin (void) const
       void print (FILE *file) const
       SbBool intersect (const SbDPPlane &pl, SbDPLine &line) const

   Friends
       int operator== (const SbDPPlane &p1, const SbDPPlane &p2)
       int operator!= (const SbDPPlane &p1, const SbDPPlane &p2)

Detailed Description

       The SbDPPlane class represents a plane in 3D space.

       SbDPPlane is used by many other classes in Coin. It provides a way of representing a
       plane, specified by a plane normal vector and a distance from the origin of the coordinate
       system.

       Be aware that this class is an extension for Coin, and it is not available in the original
       SGI Open Inventor v2.1 API.

       Since:
           Coin 2.0

Constructor & Destructor Documentation

   SbDPPlane::SbDPPlane (void)
       An SbDPPlane instantiated with the default constructor will be uninitialized.

   SbDPPlane::SbDPPlane (const SbVec3d &normalref, const doubleD)
       Construct an SbDPPlane instance with a normal pointing in the given direction and the
       given shortest distance from the origin of the coordinate system to a point in the plane.

       normal must not be a null vector.

   SbDPPlane::SbDPPlane (const SbVec3d &p0, const SbVec3d &p1, const SbVec3d &p2)
       Construct an SbDPPlane with three points laying in the plane. Make sure p0, p1 and p2 are
       actually three distinct points when using this constructor.

   SbDPPlane::SbDPPlane (const SbVec3d &normalref, const SbVec3d &point)
       Construct an SbDPPlane from a normal and a point laying in the plane.

       normal must not be a null vector.

Member Function Documentation

   void SbDPPlane::offset (const doubled)
       Add the given offset d to the plane distance from the origin.

   SbBool SbDPPlane::intersect (const SbDPLine &l, SbVec3d &intersection) const
       Find the point on given line l intersecting the plane and return it in intersection. If
       the line is parallel to the plane, we return FALSE, otherwise TRUE.

       Do not pass an invalid line for the l parameter (i.e. with a null direction vector).

   void SbDPPlane::transform (const SbDPMatrix &matrix)
       Transform the plane by matrix.

       See Also:
           offset()

   SbBool SbDPPlane::isInHalfSpace (const SbVec3d &point) const
       Check if the given point lies in the halfspace of the plane which the plane normal vector
       is pointing.

   double SbDPPlane::getDistance (const SbVec3d &point) const
       Return the distance from point to plane. Positive distance means the point is in the
       plane's half space.

       This method is an extension specific to Coin versus the original SGI Inventor API.

   const SbVec3d & SbDPPlane::getNormal (void) const
       Return the plane's normal vector, which indicates which direction the plane is oriented.

       See Also:
           getDistanceFromOrigin().

   double SbDPPlane::getDistanceFromOrigin (void) const
       Return distance from origin of coordinate system to the point in the plane which is
       closest to the origin.

       See Also:
           getNormal().

   void SbDPPlane::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 build.

   SbBool SbDPPlane::intersect (const SbDPPlane &pl, SbDPLine &line) const
       Intersect this plane with pl, and return the resulting line in line. Returns TRUE if an
       intersection line can be found, and FALSE if the planes are parallel.

       This function is an extension for Coin, and it is not available in the original SGI Open
       Inventor v2.1 API.

       Since:
           Coin 2.0

Friends And Related Function Documentation

   int operator== (const SbDPPlane &p1, const SbDPPlane &p2) [friend]
       Check the two given planes for equality.

   int operator!= (const SbDPPlane &p1, const SbDPPlane &p2) [friend]
       Check the two given planes for unequality.

Author

       Generated automatically by Doxygen for Coin from the source code.