00001 #ifndef __J2K__Position_HPP__
00002 #define __J2K__Position_HPP__
00003
00004 #ifndef realtype
00005 #define realtype float
00006 #endif
00007
00008 #ifndef MATRIX44
00009 #define MATRIX44
00010 typedef realtype Matrix44[4][4];
00011 #endif
00012
00013 #ifndef SUCCESS
00014 #define SUCCESS 0
00015 #endif
00016
00017 #define M_PI 3.14159265358979323846
00018 #define DegreeToRad( val ) (val)*(M_PI/180)
00019
00020 #define _X_ 0
00021 #define _Y_ 1
00022 #define _Z_ 2
00023 #define _W_ 3
00024
00025 #define IDENTITY "ident;"
00026
00027 __J2K__EXTERN_C
00028
00029 int ComputeStringTransform( char* s, Matrix44*transform );
00030
00031 void __ComputeTransform( char* com, char* val, Matrix44* m );
00032
00033 void __Rotate ( double nv, char axe, Matrix44* m );
00034 void __Translate( double nv, char axe, Matrix44* m );
00035 void __Resize ( double nv, char axe, Matrix44* m );
00036
00037 void MatSwapProd(
00038 realtype* m1,
00039 realtype* m2,
00040 int l,
00041 int m,
00042 int n,
00043 realtype* m3
00044 );
00045
00046 void SetIdentityMat( realtype* m1, int m );
00047
00048 void SetNullMat( realtype* m1, int m, int n );
00049
00050 __J2K__END_C
00051
00052 #endif
00053
00054
00055
00056
00057
00058
00059
00060
00061
00062
00063
00064
00065
00066
00067
00068
00069
00070
00071
00072
00073
00074
00075
00076
00077
00078
00079
00080
00081
00082
00083
00084
00085
00086
00087
00088
00089
00090
00091
00092