base_types.h.svn-base

来自「A Flash Player with ActionScript support」· SVN-BASE 代码 · 共 98 行

SVN-BASE
98
字号
#ifndef _BASE_TYPES_H_#define _BASE_TYPES_H_#include <glib.h>#define UI8	unsigned char#define UI16	unsigned short#define UI32	unsigned long#define SI8	char#define SI16	short#define SI32	long#define UB_1	unsigned char#define STRING	char*#define FB	float#define TWIPS_PER_POINT	20//矩形范围struct RECT     {    long    	Xmin;    long    	Xmax;    long    	Ymin;    long    	Ymax;};struct RGB     {    UI8		Red;    UI8   	Green;    UI8   	Blue;};struct RGBA     {    UI8		Red;    UI8   	Green;    UI8   	Blue;    UI8   	Alpha;    long	pixel;	// R+B+G+Alpha 的值};//带透明度的颜色转变加法和乘法struct CxFormWithAlpha   {    UB_1   	HasAddTerms;    UB_1   	HasMultTerms;    FB   	RedMultTerm;	// 乘法    FB   	GreenMultTerm;    FB   	BlueMultTerm;    FB   	AlphaMultTerm;    long   	RedAddTerm;	// 加法    long   	GreenAddTerm;    long   	BlueAddTerm;    long   	AlphaAddTerm;};//物体移动矩阵缩放旋转平移struct Matrix {    UB_1   	HasScale;	// 缩放    FB   	ScaleX;    FB   	ScaleY;    UB_1   	HasRotate;	// 旋转    FB   	RotateSkew0;    FB   	RotateSkew1;    long   	TranslateX;	// 移动    long   	TranslateY;};struct GradRecord {    UI8                 Ratio;    struct RGBA         Color;};// 颜色渐变struct Gradient {    UI8                 NumGradients;    struct RGBA		*g_ramp;    struct Matrix	imat;    int                	g_has_alpha;    struct GradRecord	GradientRecords[1];};// ActionScript P-Code 块struct ActionRecord {    struct ActionRecord*        NextP;    UI32                	Length;    UI8                 	Code[1];};struct RGBA      BackgroundColor;long mat_getx(struct Matrix *matrix_p,long x,long y) ;long mat_gety(struct Matrix *matrix_p, long x, long y) ;void mat_new(struct Matrix *matrix_p) ;struct Matrix mat_multi(struct Matrix *n, struct Matrix *m) ;struct Matrix mat_invert(struct Matrix *matrix_p) ;struct RECT mat_multi_rect(struct Matrix *m_p, struct RECT *r_p);gboolean rect_is_point_in(struct RECT *r_p, long x, long y);gboolean rect_is_rect_cross(struct RECT *r1_p, struct RECT *r2_p);struct RECT rect_add(struct RECT *r1_p, struct RECT *r2_p);void rect_new(struct RECT *r_p);void cxform_new(struct CxFormWithAlpha *cx_p);#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?