Main Page | Modules | Namespace List | Class Hierarchy | Class List | Namespace Members | Class Members | Related Pages

PlaneProjector Class Reference

This projects the mouse onto a plane in world space. More...

List of all members.

Public Member Functions

EMMA_EXPORT PlaneProjector (bool orient=false)
 Constructor The default plane passes through the origin and is oriented toward the Z axis.
EMMA_EXPORT PlaneProjector (const Plane &plane, bool orient=false)
 Constructor that takes a plane.
EMMA_EXPORT ~PlaneProjector ()
 Destructor.
virtual EMMA_EXPORT Fusion::Vec3f project (const Fusion::Vec2f &point)
 Apply the projector using the given point, returning the point in three dimensions that it projects to.
EMMA_EXPORT void setPlane (const Plane &plane)
 Set/get the plane to use.
EMMA_EXPORT void setOrientToEye (bool orientToEye)
 Set/get whether the projector should be oriented towards the eye.
virtual EMMA_EXPORT Fusion::Vec3f getVector (const Fusion::Vec2f &mousePosition1, const Fusion::Vec2f &mousePosition2)
 Get a vector on this plane given two normalized mouse points.
virtual EMMA_EXPORT Fusion::Vec3f getVector (const Fusion::Vec2f &mousePosition)
 Get a vector given the current mouse point.
EMMA_EXPORT void setStartPosition (const Fusion::Vec2f &mousePosition)
 Set the initial position from a mouse position.
EMMA_EXPORT void setStartPosition (const Fusion::Vec3f &point)
 Set the initial position from a point on the projector.


Detailed Description

This projects the mouse onto a plane in world space.

If orientToEye is set to true, the plane will be oriented to the eye. Use setWorkingSpace() to give a matrix that transforms to local space.


Member Function Documentation

virtual EMMA_EXPORT Fusion::Vec3f getVector const Fusion::Vec2f &  mousePosition  )  [virtual]
 

Get a vector given the current mouse point.

Uses the last point on this projector from the previous call to getVector or setStartPostion. 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.

virtual EMMA_EXPORT Fusion::Vec3f project const Fusion::Vec2f &  point  )  [virtual]
 

Apply the projector using the given point, returning the point in three dimensions that it projects to.

The point should be normalized from 0-1, with (0,0) at the lower-left.

EMMA_EXPORT void setOrientToEye bool  orientToEye  ) 
 

Set/get whether the projector should be oriented towards the eye.

If orient 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.


Generated on Sat Apr 1 06:08:09 2006 for Emma Content Development Kit by  doxygen 1.4.3