nodist: generate symbols with .mps extension
[adg.git] / nodist / symbols.mp
blob7b074cc6be51cec537067a3935d200ea69c95c05
1 % Miscellaneous symbols
3 filenametemplate "%j-%c.mps";
5 linecap := rounded;
6 linejoin := rounded;
8 pen thin, thick;
9 thin := pencircle scaled 3;
10 thick := pencircle scaled 5;
13 beginfig(0) % Server
15 pickup thick;
16 draw (300, 300) -- (180, 260) --
17      (180,  50) .. controls (200, 30) and (250, 0) .. (280, 0) --
18      (400, 100) -- (400, 280) -- cycle;
20 pickup thin;
21 draw (280, 210) .. controls (250, 210) and (200, 230) .. (180, 260);
22 draw fullcircle scaled 15 yscaled 1.4 shifted (260, 80);
23 draw fullcircle scaled 15 yscaled 1.4 shifted (260, 50);
24 draw (260, 185) .. controls (240, 190) and (220, 190) .. (190, 220);
25 draw (260, 165) .. controls (240, 170) and (220, 170) .. (190, 200);
26 draw (400, 280) -- (280, 210) -- (280, 0);
28 endfig;
31 beginfig(1) % Database
33 pickup thick;
34 draw halfcircle scaled 400 yscaled 0.2 shifted (200, 200) --
35      halfcircle rotated 180 scaled 400 yscaled 0.2 shifted (200, 40) --
36      cycle;
38 pickup thin;
39 draw halfcircle rotated 180 scaled 400 yscaled 0.2 shifted (200, 200);
41 endfig;
44 beginfig(2) % Printer
46 pickup thick;
47 draw (100, 0) -- (300, 0) -- (300, 70) -- (100, 70) -- cycle;
48 draw (300, 50) --
49      quartercircle rotated -90 scaled 60 shifted (370, 80) ..
50      quartercircle scaled 60 shifted (370, 200) ..
51      quartercircle rotated 90 scaled 60 shifted (30, 200) ..
52      quartercircle rotated 180 scaled 60 shifted (30, 80) .. (100, 50);
53 draw (300, 230) -- (300, 330) -- (100, 330) -- (100, 230);
55 pickup thin;
56 draw (120, 20) -- (280, 20);
57 draw (120, 35) -- (280, 35);
58 draw (120, 50) -- (280, 50);
59 draw (40, 200) -- (360, 200) -- (360, 190) -- (40, 190) -- cycle;
61 endfig;
64 beginfig(3) % Sheet
66 pickup thick;
67 draw (50, 0) -- (350, 0) -- (350, 300) -- (250, 400) -- (50, 400) -- cycle;
68 linecap := butt;
69 draw (350, 300) -- (250, 300) -- (250, 400);
71 pickup thin;
72 for n = 50 step 30 until 290:
73     draw (100, n) -- (300, n);
74 endfor
76 draw (100, 320) -- (250, 320);
77 draw (100, 350) -- (250, 350);
79 endfig;
82 beginfig(4) % Laptop
84 pickup thick;
85 draw (50, 100) -- (350, 100) -- (350, 300) -- (50, 300) -- cycle;
86 draw (50, 100) -- (0, 20) -- (10, 0) -- (390, 0) -- (400, 20) -- (350, 100);
87 draw (0, 20) -- (400, 20);
89 pickup thin;
90 draw quartercircle rotated -90 scaled 40 shifted (320, 130) ..
91      quartercircle scaled 40 shifted (320, 270) ..
92      quartercircle rotated 90 scaled 40 shifted (80, 270) ..
93      quartercircle rotated 180 scaled 40 shifted (80, 130) .. cycle;
94 draw (35, 55) -- (55, 92) -- (345, 92) -- (365, 55) -- cycle;
95 draw (170, 50) -- (230, 50) -- (233, 28) -- (167, 28) -- cycle;
97 endfig;
100 beginfig(5) % Cloud
102 pickup thick;
103 draw (305,  25) .. controls (279,  20) and (253,  26) ..
104      (235,  39) .. controls (225,  30) and (223,  24) ..
105      (198,  20) .. controls (148,  12) and (118,  30) ..
106      (107,  60) .. controls (106,  62) and (106,  65) ..
107      (105,  67) .. controls ( 70,  64) and ( 35,  81) ..
108      ( 25, 108) .. controls ( 15, 135) and ( 33, 162) ..
109      ( 66, 174) .. controls ( 64, 177) and ( 63, 180) ..
110      ( 61, 183) .. controls ( 50, 213) and ( 74, 244) ..
111      (113, 252) .. controls (132, 256) and (152, 254) ..
112      (168, 247) .. controls (177, 262) and (193, 273) ..
113      (216, 278) .. controls (248, 284) and (280, 274) ..
114      (297, 255) .. controls (304, 259) and (312, 262) ..
115      (321, 264) .. controls (361, 272) and (402, 254) ..
116      (412, 224) .. controls (417, 209) and (414, 194) ..
117      (404, 181) .. controls (414, 174) and (421, 165) ..
118      (425, 155) .. controls (436, 125) and (412,  94) ..
119      (373,  85) .. controls (369,  84) and (365,  84) ..
120      (360,  83) .. controls (362,  56) and (340,  31) .. cycle;
122 endfig;
125 beginfig(6) % Tablet
127 pickup thick;
128 draw quartercircle rotated -90 scaled 120 shifted (280, 60) ..
129      quartercircle scaled 120 shifted (280, 340) ..
130      quartercircle rotated 90 scaled 120 shifted (120, 340) ..
131      quartercircle rotated 180 scaled 120 shifted (120, 60) .. cycle;
133 pickup thin;
134 draw (90, 70) -- (90, 330) -- (310, 330) -- (310, 70) -- cycle;
135 draw fullcircle scaled 50 shifted (200, 35);
136 draw (150, 370) -- (250, 370) -- (240, 360) -- (160, 360) -- cycle;
138 endfig;
141 beginfig(7) % Workstation
143 pickup thick;
144 draw (0, 100) -- (300, 100) -- (300, 300) -- (0, 300) -- cycle;
145 draw (130, 90) -- (170, 90){down} .. (180, 65) -- (120, 65) .. {up}cycle;
146 draw (80, 50) -- (0, 10) -- (10, 0) -- (290, 0) -- (300, 10) -- (220, 50) -- cycle;
147 draw (318, 28) .. controls (320, 33) and (335, 43) ..
148      (350, 38) .. controls (367, 32) and (380, 15) ..
149      (368,  4) .. controls (360, -5) and (344,  7) ..
150      (339, 11) .. controls (334, 15) and (318, 23) .. (318, 28) .. cycle;
152 pickup thin;
153 draw quartercircle rotated -90 scaled 40 shifted (270, 130) ..
154      quartercircle scaled 40 shifted (270, 270) ..
155      quartercircle rotated 90 scaled 40 shifted (30, 270) ..
156      quartercircle rotated 180 scaled 40 shifted (30, 130) .. cycle;
157 draw (0, 10) -- (300, 10);
158 draw (370, 10) .. {dir 135}(340, 20) .. (320, 30);
160 draw (313, 35){dir 135} .. (280, 50) .. (290, 60) .. (250, 70) ..
161      (220, 70) .. {dir 220}(185, 75);
164 endfig;
167 end.