package scad_ml

  1. Overview
  2. Docs

Source file color.ml

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
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
(** Type defining the available colour options in OpenSCAD. *)

type t =
  | RGB of float * float * float
  | Hex of string
  | Lavender
  | Thistle
  | Plum
  | Violet
  | Orchid
  | Fuchsia
  | Magenta
  | MediumOrchid
  | MediumPurple
  | BlueViolet
  | DarkViolet
  | DarkOrchid
  | DarkMagenta
  | Purple
  | Indigo
  | DarkSlateBlue
  | SlateBlue
  | MediumSlateBlue
  | Pink
  | LightPink
  | HotPink
  | DeepPink
  | MediumVioletRed
  | PaleVioletRed
  | Aqua
  | Cyan
  | LightCyan
  | PaleTurquoise
  | Aquamarine
  | Turquoise
  | MediumTurquoise
  | DarkTurquoise
  | CadetBlue
  | SteelBlue
  | LightSteelBlue
  | PowderBlue
  | LightBlue
  | SkyBlue
  | LightSkyBlue
  | DeepSkyBlue
  | DodgerBlue
  | CornflowerBlue
  | RoyalBlue
  | Blue
  | MediumBlue
  | DarkBlue
  | Navy
  | MidnightBlue
  | IndianRed
  | LightCoral
  | Salmon
  | DarkSalmon
  | LightSalmon
  | Red
  | Crimson
  | FireBrick
  | DarkRed
  | GreenYellow
  | Chartreuse
  | LawnGreen
  | Lime
  | LimeGreen
  | PaleGreen
  | LightGreen
  | MediumSpringGreen
  | SpringGreen
  | MediumSeaGreen
  | SeaGreen
  | ForestGreen
  | Green
  | DarkGreen
  | YellowGreen
  | OliveDrab
  | Olive
  | DarkOliveGreen
  | MediumAquamarine
  | DarkSeaGreen
  | LightSeaGreen
  | DarkCyan
  | Teal
  | Coral
  | Tomato
  | OrangeRed
  | DarkOrange
  | Orange
  | Gold
  | Yellow
  | LightYellow
  | LemonChiffon
  | LightGoldenrodYellow
  | PapayaWhip
  | Moccasin
  | PeachPuff
  | PaleGoldenrod
  | Khaki
  | DarkKhaki
  | Cornsilk
  | BlanchedAlmond
  | Bisque
  | NavajoWhite
  | Wheat
  | BurlyWood
  | Tan
  | RosyBrown
  | SandyBrown
  | Goldenrod
  | DarkGoldenrod
  | Peru
  | Chocolate
  | SaddleBrown
  | Sienna
  | Brown
  | Maroon
  | White
  | Snow
  | Honeydew
  | MintCream
  | Azure
  | AliceBlue
  | GhostWhite
  | WhiteSmoke
  | Seashell
  | Beige
  | OldLace
  | FloralWhite
  | Ivory
  | AntiqueWhite
  | Linen
  | LavenderBlush
  | MistyRose
  | Gainsboro
  | LightGrey
  | Silver
  | DarkGray
  | Gray
  | DimGray
  | LightSlateGray
  | SlateGray
  | DarkSlateGray
  | Black

let to_string = function
  | RGB (r, g, b)        -> Printf.sprintf "c = [%f, %f, %f]" r g b
  | Hex s                -> Printf.sprintf "\"%s\"" s
  | Lavender             -> "\"Lavender\""
  | Thistle              -> "\"Thistle\""
  | Plum                 -> "\"Plum\""
  | Violet               -> "\"Violet\""
  | Orchid               -> "\"Orchid\""
  | Fuchsia              -> "\"Fuchsia\""
  | Magenta              -> "\"Magenta\""
  | MediumOrchid         -> "\"MediumOrchid\""
  | MediumPurple         -> "\"MediumPurple\""
  | BlueViolet           -> "\"BlueViolet\""
  | DarkViolet           -> "\"DarkViolet\""
  | DarkOrchid           -> "\"DarkOrchid\""
  | DarkMagenta          -> "\"DarkMagenta\""
  | Purple               -> "\"Purple\""
  | Indigo               -> "\"Indigo\""
  | DarkSlateBlue        -> "\"DarkSlateBlue\""
  | SlateBlue            -> "\"SlateBlue\""
  | MediumSlateBlue      -> "\"MediumSlateBlue\""
  | Pink                 -> "\"Pink\""
  | LightPink            -> "\"LightPink\""
  | HotPink              -> "\"HotPink\""
  | DeepPink             -> "\"DeepPink\""
  | MediumVioletRed      -> "\"MediumVioletRed\""
  | PaleVioletRed        -> "\"PaleVioletRed\""
  | Aqua                 -> "\"Aqua\""
  | Cyan                 -> "\"Cyan\""
  | LightCyan            -> "\"LightCyan\""
  | PaleTurquoise        -> "\"PaleTurquoise\""
  | Aquamarine           -> "\"Aquamarine\""
  | Turquoise            -> "\"Turquoise\""
  | MediumTurquoise      -> "\"MediumTurquoise\""
  | DarkTurquoise        -> "\"DarkTurquoise\""
  | CadetBlue            -> "\"CadetBlue\""
  | SteelBlue            -> "\"SteelBlue\""
  | LightSteelBlue       -> "\"LightSteelBlue\""
  | PowderBlue           -> "\"PowderBlue\""
  | LightBlue            -> "\"LightBlue\""
  | SkyBlue              -> "\"SkyBlue\""
  | LightSkyBlue         -> "\"LightSkyBlue\""
  | DeepSkyBlue          -> "\"DeepSkyBlue\""
  | DodgerBlue           -> "\"DodgerBlue\""
  | CornflowerBlue       -> "\"CornflowerBlue\""
  | RoyalBlue            -> "\"RoyalBlue\""
  | Blue                 -> "\"Blue\""
  | MediumBlue           -> "\"MediumBlue\""
  | DarkBlue             -> "\"DarkBlue\""
  | Navy                 -> "\"Navy\""
  | MidnightBlue         -> "\"MidnightBlue\""
  | IndianRed            -> "\"IndianRed\""
  | LightCoral           -> "\"LightCoral\""
  | Salmon               -> "\"Salmon\""
  | DarkSalmon           -> "\"DarkSalmon\""
  | LightSalmon          -> "\"LightSalmon\""
  | Red                  -> "\"Red\""
  | Crimson              -> "\"Crimson\""
  | FireBrick            -> "\"FireBrick\""
  | DarkRed              -> "\"DarkRed\""
  | GreenYellow          -> "\"GreenYellow\""
  | Chartreuse           -> "\"Chartreuse\""
  | LawnGreen            -> "\"LawnGreen\""
  | Lime                 -> "\"Lime\""
  | LimeGreen            -> "\"LimeGreen\""
  | PaleGreen            -> "\"PaleGreen\""
  | LightGreen           -> "\"LightGreen\""
  | MediumSpringGreen    -> "\"MediumSpringGreen\""
  | SpringGreen          -> "\"SpringGreen\""
  | MediumSeaGreen       -> "\"MediumSeaGreen\""
  | SeaGreen             -> "\"SeaGreen\""
  | ForestGreen          -> "\"ForestGreen\""
  | Green                -> "\"Green\""
  | DarkGreen            -> "\"DarkGreen\""
  | YellowGreen          -> "\"YellowGreen\""
  | OliveDrab            -> "\"OliveDrab\""
  | Olive                -> "\"Olive\""
  | DarkOliveGreen       -> "\"DarkOliveGreen\""
  | MediumAquamarine     -> "\"MediumAquamarine\""
  | DarkSeaGreen         -> "\"DarkSeaGreen\""
  | LightSeaGreen        -> "\"LightSeaGreen\""
  | DarkCyan             -> "\"DarkCyan\""
  | Teal                 -> "\"Teal\""
  | Coral                -> "\"Coral\""
  | Tomato               -> "\"Tomato\""
  | OrangeRed            -> "\"OrangeRed\""
  | DarkOrange           -> "\"DarkOrange\""
  | Orange               -> "\"Orange\""
  | Gold                 -> "\"Gold\""
  | Yellow               -> "\"Yellow\""
  | LightYellow          -> "\"LightYellow\""
  | LemonChiffon         -> "\"LemonChiffon\""
  | LightGoldenrodYellow -> "\"LightGoldenrodYellow\""
  | PapayaWhip           -> "\"PapayaWhip\""
  | Moccasin             -> "\"Moccasin\""
  | PeachPuff            -> "\"PeachPuff\""
  | PaleGoldenrod        -> "\"PaleGoldenrod\""
  | Khaki                -> "\"Khaki\""
  | DarkKhaki            -> "\"DarkKhaki\""
  | Cornsilk             -> "\"Cornsilk\""
  | BlanchedAlmond       -> "\"BlanchedAlmond\""
  | Bisque               -> "\"Bisque\""
  | NavajoWhite          -> "\"NavajoWhite\""
  | Wheat                -> "\"Wheat\""
  | BurlyWood            -> "\"BurlyWood\""
  | Tan                  -> "\"Tan\""
  | RosyBrown            -> "\"RosyBrown\""
  | SandyBrown           -> "\"SandyBrown\""
  | Goldenrod            -> "\"Goldenrod\""
  | DarkGoldenrod        -> "\"DarkGoldenrod\""
  | Peru                 -> "\"Peru\""
  | Chocolate            -> "\"Chocolate\""
  | SaddleBrown          -> "\"SaddleBrown\""
  | Sienna               -> "\"Sienna\""
  | Brown                -> "\"Brown\""
  | Maroon               -> "\"Maroon\""
  | White                -> "\"White\""
  | Snow                 -> "\"Snow\""
  | Honeydew             -> "\"Honeydew\""
  | MintCream            -> "\"MintCream\""
  | Azure                -> "\"Azure\""
  | AliceBlue            -> "\"AliceBlue\""
  | GhostWhite           -> "\"GhostWhite\""
  | WhiteSmoke           -> "\"WhiteSmoke\""
  | Seashell             -> "\"Seashell\""
  | Beige                -> "\"Beige\""
  | OldLace              -> "\"OldLace\""
  | FloralWhite          -> "\"FloralWhite\""
  | Ivory                -> "\"Ivory\""
  | AntiqueWhite         -> "\"AntiqueWhite\""
  | Linen                -> "\"Linen\""
  | LavenderBlush        -> "\"LavenderBlush\""
  | MistyRose            -> "\"MistyRose\""
  | Gainsboro            -> "\"Gainsboro\""
  | LightGrey            -> "\"LightGrey\""
  | Silver               -> "\"Silver\""
  | DarkGray             -> "\"DarkGray\""
  | Gray                 -> "\"Gray\""
  | DimGray              -> "\"DimGray\""
  | LightSlateGray       -> "\"LightSlateGray\""
  | SlateGray            -> "\"SlateGray\""
  | DarkSlateGray        -> "\"DarkSlateGray\""
  | Black                -> "\"Black\""
OCaml

Innovation. Community. Security.