annotate TaskManager/Test/test_render/polygon.h @ 113:80d93fe0601d draft

Define New Texture Data Structure
author gongo@gendarme.cr.ie.u-ryukyu.ac.jp
date Thu, 13 Nov 2008 10:10:57 +0900
parents 028ffc9c0375
children e9e12e2088bd
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
109
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
1 #include <libxml/parser.h>
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
2
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
3 #ifndef INCLUDED_POLYGON
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
4 #define INCLUDED_POLYGON
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
5
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
6 #ifndef INCLUDED_VIEWER
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
7 #include "viewer.h"
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
8 #endif
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
9
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
10 #ifndef INCLUDED_SCENE_GRAPH_PACK
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
11 #include "scene_graph_pack.h"
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
12 #endif
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
13
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
14 #ifndef INCLUDED_POLYGON_PACK
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
15 #include "polygon_pack.h"
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
16 #endif
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
17
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
18 #ifndef INCLUDED_SPAN_PACK
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
19 #include "SpanPack.h"
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
20 #endif
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
21
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
22 class Polygon{
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
23 public:
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
24 long long size;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
25 char *name;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
26 char *parent_name;
113
80d93fe0601d Define New Texture Data Structure
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 109
diff changeset
27
80d93fe0601d Define New Texture Data Structure
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 109
diff changeset
28 //int texture_id;
80d93fe0601d Define New Texture Data Structure
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 109
diff changeset
29 //int texture_px, texture_py; // texture の分割数
80d93fe0601d Define New Texture Data Structure
gongo@gendarme.cr.ie.u-ryukyu.ac.jp
parents: 109
diff changeset
30
109
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
31 float *data; //"vertex" and "normal" and "texture"
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
32 float xyz[4]; // position
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
33 float angle[4]; // angle
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
34 float c_xyz[4]; // center of rotation
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
35 float matrix[16];
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
36 float *anim;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
37 int frame; // anime frame num
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
38 //int *texture; // pointer of this surface's texture
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
39 static SDL_Surface* texture_image; // pointer of this surface's texture
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
40 //SDL_Surface *screen;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
41 //char image_name[20]; // texture image name
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
42 Polygon *next;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
43 Polygon *child;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
44 Polygon *parent;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
45 Polygon *brother;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
46 Viewer *viewer;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
47 //SceneGraphPack *sgp;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
48
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
49 Polygon();
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
50 void tree_check();
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
51 void print_member();
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
52 void parameter_change(char *name, float x, float y, float z, float ax, float ay, float az);
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
53 //void load_texture(char *image_name);
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
54 void draw(float *stack);
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
55 void draw(SceneGraphPack *sgp);
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
56 void draw(PolygonPack *pp);
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
57 void draw(SpanPack *sp);
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
58 void delete_data();
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
59 void tree_draw();
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
60 void get_data(xmlNodePtr cur);
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
61 void pickup_coordinate(char *cont);
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
62 void pickup_normal(char *cont);
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
63 void pickup_model(char *cont);
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
64 void pickup_texture(char *cont);
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
65 Uint32 get_rgb(int tx, int ty);
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
66 //void sgp_update();
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
67 //void sgp_draw();
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
68 //void create_scene_graph_pack();
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
69 void create_data(xmlNodePtr doc);
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
70 void set_data(char *file_name);
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
71 void add_next();
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
72 void create_tree();
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
73
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
74 /* added by kent. */
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
75 Polygon(xmlNodePtr);
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
76 Polygon *addChild(Polygon *);
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
77 Polygon *children;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
78 Polygon *lastChild;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
79 Polygon *searchPolygon(char *);
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
80 static Polygon *createFromXMLfile(char *);
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
81 };
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
82 #endif