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

SphereSheetProjector Class Reference

The SphereSheetProjector is projector that is a sphere with a hyperbolic sheet draped over it. More...

Inheritance diagram for SphereSheetProjector:

SphereProjector List of all members.

Public Member Functions

EMMA_EXPORT SphereSheetProjector (bool orientToEye=true)
 Default constructor.
EMMA_EXPORT SphereSheetProjector (const Sphere &sph, bool orientToEye=true)
 Constructor taking the sphere.
EMMA_EXPORT ~SphereSheetProjector ()
 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.
virtual EMMA_EXPORT Fusion::Rotation getRotation (const Fusion::Vec3f &point1, const Fusion::Vec3f &point2)
 Computes a rotation based on two points on this projector.

Detailed Description

The SphereSheetProjector is projector that is a sphere with a hyperbolic sheet draped over it.

As the mouse moves away from the sphere, rotation gradually turns into pure roll.

This projector is good for trackballs that want to do a continuous roll. It allows pure roll as you move away from the sphere.

Warning: This projector tends to become unstable when the mouse position is beyond about 2*radius from the center of the sphere. Therefore, it is best to use this as a large, window-sized trackball.


Constructor & Destructor Documentation

EMMA_EXPORT SphereSheetProjector bool  orientToEye = true  ) 
 

Default constructor.

The default view volume is undefined. The default working space is identity (world space). The default sphere to use has a radius of 1.0 and is centered at (0,0,0). The default eye orientation is TRUE.


Member Function Documentation

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.

Implements SphereProjector.


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