Base class for representing projectors. More...
#include <Inventor/projectors/SbProjector.h>
Public Member Functions  
virtual  ~SbProjector () 
Destructor.  
virtual SbVec3f  project (const SbVec2f &point)=0 
Apply the projector using the given point, returning the point in three dimensions that it projects to.  
virtual SbVec3f  intersect (const SbLine &line)=0 
Applies the projector using the given line in world coordinates, returning the point in three dimensions that it projects to.  
virtual void  setViewVolume (const SbViewVolume &vol) 
Set the view volume to use for the projection.  
const SbViewVolume &  getViewVolume () const 
Get the view volume to use for the projection.  
virtual void  setWorkingSpace (const SbMatrix &space) 
Set the transform space to work in.  
const SbMatrix &  getWorkingSpace () const 
Get the transform space to work in.  
virtual SbProjector *  copy () const =0 
Creates and returns an exact copy of the projector.  
Base class for representing projectors.
SbProjector is the base class for all projector classes. Projector classes are used to convert from window space (usually based on the mouse location) into a 3D point. This is done by projecting the window coordinate as a 3D vector onto a geometric function in 3space, and computing the intersection point. Most projectors actually compute incremental changes and produce incremental rotations and translation as needed. Projectors are used to write 3D interactive manipulators and viewers.
SbCylinderProjector, SbCylinderPlaneProjector, SbCylinderSectionProjector, SbCylinderSheetProjector, SbLineProjector, SbPlaneProjector, SbSpherePlaneProjector, SbSphereProjector, SbSphereSectionProjector, SbSphereSheetProjector
Definition at line 84 of file SbProjector.h.

inlinevirtual 
Destructor.
Definition at line 90 of file SbProjector.h.

pure virtual 
Creates and returns an exact copy of the projector.
Implemented in SbCylinderPlaneProjector, SbCylinderSectionProjector, SbCylinderSheetProjector, SbLineProjector, SbPlaneProjector, SbSpherePlaneProjector, SbSphereSectionProjector, and SbSphereSheetProjector.

inline 
Get the view volume to use for the projection.
Definition at line 117 of file SbProjector.h.

inline 
Get the transform space to work in.
Definition at line 129 of file SbProjector.h.
Applies the projector using the given line in world coordinates, returning the point in three dimensions that it projects to.
Note: For the projectors that support "orientToEye", setting this flag to TRUE causes the projector to orient to the line when the intersect method is called. New for v3.0.
Implemented in SbCylinderPlaneProjector, SbCylinderSectionProjector, SbCylinderSheetProjector, SbLineProjector, SbPlaneProjector, SbSpherePlaneProjector, SbSphereSectionProjector, SbSphereSheetProjector, SbCylinderProjector, and SbSphereProjector.
Apply the projector using the given point, returning the point in three dimensions that it projects to.
The point should be normalized (lie in the range [0.0,1.0]), with (0,0) at the lowerleft.
Implemented in SbCylinderPlaneProjector, SbCylinderSectionProjector, SbCylinderSheetProjector, SbLineProjector, SbPlaneProjector, SbSpherePlaneProjector, SbSphereSectionProjector, SbSphereSheetProjector, SbCylinderProjector, and SbSphereProjector.

virtual 
Set the view volume to use for the projection.
This is typically supplied from SoCamera::getViewVolume().

virtual 
Set the transform space to work in.
This matrix should transform working space coordinates into world space. The default matrix is identity, meaning that the default working space is world space.
Reimplemented in SbCylinderProjector, and SbSphereProjector.