-
Notifications
You must be signed in to change notification settings - Fork 0
/
Untitled Diagram.drawio
157 lines (157 loc) · 14.5 KB
/
Untitled 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
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
<mxfile host="app.diagrams.net" modified="2023-04-09T10:28:13.504Z" agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36" etag="ZJNBqbr0jt1T_vJ0cNmK" version="21.1.5" type="github">
<diagram name="Page-1" id="c4acf3e9-155e-7222-9cf6-157b1a14988f">
<mxGraphModel dx="1450" dy="808" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="850" pageHeight="1100" background="none" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-1" value="<p style="margin:0px;margin-top:4px;text-align:center;"><i>&lt;&lt;Abstract&gt;&gt;</i></p><p style="margin:0px;margin-top:4px;text-align:center;"><i><b>Pen</b></i></p><hr size="1"><p style="border-color: var(--border-color); margin: 0px 0px 0px 4px;">+ name: string</p><p style="border-color: var(--border-color); margin: 0px 0px 0px 4px;">+ brand: string</p><p style="border-color: var(--border-color); margin: 0px 0px 0px 4px;">+ penType: PEN_TYPE<br></p><p style="margin:0px;margin-left:4px;">+ price: double</p><hr size="1"><p style="margin:0px;margin-left:4px;">+ write(): void</p><p style="margin:0px;margin-left:4px;"><br></p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;whiteSpace=wrap;" vertex="1" parent="1">
<mxGeometry x="330" y="20" width="170" height="140" as="geometry" />
</mxCell>
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-2" value="<p style="margin:0px;margin-top:4px;text-align:center;"><i>&lt;&lt;enumeration&gt;&gt;</i><br><b>PEN_TYPE</b></p><hr size="1"><p style="margin:0px;margin-left:4px;">BALLPOINT</p><p style="margin:0px;margin-left:4px;">GEL<br></p><p style="margin:0px;margin-left:4px;">FOUNTAIN</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;whiteSpace=wrap;" vertex="1" parent="1">
<mxGeometry x="620" y="40" width="130" height="100" as="geometry" />
</mxCell>
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-11" value="" style="endArrow=open;dashed=1;html=1;rounded=0;strokeWidth=1;edgeStyle=elbowEdgeStyle;" edge="1" parent="1">
<mxGeometry x="0.0057" width="160" relative="1" as="geometry">
<mxPoint x="500" y="100" as="sourcePoint" />
<mxPoint x="620" y="100" as="targetPoint" />
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-13" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>GenPen</b></p><hr size="1"><p style="margin:0px;margin-left:4px;">+ refill: Refil</p><hr size="1"><p style="margin:0px;margin-left:4px;">+ write(): void</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;whiteSpace=wrap;" vertex="1" parent="1">
<mxGeometry x="20" y="240" width="160" height="90" as="geometry" />
</mxCell>
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-14" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>BallPen</b></p><hr size="1"><p style="margin:0px;margin-left:4px;">+ refill: Refill</p><hr size="1"><p style="margin:0px;margin-left:4px;">+ write(): void</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;whiteSpace=wrap;" vertex="1" parent="1">
<mxGeometry x="320" y="240" width="160" height="90" as="geometry" />
</mxCell>
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-15" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>FountainPen</b></p><hr size="1"><p style="margin:0px;margin-left:4px;">+ ink: Ink</p><p style="margin:0px;margin-left:4px;">+ nib: Nib</p><hr size="1"><p style="margin:0px;margin-left:4px;">+ write(): void</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;whiteSpace=wrap;" vertex="1" parent="1">
<mxGeometry x="630" y="240" width="160" height="90" as="geometry" />
</mxCell>
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-19" value="" style="endArrow=open;dashed=1;html=1;rounded=0;strokeWidth=1;edgeStyle=elbowEdgeStyle;elbow=vertical;exitX=0.748;exitY=-0.053;exitDx=0;exitDy=0;exitPerimeter=0;" edge="1" parent="1" source="DlWgEN0ERAqcZzdgyBFJ-13">
<mxGeometry x="0.0057" width="160" relative="1" as="geometry">
<mxPoint x="140" y="230" as="sourcePoint" />
<mxPoint x="350" y="170" as="targetPoint" />
<mxPoint as="offset" />
<Array as="points">
<mxPoint x="250" y="200" />
<mxPoint x="320" y="200" />
<mxPoint x="380" y="190" />
<mxPoint x="260" y="200" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-20" value="" style="endArrow=open;dashed=1;html=1;rounded=0;strokeWidth=1;elbow=vertical;" edge="1" parent="1" source="DlWgEN0ERAqcZzdgyBFJ-14">
<mxGeometry x="0.0057" width="160" relative="1" as="geometry">
<mxPoint x="150" y="245" as="sourcePoint" />
<mxPoint x="400" y="170" as="targetPoint" />
<mxPoint as="offset" />
<Array as="points" />
</mxGeometry>
</mxCell>
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-21" value="" style="endArrow=open;dashed=1;html=1;rounded=0;strokeWidth=1;edgeStyle=elbowEdgeStyle;elbow=vertical;exitX=0.32;exitY=-0.044;exitDx=0;exitDy=0;exitPerimeter=0;" edge="1" parent="1" source="DlWgEN0ERAqcZzdgyBFJ-15">
<mxGeometry x="0.0057" width="160" relative="1" as="geometry">
<mxPoint x="680" y="230" as="sourcePoint" />
<mxPoint x="440" y="170" as="targetPoint" />
<mxPoint as="offset" />
<Array as="points">
<mxPoint x="570" y="200" />
<mxPoint x="640" y="200" />
<mxPoint x="700" y="190" />
<mxPoint x="580" y="200" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-34" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.75;exitY=1;exitDx=0;exitDy=0;entryX=0.448;entryY=-0.04;entryDx=0;entryDy=0;entryPerimeter=0;" edge="1" parent="1" source="DlWgEN0ERAqcZzdgyBFJ-22" target="DlWgEN0ERAqcZzdgyBFJ-33">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-22" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>Refill</b></p><hr size="1"><p style="margin:0px;margin-left:4px;">+ inkChamber: InkChamber</p><hr size="1"><p style="margin:0px;margin-left:4px;">+ tip: Tip</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;whiteSpace=wrap;" vertex="1" parent="1">
<mxGeometry x="160" y="430" width="160" height="90" as="geometry" />
</mxCell>
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-23" value="" style="endArrow=open;dashed=1;html=1;rounded=0;strokeWidth=1;edgeStyle=elbowEdgeStyle;elbow=vertical;entryX=0.75;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="DlWgEN0ERAqcZzdgyBFJ-13" target="DlWgEN0ERAqcZzdgyBFJ-22">
<mxGeometry x="0.0057" width="160" relative="1" as="geometry">
<mxPoint x="200" y="330" as="sourcePoint" />
<mxPoint x="330" y="310" as="targetPoint" />
<mxPoint as="offset" />
<Array as="points">
<mxPoint x="210" y="410" />
<mxPoint x="190" y="390" />
<mxPoint x="210" y="410" />
<mxPoint x="140" y="350" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-24" value="" style="endArrow=open;dashed=1;html=1;rounded=0;strokeWidth=1;edgeStyle=elbowEdgeStyle;elbow=vertical;exitX=0.703;exitY=1.022;exitDx=0;exitDy=0;exitPerimeter=0;" edge="1" parent="1" source="DlWgEN0ERAqcZzdgyBFJ-14">
<mxGeometry x="0.0057" width="160" relative="1" as="geometry">
<mxPoint x="110" y="340" as="sourcePoint" />
<mxPoint x="290" y="430" as="targetPoint" />
<mxPoint as="offset" />
<Array as="points">
<mxPoint x="370" y="410" />
<mxPoint x="220" y="420" />
<mxPoint x="200" y="400" />
<mxPoint x="220" y="420" />
<mxPoint x="150" y="360" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-25" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>Ink</b></p><hr size="1"><p style="margin:0px;margin-left:4px;">+ features: List&lt;Feature&gt;</p><hr size="1"><p style="margin:0px;margin-left:4px;">+ method(): Type</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;whiteSpace=wrap;" vertex="1" parent="1">
<mxGeometry x="520" y="680" width="160" height="90" as="geometry" />
</mxCell>
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-26" value="" style="endArrow=open;dashed=1;html=1;rounded=0;strokeWidth=1;edgeStyle=elbowEdgeStyle;elbow=vertical;entryX=0.75;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" target="DlWgEN0ERAqcZzdgyBFJ-25">
<mxGeometry x="0.0057" width="160" relative="1" as="geometry">
<mxPoint x="702" y="330" as="sourcePoint" />
<mxPoint x="702" y="400" as="targetPoint" />
<mxPoint as="offset" />
<Array as="points">
<mxPoint x="640" y="398" />
<mxPoint x="490" y="408" />
<mxPoint x="470" y="388" />
<mxPoint x="490" y="408" />
<mxPoint x="420" y="348" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-27" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>Nib</b></p><hr size="1"><p style="margin:0px;margin-left:4px;">+ point: double</p><hr size="1"><p style="margin:0px;margin-left:4px;">+ method(): Type</p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;whiteSpace=wrap;" vertex="1" parent="1">
<mxGeometry x="680" y="440" width="160" height="90" as="geometry" />
</mxCell>
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-30" value="" style="endArrow=open;dashed=1;html=1;rounded=0;strokeWidth=1;edgeStyle=elbowEdgeStyle;elbow=vertical;exitX=0.685;exitY=1.013;exitDx=0;exitDy=0;exitPerimeter=0;" edge="1" parent="1" source="DlWgEN0ERAqcZzdgyBFJ-15">
<mxGeometry x="0.0057" width="160" relative="1" as="geometry">
<mxPoint x="912" y="310" as="sourcePoint" />
<mxPoint x="740" y="460" as="targetPoint" />
<mxPoint as="offset" />
<Array as="points">
<mxPoint x="742" y="390" />
<mxPoint x="850" y="378" />
<mxPoint x="700" y="388" />
<mxPoint x="680" y="368" />
<mxPoint x="700" y="388" />
<mxPoint x="630" y="328" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-35" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.75;exitY=1;exitDx=0;exitDy=0;entryX=0;entryY=0.75;entryDx=0;entryDy=0;" edge="1" parent="1" source="DlWgEN0ERAqcZzdgyBFJ-31" target="DlWgEN0ERAqcZzdgyBFJ-25">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-31" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>InkChamber</b></p><hr size="1"><p style="margin:0px;margin-left:4px;">+ radius: number,</p><p style="margin:0px;margin-left:4px;">+ percentFilled: int</p><p style="margin:0px;margin-left:4px;">+ ink: Ink<span style="white-space: pre;"> </span></p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;whiteSpace=wrap;" vertex="1" parent="1">
<mxGeometry x="40" y="600" width="170" height="90" as="geometry" />
</mxCell>
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-32" value="" style="endArrow=open;dashed=1;html=1;rounded=0;strokeWidth=1;edgeStyle=elbowEdgeStyle;elbow=vertical;entryX=0.25;entryY=0;entryDx=0;entryDy=0;exitX=0.148;exitY=1.044;exitDx=0;exitDy=0;exitPerimeter=0;" edge="1" parent="1" source="DlWgEN0ERAqcZzdgyBFJ-22" target="DlWgEN0ERAqcZzdgyBFJ-31">
<mxGeometry x="0.0057" width="160" relative="1" as="geometry">
<mxPoint x="50" y="520" as="sourcePoint" />
<mxPoint x="218" y="582" as="targetPoint" />
<mxPoint as="offset" />
<Array as="points">
<mxPoint x="150" y="556" />
<mxPoint x="150" y="526" />
<mxPoint x="80" y="206" />
<mxPoint x="140" y="196" />
<mxPoint x="20" y="206" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="DlWgEN0ERAqcZzdgyBFJ-33" value="<p style="margin:0px;margin-top:4px;text-align:center;"><b>Tip</b></p><hr size="1"><p style="margin:0px;margin-left:4px;">+ point: double</p><p style="margin:0px;margin-left:4px;"><br></p>" style="verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica;html=1;whiteSpace=wrap;" vertex="1" parent="1">
<mxGeometry x="300" y="600" width="160" height="60" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>