GameApi 28
Library used by GameApi Builder tool
Loading...
Searching...
No Matches
ObjectEditor.hh
Go to the documentation of this file.
1#include "VectorTools.hh"
2
3template<class Loop>
5{
6public:
7 virtual Loop NewLoop(Point p, int points) const=0;
8 virtual Loop CombineLoops(Loop l1, Loop l2, Point2d p) const=0;
9 virtual Loop MoveLoopXY(Loop l1, Vector2d v) const=0;
10 virtual Loop MoveLoopZ(Loop l1, float z) const=0;
11 virtual void DestroyLoop(Loop l) const=0;
12 virtual Loop SizeLoop(Loop l, Point2d p, float dist) const=0;
13 virtual Loop LoopShape(Loop l, int shape_num) const=0;
14 virtual void LoopBlit(Loop l1, Loop l2)=0; // generates polys
15 virtual Loop MoveLoopPoint(Loop l1, int point, Vector2d v) const=0;
16 virtual int LoopPointCount(Loop l1) const=0;
17 virtual std::pair<Loop,Loop> SplitLoop(Loop l, int point1, int point2) const=0;
18 virtual Loop AddPoint(Loop l1, int p1, int p2) const=0;
19 virtual Loop GroupLoops(const std::vector<Loop> &loops) const=0;
20 virtual std::vector<Loop> UnGroupLoops(Loop l) const=0;
21};
22
23template<class Plane>
25{
26public:
27 virtual Plane NewPlane() const=0;
28 virtual Plane NewPlane(Plane p, float dist) const=0;
29 virtual Plane NewPlaneRotateZ(Plane p, Point2d pp, float angle) const=0;
30 virtual Plane NewPlaneRotateX(Plane p, Point2d pp, float angle) const=0;
31 virtual Plane NewPlaneRotateY(Plane p, Point2d pp, float angle) const=0;
32 virtual Plane MovePlane(Plane p, Vector2d p) const=0;
33};
34
35template<class Surface, class Loop>
37{
38public:
39 virtual Surface FindSurf(Loop l1, Loop l2, int p1, int p2) const=0;
40 virtual void Color(Surface &s, Color c) const=0;
41 virtual void Texture(Surface &s, int texture) const=0;
42 virtual void Light(Surface &s, int light) const=0;
43};
44
46{
47public:
48 virtual void IncZoom() const=0;
49 virtual void DecZoom() const=0;
50};
51
52template<class Plane>
54{
55public:
56 virtual std::vector<Plane> Planes() const=0;
57 virtual void SelectPlane(Plane p) =0;
58};
59
60class Draw
61{
62public:
63 virtual void Clear()=0;
64 virtual void DrawLine(Point2d p, Point2d p2)=0;
65 virtual void DrawPoint(Point2d p, float pointsize)=0;
66};
67
69{
70public:
71 virtual Point2d MousePos() const=0;
72 virtual bool MouseDragged() const=0;
73 virtual int LastMouseButton() const=0;
74};
75
76struct MLoop
77{
78 std::vector<Point2d> p;
79 float z;
80 std::vector<MLoop*> group;
81};
82
83template<class Object>
84class List
85{
86public:
87 virtual void Clear()=0;
88 virtual void AddSurface(Object s)=0;
89 virtual int CurrentlySelectedItem() const=0;
90};
91
93{
94public:
95 virtual void SetTime(int frame) const=0;
96};
Definition ObjectEditor.hh:69
virtual bool MouseDragged() const =0
virtual int LastMouseButton() const =0
virtual Point2d MousePos() const =0
Definition Draw.hh:3
virtual void DrawPoint(Point2d p, float pointsize)=0
virtual void Clear()=0
virtual void DrawLine(Point2d p, Point2d p2)=0
Definition ObjectEditor.hh:93
virtual void SetTime(int frame) const =0
Definition ObjectEditor.hh:85
virtual void AddSurface(Object s)=0
virtual int CurrentlySelectedItem() const =0
virtual void Clear()=0
Definition ObjectEditor.hh:5
virtual void DestroyLoop(Loop l) const =0
virtual Loop SizeLoop(Loop l, Point2d p, float dist) const =0
virtual std::vector< Loop > UnGroupLoops(Loop l) const =0
virtual int LoopPointCount(Loop l1) const =0
virtual Loop LoopShape(Loop l, int shape_num) const =0
virtual Loop NewLoop(Point p, int points) const =0
virtual Loop MoveLoopZ(Loop l1, float z) const =0
virtual Loop AddPoint(Loop l1, int p1, int p2) const =0
virtual Loop MoveLoopXY(Loop l1, Vector2d v) const =0
virtual Loop CombineLoops(Loop l1, Loop l2, Point2d p) const =0
virtual std::pair< Loop, Loop > SplitLoop(Loop l, int point1, int point2) const =0
virtual void LoopBlit(Loop l1, Loop l2)=0
virtual Loop GroupLoops(const std::vector< Loop > &loops) const =0
virtual Loop MoveLoopPoint(Loop l1, int point, Vector2d v) const =0
Definition ObjectEditor.hh:25
virtual Plane NewPlaneRotateY(Plane p, Point2d pp, float angle) const =0
virtual Plane NewPlane(Plane p, float dist) const =0
virtual Plane NewPlane() const =0
virtual Plane MovePlane(Plane p, Vector2d p) const =0
virtual Plane NewPlaneRotateX(Plane p, Point2d pp, float angle) const =0
virtual Plane NewPlaneRotateZ(Plane p, Point2d pp, float angle) const =0
Definition ObjectEditor.hh:54
virtual void SelectPlane(Plane p)=0
virtual std::vector< Plane > Planes() const =0
Definition VectorTools.hh:350
Definition ObjectEditor.hh:37
virtual void Light(Surface &s, int light) const =0
virtual void Texture(Surface &s, int texture) const =0
virtual void Color(Surface &s, Color c) const =0
virtual Surface FindSurf(Loop l1, Loop l2, int p1, int p2) const =0
Definition ObjectEditor.hh:46
virtual void IncZoom() const =0
virtual void DecZoom() const =0
frame( $arr, $width, $height, $data, $i, $homepage, $noheaders, $seamless, $transparent)
Definition emscripten_frame.php:18
Definition Graph.hh:7435
Definition ObjectEditor.hh:77
float z
Definition ObjectEditor.hh:79
std::vector< Point2d > p
Definition ObjectEditor.hh:78
std::vector< MLoop * > group
Definition ObjectEditor.hh:80
Definition VectorTools.hh:910
Definition Parser.cc:60
Definition VectorTools.hh:972