/SWFGeometry.h
https://code.google.com/p/xee/ · C Header · 47 lines · 36 code · 9 blank · 2 comment · 0 complexity · 00b3ac9bbb6ecc0d14e2b7e035e0241c MD5 · raw file
- #import <XADMaster/CSHandle.h>
- typedef struct
- {
- int x,y;
- } SWFPoint;
- typedef struct
- {
- int x,y,width,height;
- } SWFRect;
- typedef struct
- {
- int a00,a01,a02;
- int a10,a11,a12;
- } SWFMatrix;
- static inline SWFPoint SWFMakePoint(int x,int y) { SWFPoint res={x,y}; return res; }
- SWFPoint SWFPointOnLine(SWFPoint a,SWFPoint b,float t);
- static inline SWFRect SWFMakeRect(int x,int y,int width,int height) { SWFRect res={x,y,width,height}; return res; }
- SWFRect SWFParseRect(CSHandle *fh);
- void SWFWriteRect(SWFRect rect,CSHandle *fh);
- static inline SWFMatrix SWFMakeMatrix(int a00,int a01,int a02,int a10,int a11,int a12) { SWFMatrix res={a00,a01,a02,a10,a11,a12}; return res; }
- static inline SWFMatrix SWFTranslationMatrix(int x,int y) { return SWFMakeMatrix(1<<16,0,x,0,1<<16,y); }
- SWFMatrix SWFParseMatrix(CSHandle *fh);
- void SWFWriteMatrix(SWFMatrix mtx,CSHandle *fh);
- SWFMatrix SWFMultiplyMatrices(SWFMatrix a,SWFMatrix b);
- SWFMatrix SWFScalingMatrix(float x_scale,float y_scale);
- SWFMatrix SWFRotationMatrix(float degrees);
- //SWFMatrix SWFMatrixFromAffineTransform(NSAffineTransform *t);
- //NSAffineTransform *SWFAffineTransformFromMatrix(SWFMatrix m);
- #define SWFZeroPoint SWFMakePoint(0,0)
- #define SWFEmptyRect SWFMakeRect(0,0,0,0)
- #define SWFIdentityMatrix SWFTranslationMatrix(0,0)
- int SWFCountBits(uint32_t val);
- int SWFCountBits2(uint32_t val1,uint32_t val2);
- int SWFCountBits4(uint32_t val1,uint32_t val2,uint32_t val3,uint32_t val4);
- int SWFCountSignedBits(int32_t val);
- int SWFCountSignedBits2(int32_t val1,int32_t val2);
- int SWFCountSignedBits4(int32_t val1,int32_t val2,int32_t val3,int32_t val4);
- int SWFCountSignedBitsPoint(SWFPoint point);