SbPlaneProjector(3IV)

SbPlaneProjector (SbPlnProj) - plane projector

As shipped in IRIX 6.5.30. Added in IRIX 6.5.22.

NAME
     SbPlaneProjector (SbPlnProj) - plane projector

INHERITS FROM
     SbProjector > SbPlaneProjector

SYNOPSIS
     #include <Inventor_c/projectors/SbPlaneProjector.h>

     typedef SbPlaneProjector  SbPlnProj

          Functions from class SbPlaneProjector:

     SbPlaneProjector *  SbPlnProjCreate(SbBool orient = FALSE)
     SbPlaneProjector *  SbPlnProjCreatePln(const SbPlane *plane, SbBool
                              orient = FALSE)
     void                SbPlnProjDelete(SbPlnProj *this)
     void                SbPlnProjSetPln(SbPlnProj *this, const SbPlane
                              *plane)
     const SbPlane *     SbPlnProjGetPln(const SbPlnProj *this)
     void                SbPlnProjSetOrientToEye(SbPlnProj *this, SbBool
                              orientToEye)
     SbBool              SbPlnProjIsOrientToEye(const SbPlnProj *this)
     SbVec3f             SbPlnProjGetVecMouse2(SbPlnProj *this, const SbVec2f
                              *mousePosition1, const SbVec2f *mousePosition2)
     SbVec3f             SbPlnProjGetVecMouse1(SbPlnProj *this, const SbVec2f
                              *mousePosition)
     void                SbPlnProjSetStartPosMouse(SbPlnProj *this, const
                              SbVec2f *mousePosition)
     void                SbPlnProjSetStartPosPt(SbPlnProj *this, const SbVec3f
                              *point)

          Functions from class SbProjector:

     SbVec3f               SbPlnProjProject(SbPlnProj *this, const SbVec2f
                                *point)
     void                  SbPlnProjSetViewVol(SbPlnProj *this, const
                                SbViewVolume *vol)
     const SbViewVolume *  SbPlnProjGetViewVol(const SbPlnProj *this)
     void                  SbPlnProjSetWorkSpace(SbPlnProj *this, const
                                SbMatrix *space)
     const SbMatrix *      SbPlnProjGetWorkSpace(const SbPlnProj *this)
     SbProjector *         SbPlnProjCopy(const SbPlnProj *this)


DESCRIPTION
     SbPlaneProjector projects the mouse onto a plane. This is typically used
     to write interactive 3D manipulators and viewers.

FUNCTIONS
     SbPlaneProjector *  SbPlnProjCreate(SbBool orient = FALSE)
          Constructor. The default plane passes through the origin and is
          oriented perpendicular to the Z axis.

     SbPlaneProjector *  SbPlnProjCreatePln(const SbPlane *plane, SbBool
                              orient = FALSE)
          Constructor which is passed a plane. If orient to eye is TRUE, the
          plane will be reoriented to the eye.

     void                SbPlnProjDelete(SbPlnProj *this)
          Destructor.

     void                SbPlnProjSetPln(SbPlnProj *this, const SbPlane
                              *plane)
     const SbPlane *     SbPlnProjGetPln(const SbPlnProj *this)
          Set and get the plane to use.

     void                SbPlnProjSetOrientToEye(SbPlnProj *this, SbBool
                              orientToEye)
     SbBool              SbPlnProjIsOrientToEye(const SbPlnProj *this)
          Set and get whether the projector should be oriented towards the
          eye. If orientToEye is set to TRUE, the given plane's direction is
          ignored, and the plane will be oriented to the eye. It will pass
          through the same point from the origin defined by the original dir *
          dist. Set to FALSE if the plane's direction should remain in working
          space.

     SbVec3f             SbPlnProjGetVecMouse2(SbPlnProj *this, const SbVec2f
                              *mousePosition1, const SbVec2f *mousePosition2)
          Get a vector on this plane given two normalized mouse positions.

     SbVec3f             SbPlnProjGetVecMouse1(SbPlnProj *this, const SbVec2f
                              *mousePosition)
          Get a vector given the current mouse point. Uses the last point on
          this projector from the previous call to  SbPlnProjGetVecMouse1(),
          SbPlnProjSetStartPosMouse(), or SbPlnProjSetStartPosPt(). Do not use
          this if the working space transform is changing since the new point
          will be in a different space than the old one.

     void                SbPlnProjSetStartPosMouse(SbPlnProj *this, const
                              SbVec2f *mousePosition)
          Set the initial mouse position.

     void                SbPlnProjSetStartPosPt(SbPlnProj *this, const SbVec3f
                              *point)
          Set the initial position from a point on the projector.


FILE FORMAT/DEFAULTS
     PlaneProjector {
     }

SEE ALSO
     SbCylinderProjector, SbCylinderPlaneProjector,
     SbCylinderSectionProjector, SbCylinderSheetProjector, SbLineProjector,
     SbSpherePlaneProjector, SbSphereProjector, SbSphereSectionProjector,
     SbSphereSheetProjector