squareScaleManipContext/manipulatorMath.h
         
    
class planeMath
{
public:
    planeMath();
    bool setPlane( 
const MPoint& pointOnPlane, 
const MVector& normalToPlane );
 
    bool intersect( 
const MPoint& linePoint, 
const MVector& lineDirection, 
MPoint& intersectPoint );
 
    double a,b,c,d;
};
class lineMath
{
public:
    lineMath();
    bool setLine( 
const MPoint& linePoint, 
const MVector& lineDirection );
 
    bool closestPoint( 
const MPoint& toPoint, 
MPoint& closest );
 
};
inline double minOfThree( double a, double b, double c )
{
    if ( a < b && a < c )
        return a;
    if ( b < a && b < c )
        return b;
    return c;
}
inline double maxOfThree( double a, double b, double c )
{
    if ( a > b && a > c )
        return a;
    if ( b > a && b > c )
        return b;
    return c;
}
class DegreeRadianConverter
{
    public:
        double degreesToRadians( double degrees );
        double radiansToDegrees( double radians );
};