Provided by: inventor-doc_2.1.5-10-18_all bug

NAME

       SbCylinderProjector — cylinder projector

INHERITS FROM

       SbProjector > SbCylinderProjector

SYNOPSIS

       #include <Inventor/projectors/SbCylinderProjector.h>

          Methods from class SbCylinderProjector:

                         ~SbCylinderProjector()
     SbVec3f             projectAndGetRotation(const SbVec2f &point, SbRotation &rot)
     virtual SbRotation  getRotation(const SbVec3f &point1, const SbVec3f &point2)
     void                setCylinder(const SbCylinder &cyl)
     const SbCylinder &  getCylinder() const
     void                setOrientToEye(SbBool orientToEye)
     SbBool              isOrientToEye() const
     void                setFront(SbBool isFront)
     SbBool              isFront() const
     SbBool              isPointInFront(const SbVec3f &point) const

          Methods from class SbProjector:

     virtual SbVec3f        project(const SbVec2f &point)
     virtual void           setViewVolume(const SbViewVolume &vol)
     const SbViewVolume &   getViewVolume() const
     virtual void           setWorkingSpace(const SbMatrix &space)
     const SbMatrix &       getWorkingSpace() const
     virtual SbProjector *  copy() const

DESCRIPTION

       SbCylinderProjector  is an abstract base class for projectors that use a cylinder in their
       projection. The getRotation() method  for an  SbCylinderProjector  will  always  return  a
       rotation that is about the axis of the cylinder. Cylinder projectors are typically used to
       write interactive 3D manipulators and viewers.

METHODS

                         ~SbCylinderProjector()
          Destructor.

     SbVec3f             projectAndGetRotation(const SbVec2f &point, SbRotation &rot)
          Apply the projector using the given point, returning the point in three dimensions that
          it projects to. This also returns in rot a rotation about the axis of the cylinder from
          the last projected point to this one. The passed point should be normalized  (i.e.  lie
          in the range [0.0,1.0]), with (0,0) at the lower-left.

     virtual SbRotation  getRotation(const SbVec3f &point1, const SbVec3f &point2)
          Get  a rotation given two points on this cylinder projector. The rotation will be about
          the axis of the cylinder.

     void                setCylinder(const SbCylinder &cyl)
     const SbCylinder &  getCylinder() const
          Set and get the cylinder on which to project points. The default  cylinder  is  aligned
          with the Y axis and has radius 1.0.

     void                setOrientToEye(SbBool orientToEye)
     SbBool              isOrientToEye() const
          Set  and  get  whether  the projector should always be oriented towards the eye. Set to
          FALSE if the tolerance should be evaluated in working space.

     void                setFront(SbBool isFront)
     SbBool              isFront() const
     SbBool              isPointInFront(const SbVec3f &point) const
          Set and get whether the projector should intersect the half of the cylinder that  faces
          the eye. Set to FALSE if the projector should intersect with the rear half.

SEE ALSO

       SbCylinderPlaneProjector,       SbCylinderSectionProjector,      SbCylinderSheetProjector,
       SbLineProjector,     SbPlaneProjector,     SbSpherePlaneProjector,      SbSphereProjector,
       SbSphereSectionProjector, SbSphereSheetProjector

                                                                       SbCylinderProjector(3IV)()