Bart Janssens / SVL
Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers Transform.h Source File

Transform.h

00001 /*
00002     File:           Transform.h
00003 
00004     Function:       Provides transformation constructors.
00005 
00006     Author(s):      Andrew Willmott
00007 
00008     Copyright:      (c) 1995-2001, Andrew Willmott
00009 */
00010 
00011 #ifndef __SVL_TRANSFORM__
00012 #define __SVL_TRANSFORM__
00013 
00014 inline Mat2 Rot2(Real theta)
00015             { Mat2 result; result.MakeRot(theta); return(result); }
00016 inline Mat2 Scale2(const Vec2 &s)
00017             { Mat2 result; result.MakeScale(s); return(result); }
00018 
00019 inline Mat3 Rot3(const Vec3 &axis, Real theta)
00020             { Mat3 result; result.MakeRot(axis, theta); return(result); }
00021 inline Mat3 Rot3(const Vec4 &q)
00022             { Mat3 result; result.MakeRot(q); return(result); }
00023 inline Mat3 Scale3(const Vec3 &s)
00024             { Mat3 result; result.MakeScale(s); return(result); }
00025 inline Mat3 HRot3(Real theta)
00026             { Mat3 result; result.MakeHRot(theta); return(result); }
00027 inline Mat3 HScale3(const Vec2 &s)
00028             { Mat3 result; result.MakeHScale(s); return(result); }
00029 inline Mat3 HTrans3(const Vec2 &t)
00030             { Mat3 result; result.MakeHTrans(t); return(result); }
00031 
00032 inline Mat4 HRot4(const Vec3 &axis, Real theta)
00033             { Mat4 result; result.MakeHRot(axis, theta); return(result); }
00034 inline Mat4 HRot4(const Vec4 &q)
00035             { Mat4 result; result.MakeHRot(q); return(result); }
00036 inline Mat4 HScale4(const Vec3 &s)
00037             { Mat4 result; result.MakeHScale(s); return(result); }
00038 inline Mat4 HTrans4(const Vec3 &t)
00039             { Mat4 result; result.MakeHTrans(t); return(result); }
00040 
00041 #endif