64dd.h
1.65 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#define RMON 0
#define LEO 0
#define TEST 1
#define DEBUG 0
#define NUM_PI_MSGS 200
#define OS_PRIORITY_IDLE 0
#define OS_PRIORITY_MAIN 10
#define OS_PRIORITY_DEMO 20
#define OS_PRIORITY_FIELD 30
#define OS_PRIORITY_HIGH 127
#define BOOT_STACKSIZE 0x2000
#define IDLE_STACKSIZE 0x2000
#define MAIN_STACKSIZE 0x2000
#define DEMO_STACKSIZE 0x2000
#define FIELD_STACKSIZE 0x2000
#define DISPLAYLIST_SIZE 4096
#define SP_UCODE_SIZE 4096
#define SP_UCODE_DATA_SIZE 2048
#define SCREEN_HT 240
#define SCREEN_WD 320
#define global
#if _LANGUAGE_C
typedef struct{
char r,g,b;
}color; /*カラー*/
typedef float scalar; /*スカラー*/
typedef struct{
scalar x,y,z; /*ベクトルの直交座標成分*/
}vector; /*ベクトル*/
typedef vector point; /*点、位置ベクトル*/
typedef struct{
vector n; /*法線ベクトル*/
point p; /*平面上の点の位置ベクトル*/
scalar s; /*上記ベクトルの内積(特性値)*/
}surface; /*面*/
typedef struct{
point p; /*位置ベクトル*/
scalar s; /*内外フラグ*/
color c; /*関連する面の色*/
char n; /*頂点番号*/
}vertex; /*頂点*/
typedef struct{
char v[3]; /*両端点と交点インデックス*/
char f; /*使用フラグ*/
vector t; /*接線ベクトル*/
}edge; /*辺、稜*/
typedef struct{
char e[4]; /*辺インデックス*/
char d[4]; /*辺の方向*/
color c0,c1; /*面の色*/
}gon; /*面、多角形*/
typedef struct{
Vtx v[20]; /*頂点配列*/
void *p,*b; /*隣接リンク*/
int x,y,z,a,f; /*位置*/
float k,dk; /*アニメーション*/
Mtx r,t; /*座標変換行列*/
Vtx w[16]; /*切断時の頂点配列*/
Gfx g[128]; /*切断時のディスプレイ・リスト*/
}ncubeQuarter; /* Nキューブ1/4構造体 */
#endif