annotate Renderer/Test/property_test.h @ 1029:22d7263cec2d

copy script add.
author tkaito
date Mon, 15 Nov 2010 22:39:25 +0900
parents d46dea8399e4
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
779
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 730 756
diff changeset
1
756
2575791a333a add Test/create_task {spe, task}/Property
hiroki@henri.cr.ie.u-ryukyu.ac.jp
parents: 754
diff changeset
2 #include "SgChange.h"
754
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
3
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
4 typedef void (*spe_move_func)(void *cv, int screen_w, int screen_h);
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
5 typedef void (*spe_collision_func)(void *cv, int screen_w, int screen_h);
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
6
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
7 typedef struct {
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
8 double x, y, next_x, next_y;
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
9 double vx, vy, next_vx, next_vy;
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
10 double angle[3];
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
11 int can_move;
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
12 int id;
781
d46dea8399e4 working on Mac OS X
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 779
diff changeset
13 const char *objname;
754
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
14 spe_move_func move;
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
15 spe_collision_func collision;
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
16 SceneGraphPtr parent;
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
17 SceneGraphPtr root;
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
18 } *ChainPropertyPtr, ChainProperty;
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
19
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
20 #define FALSE 0
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
21 #define TRUE !FALSE
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
22 #define CHAIN_LEN 50
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
23
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
24 static const double m = 100.0;
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
25 static const double k = 7000.0;
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
26 static const double g = 9.8;
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
27 static const double dt = 0.003;
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
28 static const double chain_width = 10;
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
29 static const double safe = 0.995;
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
30
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
31 class Chain : public Application {
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
32 public:
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
33 Chain(){}
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
34
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
35 SceneGraphPtr scenegraph_factory(void *p, int size);
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
36 SceneGraphPtr scenegraph_connector(void *p, int size, SceneGraphPtr s, SceneGraphPtr sg_available_list);
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
37 void init(TaskManager *manager, int w, int h);
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
38 void init_chain_vars(ChainPropertyPtr cv);
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
39 void chain_move(TaskManager *manager, SceneGraphPtr sg, int w, int h);
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
40 //void chain_collision(SceneGraphPtr sg, int w, int h, SceneGraphPtr osg);
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
41 void chain_collision(ChainPropertyPtr cv, int w, int h);
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
42 //void createSceneGraphFromProperty(SceneGraphPtr root, ChainPropertyPtr cv, Viewer *sgroot);
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
43 //void property_swich();
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
44 //void set_properties(ChainPropertyPtr cv);
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
45 MainLoopPtr init(Viewer *viewer, int screen_w, int screen_h);
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
46
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
47
e625f9524047 property add
admin@yin.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
48 };