-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathclass_diagram.drawio
119 lines (119 loc) · 12.4 KB
/
class_diagram.drawio
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
<mxfile host="app.diagrams.net" modified="2020-11-14T09:34:37.539Z" agent="5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.193 Safari/537.36" etag="KlQZ5QOq0pu-9AnhBNph" version="13.9.8" type="github">
<diagram id="C5RBs43oDa-KdzZeNtuy" name="Page-1">
<mxGraphModel dx="1185" dy="662" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="WIyWlLk6GJQsqaUBKTNV-0" />
<mxCell id="WIyWlLk6GJQsqaUBKTNV-1" parent="WIyWlLk6GJQsqaUBKTNV-0" />
<mxCell id="3uwCHcVPTeGEmZjq2hu6-0" value="Movable" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="40" y="30" width="160" height="168" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-1" value="- _location
- _direction" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" vertex="1" parent="3uwCHcVPTeGEmZjq2hu6-0">
<mxGeometry y="26" width="160" height="34" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-2" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;" vertex="1" parent="3uwCHcVPTeGEmZjq2hu6-0">
<mxGeometry y="60" width="160" height="8" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-3" value="+ get_location
+ set_location
+ get_direction
+ set_direction
+ next_location
+ move" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" vertex="1" parent="3uwCHcVPTeGEmZjq2hu6-0">
<mxGeometry y="68" width="160" height="100" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-4" value="Thing" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="240" y="98" width="160" height="100" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-5" value="- _shape" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" vertex="1" parent="3uwCHcVPTeGEmZjq2hu6-4">
<mxGeometry y="26" width="160" height="26" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-6" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;" vertex="1" parent="3uwCHcVPTeGEmZjq2hu6-4">
<mxGeometry y="52" width="160" height="8" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-7" value="+ get_shape
+ set_shape" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" vertex="1" parent="3uwCHcVPTeGEmZjq2hu6-4">
<mxGeometry y="60" width="160" height="40" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-8" value="Place" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="480" y="462" width="160" height="130" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-9" value="- _borders" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" vertex="1" parent="3uwCHcVPTeGEmZjq2hu6-8">
<mxGeometry y="26" width="160" height="26" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-10" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;" vertex="1" parent="3uwCHcVPTeGEmZjq2hu6-8">
<mxGeometry y="52" width="160" height="8" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-11" value="+ get_borders
+ set_borders
+ is_within_borders
+ get_value" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" vertex="1" parent="3uwCHcVPTeGEmZjq2hu6-8">
<mxGeometry y="60" width="160" height="70" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-12" value="Creature" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="140" y="300" width="160" height="60" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-14" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;" vertex="1" parent="3uwCHcVPTeGEmZjq2hu6-12">
<mxGeometry y="26" width="160" height="8" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-15" value="+ move" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" vertex="1" parent="3uwCHcVPTeGEmZjq2hu6-12">
<mxGeometry y="34" width="160" height="26" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-21" value="" style="endArrow=block;endSize=10;endFill=0;shadow=0;strokeWidth=1;rounded=0;edgeStyle=elbowEdgeStyle;elbow=vertical;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="3uwCHcVPTeGEmZjq2hu6-12" target="3uwCHcVPTeGEmZjq2hu6-0">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="160" y="270" as="sourcePoint" />
<mxPoint x="260" y="168" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-22" value="" style="endArrow=block;endSize=10;endFill=0;shadow=0;strokeWidth=1;rounded=0;edgeStyle=elbowEdgeStyle;elbow=vertical;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="3uwCHcVPTeGEmZjq2hu6-12" target="3uwCHcVPTeGEmZjq2hu6-4">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="170" y="280" as="sourcePoint" />
<mxPoint x="270" y="178" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-23" value="Screen" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="480" y="295" width="160" height="70" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-25" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;" vertex="1" parent="3uwCHcVPTeGEmZjq2hu6-23">
<mxGeometry y="26" width="160" height="8" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-26" value="+ clear
+ draw" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" vertex="1" parent="3uwCHcVPTeGEmZjq2hu6-23">
<mxGeometry y="34" width="160" height="36" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-27" value="Use" style="endArrow=open;endSize=12;dashed=1;html=1;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="3uwCHcVPTeGEmZjq2hu6-23" target="3uwCHcVPTeGEmZjq2hu6-12">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="370" y="360" as="sourcePoint" />
<mxPoint x="530" y="360" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-28" value="Use" style="endArrow=open;endSize=12;dashed=1;html=1;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="3uwCHcVPTeGEmZjq2hu6-23" target="3uwCHcVPTeGEmZjq2hu6-8">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="530" y="200" as="sourcePoint" />
<mxPoint x="690" y="200" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-30" value="Game" style="swimlane;fontStyle=1;align=center;verticalAlign=top;childLayout=stackLayout;horizontal=1;startSize=26;horizontalStack=0;resizeParent=1;resizeParentMax=0;resizeLast=0;collapsible=1;marginBottom=0;" vertex="1" parent="WIyWlLk6GJQsqaUBKTNV-1">
<mxGeometry x="140" y="480" width="160" height="94" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-31" value="+ creature
+ place" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" vertex="1" parent="3uwCHcVPTeGEmZjq2hu6-30">
<mxGeometry y="26" width="160" height="34" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-32" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;" vertex="1" parent="3uwCHcVPTeGEmZjq2hu6-30">
<mxGeometry y="60" width="160" height="8" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-33" value="+ play" style="text;strokeColor=none;fillColor=none;align=left;verticalAlign=top;spacingLeft=4;spacingRight=4;overflow=hidden;rotatable=0;points=[[0,0.5],[1,0.5]];portConstraint=eastwest;" vertex="1" parent="3uwCHcVPTeGEmZjq2hu6-30">
<mxGeometry y="68" width="160" height="26" as="geometry" />
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-35" value="" style="endArrow=open;html=1;endSize=12;startArrow=diamondThin;startSize=14;startFill=1;edgeStyle=orthogonalEdgeStyle;align=left;verticalAlign=bottom;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="3uwCHcVPTeGEmZjq2hu6-30" target="3uwCHcVPTeGEmZjq2hu6-8">
<mxGeometry x="-1" y="3" relative="1" as="geometry">
<mxPoint x="320" y="410" as="sourcePoint" />
<mxPoint x="480" y="410" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-37" value="" style="endArrow=open;html=1;endSize=12;startArrow=diamondThin;startSize=14;startFill=1;edgeStyle=orthogonalEdgeStyle;align=left;verticalAlign=bottom;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="3uwCHcVPTeGEmZjq2hu6-30" target="3uwCHcVPTeGEmZjq2hu6-12">
<mxGeometry x="-0.8333" y="-10" relative="1" as="geometry">
<mxPoint x="130" y="430" as="sourcePoint" />
<mxPoint x="290" y="430" as="targetPoint" />
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="3uwCHcVPTeGEmZjq2hu6-38" value="<u>Use</u>" style="endArrow=open;endSize=12;dashed=1;html=1;" edge="1" parent="WIyWlLk6GJQsqaUBKTNV-1" source="3uwCHcVPTeGEmZjq2hu6-30" target="3uwCHcVPTeGEmZjq2hu6-23">
<mxGeometry width="160" relative="1" as="geometry">
<mxPoint x="320" y="400" as="sourcePoint" />
<mxPoint x="480" y="400" as="targetPoint" />
</mxGeometry>
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>