GameApi 28
Library used by GameApi Builder tool
Loading...
Searching...
No Matches
Human.hh
Go to the documentation of this file.
1
2
3class Human
4{
5public:
6 Human(Point pos, Vector up, Vector left, Vector forward, float head, float neck, float body, float leg_1, float leg_2, float leg_3, float left_leg_x, float right_leg_x) : pos(pos), up(up), left(left), forward(forward), head(head), neck(neck), body(body), leg_1(leg_1), leg_2(leg_2), leg_3(leg_3) { }
7
8 float head_radius() const { return left.Dist() / 3.0; }
9 Point head_top() const { return pos + up; }
10 Point head_bottom() const { return head_top() - up*head; }
11 Point neck_top() const { return head_bottom(); }
12 Point neck_bottom() const { return neck_top() - up*neck; }
13 Point body_top() const { return neck_bottom(); }
14 Point body_bottom() const { return body_top() - up*body; }
15 Point left_leg_top_1() const { return body_bottom() + left*left_leg_x; }
16 Point left_leg_bottom_1() const { return left_leg_top_1() - up*leg_1; }
17 Point right_leg_top_1() const { return body_bottom() - left*right_leg_x; }
18 Point right_leg_bottom_1() const { return right_leg_top_1() - up*leg_1; }
19private:
20 Point pos;
21 Vector up, left, forward;
22 float head, neck, body, leg_1, leg_2, leg_3;
23};
24
25
26
28{
29public:
30 HumanElem(int numfaces_head,
31 int numfaces_neck,
32 int numfaces_body,
33 int numfaces_leg,
34 Human &h)
35 : head(numfaces_head, h.head_top(), h.head_bottom(), h.head_radius(), h.head_radius()),
36 neck(numfaces_neck, h.neck_top(), h.neck_bottom(), h.neck_radius(), h.neck_radius()),
37 body(numfaces_body, h.body_top(), h.body_bottom(), h.body_radius(), h.body_radius()),
38 left_leg_1(numfaces_leg, h.left_leg_top_1(), h.left_leg_bottom_1(), h.leg_radius(), h.leg_radius()),
39 right_leg_1(numfaces_leg, h.right_leg_top_1(), h.right_leg_bottom_1(), h.leg_radius(), h.leg_radius()),
40 left_leg_2(numfaces_leg, h.left_leg_top_2(), h.left_leg_bottom_2(), h.leg_radius(), h.leg_radius()),
41 right_leg_2(numfaces_leg, h.right_leg_top_2(), h.right_leg_bottom_2(), h.leg_radius(), h.leg_radius()) { }
42
43private:
44 ConeElem head;
45 ConeElem neck;
46 ConeElem body;
47 ConeElem left_leg_1;
48 ConeElem right_leg_1;
49 ConeElem left_leg_2;
50 ConeElem right_leg_2;
51};
Definition Effect.hh:9376
Definition Effect.hh:3547
HumanElem(int numfaces_head, int numfaces_neck, int numfaces_body, int numfaces_leg, Human &h)
Definition Human.hh:30
Definition Human.hh:4
Point neck_top() const
Definition Human.hh:11
Point right_leg_bottom_1() const
Definition Human.hh:18
Point left_leg_top_1() const
Definition Human.hh:15
Point left_leg_bottom_1() const
Definition Human.hh:16
Point body_bottom() const
Definition Human.hh:14
Point body_top() const
Definition Human.hh:13
Point head_bottom() const
Definition Human.hh:10
float head_radius() const
Definition Human.hh:8
Human(Point pos, Vector up, Vector left, Vector forward, float head, float neck, float body, float leg_1, float leg_2, float leg_3, float left_leg_x, float right_leg_x)
Definition Human.hh:6
Point neck_bottom() const
Definition Human.hh:12
Point head_top() const
Definition Human.hh:9
Point right_leg_top_1() const
Definition Human.hh:17
Definition VectorTools.hh:125
Definition Parser.cc:60