1
+ <mxfile host="65bd71144e">
2
+ <diagram id="gFjgcAYB47oY0xg-IKkI" name="Page-1">
3
+ <mxGraphModel dx="410" dy="243" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" math="0" shadow="0">
4
+ <root>
5
+ <mxCell id="0"/>
6
+ <mxCell id="1" parent="0"/>
7
+ <mxCell id="2" value="Vehicle" 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;rounded=1;fillColor=#f0a30a;fontColor=#000000;strokeColor=#BD7000;gradientColor=none;swimlaneFillColor=none;" vertex="1" parent="1">
8
+ <mxGeometry x="345" y="40" width="160" height="114" as="geometry"/>
9
+ </mxCell>
10
+ <mxCell id="3" value="- brand: str - model: str - wheels_number: int" 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;rounded=1;swimlaneFillColor=none;" vertex="1" parent="2">
11
+ <mxGeometry y="26" width="160" height="54" as="geometry"/>
12
+ </mxCell>
13
+ <mxCell id="4" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;rounded=1;swimlaneFillColor=none;" vertex="1" parent="2">
14
+ <mxGeometry y="80" width="160" height="8" as="geometry"/>
15
+ </mxCell>
16
+ <mxCell id="5" value="+ __str__(self): str" 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;rounded=1;swimlaneFillColor=none;" vertex="1" parent="2">
17
+ <mxGeometry y="88" width="160" height="26" as="geometry"/>
18
+ </mxCell>
19
+ <mxCell id="6" value="ElectricCar" 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;rounded=1;fillColor=#f0a30a;fontColor=#000000;strokeColor=#BD7000;gradientColor=none;swimlaneFillColor=none;" vertex="1" parent="1">
20
+ <mxGeometry x="120" y="240" width="200" height="160" as="geometry"/>
21
+ </mxCell>
22
+ <mxCell id="7" value="- speed: int - motor_power: int - range: int - battery_capacity: float" 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;rounded=1;swimlaneFillColor=none;" vertex="1" parent="6">
23
+ <mxGeometry y="26" width="200" height="64" as="geometry"/>
24
+ </mxCell>
25
+ <mxCell id="8" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;rounded=1;swimlaneFillColor=none;" vertex="1" parent="6">
26
+ <mxGeometry y="90" width="200" height="8" as="geometry"/>
27
+ </mxCell>
28
+ <mxCell id="9" value="+ __str__(self): str" 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;rounded=1;swimlaneFillColor=none;" vertex="1" parent="6">
29
+ <mxGeometry y="98" width="200" height="62" as="geometry"/>
30
+ </mxCell>
31
+ <mxCell id="11" value="Extends" style="endArrow=block;endSize=16;endFill=0;html=1;rounded=1;entryX=0.319;entryY=1.022;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;" edge="1" parent="1" source="6" target="5">
32
+ <mxGeometry width="160" relative="1" as="geometry">
33
+ <mxPoint x="280" y="330" as="sourcePoint"/>
34
+ <mxPoint x="440" y="330" as="targetPoint"/>
35
+ </mxGeometry>
36
+ </mxCell>
37
+ <mxCell id="15" value="CargoCar" 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;rounded=1;fillColor=#f0a30a;fontColor=#000000;strokeColor=#BD7000;gradientColor=none;swimlaneFillColor=none;" vertex="1" parent="1">
38
+ <mxGeometry x="40" y="480" width="170" height="160" as="geometry"/>
39
+ </mxCell>
40
+ <mxCell id="16" value="- load_weight: float" 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;rounded=1;swimlaneFillColor=none;" vertex="1" parent="15">
41
+ <mxGeometry y="26" width="170" height="64" as="geometry"/>
42
+ </mxCell>
43
+ <mxCell id="17" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;rounded=1;swimlaneFillColor=none;" vertex="1" parent="15">
44
+ <mxGeometry y="90" width="170" height="8" as="geometry"/>
45
+ </mxCell>
46
+ <mxCell id="18" value="+ __str__(self): str + tesla_cybertruck(cls): cls()" 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;rounded=1;swimlaneFillColor=none;" vertex="1" parent="15">
47
+ <mxGeometry y="98" width="170" height="62" as="geometry"/>
48
+ </mxCell>
49
+ <mxCell id="19" value="PersonalCar" 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;rounded=1;fillColor=#f0a30a;fontColor=#000000;strokeColor=#BD7000;gradientColor=none;swimlaneFillColor=none;" vertex="1" parent="1">
50
+ <mxGeometry x="240" y="480" width="170" height="160" as="geometry"/>
51
+ </mxCell>
52
+ <mxCell id="20" value="- seats_number: int" 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;rounded=1;swimlaneFillColor=none;" vertex="1" parent="19">
53
+ <mxGeometry y="26" width="170" height="64" as="geometry"/>
54
+ </mxCell>
55
+ <mxCell id="21" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;rounded=1;swimlaneFillColor=none;" vertex="1" parent="19">
56
+ <mxGeometry y="90" width="170" height="8" as="geometry"/>
57
+ </mxCell>
58
+ <mxCell id="22" value="+ __str__(self): str + tesla_model_s_plaid(cls): cls() + byd_han(cls): cls()" 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;rounded=1;swimlaneFillColor=none;" vertex="1" parent="19">
59
+ <mxGeometry y="98" width="170" height="62" as="geometry"/>
60
+ </mxCell>
61
+ <mxCell id="23" value="Extends" style="endArrow=block;endSize=16;endFill=0;html=1;rounded=1;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.375;entryY=1.032;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="15" target="9">
62
+ <mxGeometry width="160" relative="1" as="geometry">
63
+ <mxPoint x="150" y="480" as="sourcePoint"/>
64
+ <mxPoint x="310" y="480" as="targetPoint"/>
65
+ </mxGeometry>
66
+ </mxCell>
67
+ <mxCell id="24" value="Extends" style="endArrow=block;endSize=16;endFill=0;html=1;rounded=1;entryX=0.69;entryY=1.048;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;" edge="1" parent="1" source="19" target="9">
68
+ <mxGeometry width="160" relative="1" as="geometry">
69
+ <mxPoint x="150" y="480" as="sourcePoint"/>
70
+ <mxPoint x="310" y="480" as="targetPoint"/>
71
+ </mxGeometry>
72
+ </mxCell>
73
+ <mxCell id="25" value="Bicycle" 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;rounded=1;fillColor=#f0a30a;fontColor=#000000;strokeColor=#BD7000;gradientColor=none;swimlaneFillColor=none;" vertex="1" parent="1">
74
+ <mxGeometry x="530" y="240" width="200" height="160" as="geometry"/>
75
+ </mxCell>
76
+ <mxCell id="26" value="- type: str" 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;rounded=1;swimlaneFillColor=none;" vertex="1" parent="25">
77
+ <mxGeometry y="26" width="200" height="64" as="geometry"/>
78
+ </mxCell>
79
+ <mxCell id="27" value="" style="line;strokeWidth=1;fillColor=none;align=left;verticalAlign=middle;spacingTop=-1;spacingLeft=3;spacingRight=3;rotatable=0;labelPosition=right;points=[];portConstraint=eastwest;strokeColor=inherit;rounded=1;swimlaneFillColor=none;" vertex="1" parent="25">
80
+ <mxGeometry y="90" width="200" height="8" as="geometry"/>
81
+ </mxCell>
82
+ <mxCell id="28" value="+ __str__(self): str + shimano_mt_ranger(cls): cls()" 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;rounded=1;swimlaneFillColor=none;" vertex="1" parent="25">
83
+ <mxGeometry y="98" width="200" height="62" as="geometry"/>
84
+ </mxCell>
85
+ <mxCell id="29" value="Extends" style="endArrow=block;endSize=16;endFill=0;html=1;rounded=1;entryX=0.578;entryY=1.187;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;" edge="1" parent="1" source="25" target="5">
86
+ <mxGeometry width="160" relative="1" as="geometry">
87
+ <mxPoint x="370" y="410" as="sourcePoint"/>
88
+ <mxPoint x="530" y="410" as="targetPoint"/>
89
+ </mxGeometry>
90
+ </mxCell>
91
+ <mxCell id="30" value="Motorcycle" 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;rounded=1;fillColor=#f0a30a;fontColor=#000000;strokeColor=#BD7000;gradientColor=none;swimlaneFillColor=none;" vertex="1" parent="1">
92
+ <mxGeometry x="545" y="480" width="170" height="160" as="geometry"/>
93
+ </mxCell>
94
+ <mxCell id="31" value="- number of spokes: int - frame: str - engine: str" 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;rounded=1;swimlaneFillColor=none;" vertex="1" parent="30">
95
+ <mxGeometry y="26" width="170" height="64" as="geometry"/>
96
+ </mxCell>
97
+ <mxCell id="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;strokeColor=inherit;rounded=1;swimlaneFillColor=none;" vertex="1" parent="30">
98
+ <mxGeometry y="90" width="170" height="8" as="geometry"/>
99
+ </mxCell>
100
+ <mxCell id="33" value="+ __str__(self): str + yamaha_mt07(cls):cls()" 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;rounded=1;swimlaneFillColor=none;" vertex="1" parent="30">
101
+ <mxGeometry y="98" width="170" height="62" as="geometry"/>
102
+ </mxCell>
103
+ <mxCell id="34" value="Extends" style="endArrow=block;endSize=16;endFill=0;html=1;rounded=1;entryX=0.499;entryY=1.043;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.5;exitY=0;exitDx=0;exitDy=0;" edge="1" parent="1" source="30" target="28">
104
+ <mxGeometry width="160" relative="1" as="geometry">
105
+ <mxPoint x="560" y="430" as="sourcePoint"/>
106
+ <mxPoint x="720" y="430" as="targetPoint"/>
107
+ </mxGeometry>
108
+ </mxCell>
109
+ </root>
110
+ </mxGraphModel>
111
+ </diagram>
112
+ </mxfile>
0 commit comments