plotboilerplate 1.16.0 → 1.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (173) hide show
  1. package/README.md +1 -0
  2. package/changelog.md +26 -1
  3. package/dist/index.esm.js +355 -441
  4. package/dist/index.esm.js.map +1 -1
  5. package/dist/index.esm.min.js +1 -1
  6. package/dist/index.esm.min.js.map +1 -1
  7. package/dist/plotboilerplate.browser.min.js +1 -1
  8. package/dist/plotboilerplate.browser.min.js.map +1 -1
  9. package/dist/plotboilerplate.js +357 -345
  10. package/dist/plotboilerplate.min.js +1 -1
  11. package/package.json +1 -1
  12. package/src/cjs/BezierPath.d.ts +0 -14
  13. package/src/cjs/BezierPath.js +0 -26
  14. package/src/cjs/BezierPath.js.map +1 -1
  15. package/src/cjs/Bounds.d.ts +22 -1
  16. package/src/cjs/Bounds.js +24 -1
  17. package/src/cjs/Bounds.js.map +1 -1
  18. package/src/cjs/Circle.d.ts +0 -13
  19. package/src/cjs/Circle.js +0 -23
  20. package/src/cjs/Circle.js.map +1 -1
  21. package/src/cjs/CircleSector.d.ts +0 -13
  22. package/src/cjs/CircleSector.js +0 -27
  23. package/src/cjs/CircleSector.js.map +1 -1
  24. package/src/cjs/CubicBezierCurve.d.ts +0 -15
  25. package/src/cjs/CubicBezierCurve.js +0 -36
  26. package/src/cjs/CubicBezierCurve.js.map +1 -1
  27. package/src/cjs/Line.d.ts +0 -14
  28. package/src/cjs/Line.js +0 -26
  29. package/src/cjs/Line.js.map +1 -1
  30. package/src/cjs/PBImage.d.ts +0 -13
  31. package/src/cjs/PBImage.js +0 -14
  32. package/src/cjs/PBImage.js.map +1 -1
  33. package/src/cjs/PBText.d.ts +0 -13
  34. package/src/cjs/PBText.js +0 -14
  35. package/src/cjs/PBText.js.map +1 -1
  36. package/src/cjs/Polygon.d.ts +9 -15
  37. package/src/cjs/Polygon.js +12 -39
  38. package/src/cjs/Polygon.js.map +1 -1
  39. package/src/cjs/Triangle.d.ts +0 -13
  40. package/src/cjs/Triangle.js +0 -37
  41. package/src/cjs/Triangle.js.map +1 -1
  42. package/src/cjs/VEllipse.d.ts +0 -10
  43. package/src/cjs/VEllipse.js +0 -21
  44. package/src/cjs/VEllipse.js.map +1 -1
  45. package/src/cjs/Vector.d.ts +0 -14
  46. package/src/cjs/Vector.js +0 -36
  47. package/src/cjs/Vector.js.map +1 -1
  48. package/src/cjs/Vertex.d.ts +0 -14
  49. package/src/cjs/Vertex.js +0 -25
  50. package/src/cjs/Vertex.js.map +1 -1
  51. package/src/cjs/draw.d.ts +41 -2
  52. package/src/cjs/draw.js +140 -3
  53. package/src/cjs/draw.js.map +1 -1
  54. package/src/cjs/drawgl.d.ts +38 -2
  55. package/src/cjs/drawgl.js +41 -2
  56. package/src/cjs/drawgl.js.map +1 -1
  57. package/src/cjs/drawutilssvg.d.ts +66 -3
  58. package/src/cjs/drawutilssvg.js +140 -15
  59. package/src/cjs/drawutilssvg.js.map +1 -1
  60. package/src/cjs/index.d.ts +0 -1
  61. package/src/cjs/index.js +0 -1
  62. package/src/cjs/index.js.map +1 -1
  63. package/src/cjs/interfaces/DrawLib.d.ts +61 -26
  64. package/src/cjs/interfaces/DrawLib.js +2 -0
  65. package/src/cjs/interfaces/DrawLib.js.map +1 -1
  66. package/src/cjs/interfaces/core.d.ts +0 -12
  67. package/src/cjs/module.d.ts +1 -3
  68. package/src/cjs/module.js +2 -5
  69. package/src/cjs/module.js.map +1 -1
  70. package/src/cjs/utils/creategui.js +16 -2
  71. package/src/cjs/utils/datastructures/Girih.d.ts +5 -0
  72. package/src/cjs/utils/datastructures/Girih.js +18 -14
  73. package/src/cjs/utils/datastructures/Girih.js.map +1 -1
  74. package/src/cjs/utils/datastructures/GirihPenroseRhombus.js +42 -25
  75. package/src/cjs/utils/datastructures/GirihPenroseRhombus.js.map +1 -1
  76. package/src/cjs/utils/datastructures/GirihTile.js +2 -13
  77. package/src/cjs/utils/datastructures/GirihTile.js.map +1 -1
  78. package/src/cjs/utils/helpers/BezierPathInteractionHelper.d.ts +2 -1
  79. package/src/cjs/utils/helpers/BezierPathInteractionHelper.js +9 -18
  80. package/src/cjs/utils/helpers/BezierPathInteractionHelper.js.map +1 -1
  81. package/src/esm/BezierPath.d.ts +0 -14
  82. package/src/esm/BezierPath.js +0 -26
  83. package/src/esm/BezierPath.js.map +1 -1
  84. package/src/esm/Bounds.d.ts +22 -1
  85. package/src/esm/Bounds.js +24 -1
  86. package/src/esm/Bounds.js.map +1 -1
  87. package/src/esm/Circle.d.ts +0 -13
  88. package/src/esm/Circle.js +0 -23
  89. package/src/esm/Circle.js.map +1 -1
  90. package/src/esm/CircleSector.d.ts +0 -13
  91. package/src/esm/CircleSector.js +0 -27
  92. package/src/esm/CircleSector.js.map +1 -1
  93. package/src/esm/CubicBezierCurve.d.ts +0 -15
  94. package/src/esm/CubicBezierCurve.js +0 -36
  95. package/src/esm/CubicBezierCurve.js.map +1 -1
  96. package/src/esm/Line.d.ts +0 -14
  97. package/src/esm/Line.js +0 -26
  98. package/src/esm/Line.js.map +1 -1
  99. package/src/esm/PBImage.d.ts +0 -13
  100. package/src/esm/PBImage.js +0 -14
  101. package/src/esm/PBImage.js.map +1 -1
  102. package/src/esm/PBText.d.ts +0 -13
  103. package/src/esm/PBText.js +0 -14
  104. package/src/esm/PBText.js.map +1 -1
  105. package/src/esm/Polygon.d.ts +9 -15
  106. package/src/esm/Polygon.js +12 -39
  107. package/src/esm/Polygon.js.map +1 -1
  108. package/src/esm/Triangle.d.ts +0 -13
  109. package/src/esm/Triangle.js +0 -37
  110. package/src/esm/Triangle.js.map +1 -1
  111. package/src/esm/VEllipse.d.ts +0 -10
  112. package/src/esm/VEllipse.js +0 -21
  113. package/src/esm/VEllipse.js.map +1 -1
  114. package/src/esm/Vector.d.ts +0 -14
  115. package/src/esm/Vector.js +0 -36
  116. package/src/esm/Vector.js.map +1 -1
  117. package/src/esm/Vertex.d.ts +0 -14
  118. package/src/esm/Vertex.js +0 -25
  119. package/src/esm/Vertex.js.map +1 -1
  120. package/src/esm/draw.d.ts +41 -2
  121. package/src/esm/draw.js +139 -3
  122. package/src/esm/draw.js.map +1 -1
  123. package/src/esm/drawgl.d.ts +38 -2
  124. package/src/esm/drawgl.js +41 -2
  125. package/src/esm/drawgl.js.map +1 -1
  126. package/src/esm/drawutilssvg.d.ts +66 -3
  127. package/src/esm/drawutilssvg.js +140 -15
  128. package/src/esm/drawutilssvg.js.map +1 -1
  129. package/src/esm/index.d.ts +0 -1
  130. package/src/esm/index.js +0 -1
  131. package/src/esm/index.js.map +1 -1
  132. package/src/esm/interfaces/DrawLib.d.ts +61 -26
  133. package/src/esm/interfaces/DrawLib.js +2 -0
  134. package/src/esm/interfaces/DrawLib.js.map +1 -1
  135. package/src/esm/interfaces/core.d.ts +0 -12
  136. package/src/esm/module.d.ts +1 -3
  137. package/src/esm/module.js +5 -4
  138. package/src/esm/module.js.map +1 -1
  139. package/src/esm/utils/datastructures/Girih.d.ts +5 -0
  140. package/src/esm/utils/datastructures/Girih.js +18 -14
  141. package/src/esm/utils/datastructures/Girih.js.map +1 -1
  142. package/src/esm/utils/datastructures/GirihPenroseRhombus.js +42 -25
  143. package/src/esm/utils/datastructures/GirihPenroseRhombus.js.map +1 -1
  144. package/src/esm/utils/datastructures/GirihTile.js +2 -13
  145. package/src/esm/utils/datastructures/GirihTile.js.map +1 -1
  146. package/src/esm/utils/helpers/BezierPathInteractionHelper.d.ts +2 -1
  147. package/src/esm/utils/helpers/BezierPathInteractionHelper.js +9 -18
  148. package/src/esm/utils/helpers/BezierPathInteractionHelper.js.map +1 -1
  149. package/src/ts/BezierPath.ts +0 -29
  150. package/src/ts/Bounds.ts +25 -1
  151. package/src/ts/Circle.ts +0 -26
  152. package/src/ts/CircleSector.ts +0 -30
  153. package/src/ts/CubicBezierCurve.ts +0 -39
  154. package/src/ts/Line.ts +0 -29
  155. package/src/ts/PBImage.ts +0 -15
  156. package/src/ts/PBText.ts +0 -17
  157. package/src/ts/Polygon.ts +16 -42
  158. package/src/ts/Triangle.ts +0 -40
  159. package/src/ts/VEllipse.ts +0 -24
  160. package/src/ts/Vector.ts +0 -40
  161. package/src/ts/Vertex.ts +0 -28
  162. package/src/ts/draw.ts +192 -3
  163. package/src/ts/drawgl.ts +44 -2
  164. package/src/ts/drawutilssvg.ts +181 -15
  165. package/src/ts/index.ts +0 -1
  166. package/src/ts/interfaces/DrawLib.ts +69 -26
  167. package/src/ts/interfaces/core.ts +0 -11
  168. package/src/ts/module.ts +2 -4
  169. package/src/ts/utils/datastructures/Girih.ts +204 -209
  170. package/src/ts/utils/datastructures/GirihPenroseRhombus.ts +170 -152
  171. package/src/ts/utils/datastructures/GirihTile.ts +394 -419
  172. package/src/ts/utils/helpers/BezierPathInteractionHelper.ts +9 -18
  173. package/src/ts/SVGBuilder.ts +0 -109
@@ -15,7 +15,10 @@
15
15
  * @modified 2021-11-12 Added `text()` params fontSize, fontFamily, rotation, textAlign.
16
16
  * @modified 2021-11-16 Added `text()` params fontWeight and fontStyle.
17
17
  * @modified 2021-11-19 Added the `color` param to the `label(...)` function.
18
+ * @modified 2022-02-03 Added the `lineWidth` param to the `crosshair` function.
19
+ * @modified 2022-02-03 Added the `cross(...)` function.
18
20
  **/
21
+ import { Bounds } from "../Bounds";
19
22
  import { Polygon } from "../Polygon";
20
23
  import { Vertex } from "../Vertex";
21
24
  import { SVGPathParams, UID, XYCoords } from "./core";
@@ -104,7 +107,7 @@ export interface DrawLib<R> {
104
107
  * @param {number=1} lineWidth? - [optional] The line's width.
105
108
  * @return {void}
106
109
  * @instance
107
- * @memberof drawutils
110
+ * @memberof DrawLib
108
111
  **/
109
112
  line: (zA: Vertex, zB: Vertex, color: string, lineWidth?: number) => R;
110
113
  /**
@@ -117,7 +120,7 @@ export interface DrawLib<R> {
117
120
  * @param {number=} lineWidth - (optional) The line width to use; default is 1.
118
121
  * @return {void}
119
122
  * @instance
120
- * @memberof drawutils
123
+ * @memberof DrawLib
121
124
  **/
122
125
  arrow: (zA: Vertex, zB: Vertex, color: string, lineWidth?: number) => R;
123
126
  /**
@@ -131,9 +134,25 @@ export interface DrawLib<R> {
131
134
  * @param {Vertex} size - The x/y-size to draw the image with.
132
135
  * @return {void}
133
136
  * @instance
134
- * @memberof drawutils
137
+ * @memberof DrawLib
135
138
  **/
136
139
  image: (image: HTMLImageElement, position: Vertex, size: Vertex) => R;
140
+ /**
141
+ * Draw an image at the given position with the given size.<br>
142
+ * <br>
143
+ * Note: SVG images may have resizing issues at the moment.Draw a line and an arrow at the end (zB) of the given line with the specified (CSS-) color.
144
+ *
145
+ * @method texturedPoly
146
+ * @param {Image} textureImage - The image object to draw.
147
+ * @param {Bounds} textureSize - The texture size to use; these are the original bounds to map the polygon vertices to.
148
+ * @param {Polygon} polygon - The polygon to use as clip path.
149
+ * @param {Vertex} polygonPosition - The polygon's position (relative), measured at the bounding box's center.
150
+ * @param {number} rotation - The rotation to use for the polygon (and for the texture).
151
+ * @return {void}
152
+ * @instance
153
+ * @memberof DrawLib
154
+ **/
155
+ texturedPoly: (textureImage: HTMLImageElement, textureSize: Bounds, polygon: Polygon, polygonPosition: Vertex, rotation: number) => R;
137
156
  /**
138
157
  * Draw the given (cubic) bézier curve.
139
158
  *
@@ -146,7 +165,7 @@ export interface DrawLib<R> {
146
165
  * @param {number} lineWidth - (optional) The line width to use.
147
166
  * @return {void}
148
167
  * @instance
149
- * @memberof drawutils
168
+ * @memberof DrawLib
150
169
  */
151
170
  cubicBezier: (startPoint: Vertex, endPoint: Vertex, startControlPoint: Vertex, endControlPoint: Vertex, color: string, lineWidth?: number) => R;
152
171
  /**
@@ -162,7 +181,7 @@ export interface DrawLib<R> {
162
181
  * @param {number=1} lineWidth - (optional) The line width to use.
163
182
  * @return {void}
164
183
  * @instance
165
- * @memberof drawutils
184
+ * @memberof DrawLib
166
185
  */
167
186
  cubicBezierPath: (path: Array<Vertex>, color: string, lineWidth?: number) => R;
168
187
  /**
@@ -175,7 +194,7 @@ export interface DrawLib<R> {
175
194
  * @param {Vertex} endPoint - The end point of the handle.
176
195
  * @return {void}
177
196
  * @instance
178
- * @memberof drawutils
197
+ * @memberof DrawLib
179
198
  */
180
199
  handle: (startPoint: Vertex, endPoint: Vertex) => R;
181
200
  /**
@@ -186,7 +205,7 @@ export interface DrawLib<R> {
186
205
  * @param {Vertex} endPoint - The end point to draw the handle at.
187
206
  * @return {void}
188
207
  * @instance
189
- * @memberof drawutils
208
+ * @memberof DrawLib
190
209
  */
191
210
  handleLine: (startPoint: Vertex, endPoint: Vertex) => R;
192
211
  /**
@@ -197,7 +216,7 @@ export interface DrawLib<R> {
197
216
  * @param {string} color - The CSS color to draw the dot with.
198
217
  * @return {void}
199
218
  * @instance
200
- * @memberof drawutils
219
+ * @memberof DrawLib
201
220
  */
202
221
  dot: (p: Vertex, color: string) => R;
203
222
  /**
@@ -208,7 +227,7 @@ export interface DrawLib<R> {
208
227
  * @param {string} color - The CSS color to draw the point with.
209
228
  * @return {void}
210
229
  * @instance
211
- * @memberof drawutils
230
+ * @memberof DrawLib
212
231
  */
213
232
  point: (p: Vertex, color: string) => R;
214
233
  /**
@@ -223,7 +242,7 @@ export interface DrawLib<R> {
223
242
  * @param {number=} lineWidth - (optional) The line width to use; default is 1.
224
243
  * @return {void}
225
244
  * @instance
226
- * @memberof drawutils
245
+ * @memberof DrawLib
227
246
  */
228
247
  circle: (center: Vertex, radius: number, color: string, lineWidth?: number) => R;
229
248
  /**
@@ -238,7 +257,7 @@ export interface DrawLib<R> {
238
257
  * @param {number=} lineWidth - (optional) The line width to use; default is 1.
239
258
  * @return {void}
240
259
  * @instance
241
- * @memberof drawutils
260
+ * @memberof DrawLib
242
261
  */
243
262
  circleArc: (center: Vertex, radius: number, startAngle: number, endAngle: number, color: string, lineWidth?: number) => R;
244
263
  /**
@@ -253,7 +272,7 @@ export interface DrawLib<R> {
253
272
  * @param {number=} rotation - (optional, default=0) The rotation of the ellipse.
254
273
  * @return {void}
255
274
  * @instance
256
- * @memberof drawutils
275
+ * @memberof DrawLib
257
276
  */
258
277
  ellipse: (center: Vertex, radiusX: number, radiusY: number, color: string, lineWidth?: number, rotation?: number) => R;
259
278
  /**
@@ -268,7 +287,7 @@ export interface DrawLib<R> {
268
287
  * @param {number=} lineWidth - (optional) The line width to use; default is 1.
269
288
  * @return {void}
270
289
  * @instance
271
- * @memberof drawutils
290
+ * @memberof DrawLib
272
291
  */
273
292
  square: (center: XYCoords, size: number, color: string, lineWidth?: number) => R;
274
293
  /**
@@ -282,7 +301,7 @@ export interface DrawLib<R> {
282
301
  * @param {number=} lineWidth - (optional) The line width to use; default is 1.
283
302
  * @return {void}
284
303
  * @instance
285
- * @memberof drawutils
304
+ * @memberof DrawLib
286
305
  */
287
306
  rect: (upperLeft: XYCoords, width: number, height: number, color: string, lineWidth?: number) => R;
288
307
  /**
@@ -297,7 +316,7 @@ export interface DrawLib<R> {
297
316
  * @param {string} color - The CSS color to draw the grid with.
298
317
  * @return {void}
299
318
  * @instance
300
- * @memberof drawutils
319
+ * @memberof DrawLib
301
320
  */
302
321
  grid: (center: Vertex, width: number, height: number, sizeX: number, sizeY: number, color: string) => R;
303
322
  /**
@@ -314,7 +333,7 @@ export interface DrawLib<R> {
314
333
  * @param {string} color - The CSS color to draw the raster with.
315
334
  * @return {void}
316
335
  * @instance
317
- * @memberof drawutils
336
+ * @memberof DrawLib
318
337
  */
319
338
  raster: (center: Vertex, width: number, height: number, sizeX: number, sizeY: number, color: string) => R;
320
339
  /**
@@ -330,7 +349,7 @@ export interface DrawLib<R> {
330
349
  * @param {string} color - The CSS color to draw the diamond with.
331
350
  * @return {void}
332
351
  * @instance
333
- * @memberof drawutils
352
+ * @memberof DrawLib
334
353
  */
335
354
  diamondHandle: (center: Vertex, size: number, color: string) => R;
336
355
  /**
@@ -346,7 +365,7 @@ export interface DrawLib<R> {
346
365
  * @param {string} color - The CSS color to draw the square with.
347
366
  * @return {void}
348
367
  * @instance
349
- * @memberof drawutils
368
+ * @memberof DrawLib
350
369
  */
351
370
  squareHandle: (center: Vertex, size: number, color: string) => R;
352
371
  /**
@@ -362,7 +381,7 @@ export interface DrawLib<R> {
362
381
  * @param {string} color - The CSS color to draw the circle with.
363
382
  * @return {void}
364
383
  * @instance
365
- * @memberof drawutils
384
+ * @memberof DrawLib
366
385
  */
367
386
  circleHandle: (center: Vertex, size: number, color: string) => R;
368
387
  /**
@@ -374,11 +393,27 @@ export interface DrawLib<R> {
374
393
  * @param {XYCoords} center - The center of the crosshair.
375
394
  * @param {number} radius - The radius of the crosshair.
376
395
  * @param {string} color - The CSS color to draw the crosshair with.
396
+ * @param {number=0.5} lineWidth - (optional, default=0.5) The line width to use.
397
+ * @return {void}
398
+ * @instance
399
+ * @memberof DrawLib
400
+ */
401
+ crosshair: (center: XYCoords, radius: number, color: string, lineWidth?: number) => R;
402
+ /**
403
+ * Draw a cross with diagonal axes with given radius, color and lineWidth at the given position.<br>
404
+ * <br>
405
+ * Note that the x's radius will not be affected by scaling.
406
+ *
407
+ * @method crosshair
408
+ * @param {XYCoords} center - The center of the crosshair.
409
+ * @param {number} radius - The radius of the crosshair.
410
+ * @param {string} color - The CSS color to draw the crosshair with.
411
+ * @param {number=1} lineWidth - (optional, default=1.0) The line width to use.
377
412
  * @return {void}
378
413
  * @instance
379
- * @memberof drawutils
414
+ * @memberof DrawLib
380
415
  */
381
- crosshair: (center: XYCoords, radius: number, color: string) => R;
416
+ cross: (center: XYCoords, radius: number, color: string, lineWidth?: number) => R;
382
417
  /**
383
418
  * Draw a polygon.
384
419
  *
@@ -387,7 +422,7 @@ export interface DrawLib<R> {
387
422
  * @param {string} color - The CSS color to draw the polygon with.
388
423
  * @return {void}
389
424
  * @instance
390
- * @memberof drawutils
425
+ * @memberof DrawLib
391
426
  */
392
427
  polygon: (polygon: Polygon, color: string, lineWidth?: number) => R;
393
428
  /**
@@ -400,7 +435,7 @@ export interface DrawLib<R> {
400
435
  * @param {number=} lineWidth - (optional) The line width to use; default is 1.
401
436
  * @return {void}
402
437
  * @instance
403
- * @memberof drawutils
438
+ * @memberof DrawLib
404
439
  */
405
440
  polyline: (vertices: Array<Vertex>, isOpen: boolean, color: string, lineWidth?: number) => R;
406
441
  /**
@@ -420,7 +455,7 @@ export interface DrawLib<R> {
420
455
  * @param {string=} options.textAlign - The text align to use. According to the specifiactions (https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/textAlign) valid values are `"left" || "right" || "center" || "start" || "end"`.
421
456
  * @return {void}
422
457
  * @instance
423
- * @memberof drawutils
458
+ * @memberof DrawLib
424
459
  */
425
460
  text: (text: string, x: number, y: number, options?: FontOptions) => R;
426
461
  /**
@@ -434,7 +469,7 @@ export interface DrawLib<R> {
434
469
  * @param {string="black"} color - The color to use (default is black).
435
470
  * @return {void}
436
471
  * @instance
437
- * @memberof drawutils
472
+ * @memberof DrawLib
438
473
  */
439
474
  label: (text: string, x: number, y: number, rotation?: number, color?: string) => R;
440
475
  /**
@@ -446,7 +481,7 @@ export interface DrawLib<R> {
446
481
  * @param {number=1} lineWidth - (optional) the line width to use (default is 1).
447
482
  * @param {boolean=false} options.inplace - (optional) If set to true then path transforamtions (scale and translate) will be done in-place in the array. This can boost the performance.
448
483
  * @instance
449
- * @memberof drawutils
484
+ * @memberof DrawLib
450
485
  * @return {R} An instance representing the drawn path.
451
486
  */
452
487
  path: (pathData: SVGPathParams, color?: string, lineWidth?: number, options?: {
@@ -16,6 +16,8 @@
16
16
  * @modified 2021-11-12 Added `text()` params fontSize, fontFamily, rotation, textAlign.
17
17
  * @modified 2021-11-16 Added `text()` params fontWeight and fontStyle.
18
18
  * @modified 2021-11-19 Added the `color` param to the `label(...)` function.
19
+ * @modified 2022-02-03 Added the `lineWidth` param to the `crosshair` function.
20
+ * @modified 2022-02-03 Added the `cross(...)` function.
19
21
  **/
20
22
  Object.defineProperty(exports, "__esModule", { value: true });
21
23
  //# sourceMappingURL=DrawLib.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DrawLib.js","sourceRoot":"","sources":["../../ts/interfaces/DrawLib.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;IAiBI"}
1
+ {"version":3,"file":"DrawLib.js","sourceRoot":"","sources":["../../ts/interfaces/DrawLib.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;IAmBI"}
@@ -169,18 +169,6 @@ export interface SVGSerializable {
169
169
  * Required to generate proper CSS classes and other class related IDs.
170
170
  **/
171
171
  readonly className: string;
172
- /**
173
- * Convert this vertex to SVG code.
174
- *
175
- * @method toSVGString
176
- * @param {object=} options - An optional set of options, like 'className'.
177
- * @return {string} A string representing the SVG code for this vertex.
178
- * @instance
179
- * @memberof Vertex
180
- **/
181
- toSVGString: (options: {
182
- className?: string;
183
- }) => string;
184
172
  }
185
173
  /**
186
174
  * A type for SVG &lt;path d="..." /> params.
@@ -4,7 +4,6 @@ import { Circle } from "./Circle";
4
4
  import { CircleSector } from "./CircleSector";
5
5
  import { CubicBezierCurve } from "./CubicBezierCurve";
6
6
  import { drawutils } from "./draw";
7
- import { drawutilsgl } from "./drawgl";
8
7
  import { geomutils } from "./geomutils";
9
8
  import { Grid } from "./Grid";
10
9
  import { KeyHandler } from "./KeyHandler";
@@ -13,7 +12,6 @@ import { MouseHandler } from "./MouseHandler";
13
12
  import { PBImage } from "./PBImage";
14
13
  import { PlotBoilerplate } from "./PlotBoilerplate";
15
14
  import { Polygon } from "./Polygon";
16
- import { SVGBuilder } from "./SVGBuilder";
17
15
  import { Triangle } from "./Triangle";
18
16
  import { UIDGenerator } from "./UIDGenerator";
19
17
  import { Vector } from "./Vector";
@@ -24,5 +22,5 @@ import { VertexAttr } from "./VertexAttr";
24
22
  import { VertexListeners } from "./VertexListeners";
25
23
  import { VertTuple } from "./VertTuple";
26
24
  import { drawutilssvg } from "./drawutilssvg";
27
- export { BezierPath, Bounds, Circle, CircleSector, CubicBezierCurve, drawutils, drawutilsgl, geomutils, Grid, KeyHandler, Line, MouseHandler, PBImage, PlotBoilerplate, Polygon, SVGBuilder, Triangle, UIDGenerator, Vector, VEllipse, VEllipseSector, Vertex, VertexAttr, VertexListeners, VertTuple, drawutilssvg };
25
+ export { BezierPath, Bounds, Circle, CircleSector, CubicBezierCurve, drawutils, geomutils, Grid, KeyHandler, Line, MouseHandler, PBImage, PlotBoilerplate, Polygon, Triangle, UIDGenerator, Vector, VEllipse, VEllipseSector, Vertex, VertexAttr, VertexListeners, VertTuple, drawutilssvg };
28
26
  export default PlotBoilerplate;
package/src/cjs/module.js CHANGED
@@ -6,7 +6,7 @@
6
6
  //
7
7
  // @date 2021-02
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.drawutilssvg = exports.VertTuple = exports.VertexListeners = exports.VertexAttr = exports.Vertex = exports.VEllipseSector = exports.VEllipse = exports.Vector = exports.UIDGenerator = exports.Triangle = exports.SVGBuilder = exports.Polygon = exports.PlotBoilerplate = exports.PBImage = exports.MouseHandler = exports.Line = exports.KeyHandler = exports.Grid = exports.geomutils = exports.drawutilsgl = exports.drawutils = exports.CubicBezierCurve = exports.CircleSector = exports.Circle = exports.Bounds = exports.BezierPath = void 0;
9
+ exports.drawutilssvg = exports.VertTuple = exports.VertexListeners = exports.VertexAttr = exports.Vertex = exports.VEllipseSector = exports.VEllipse = exports.Vector = exports.UIDGenerator = exports.Triangle = exports.Polygon = exports.PlotBoilerplate = exports.PBImage = exports.MouseHandler = exports.Line = exports.KeyHandler = exports.Grid = exports.geomutils = exports.drawutils = exports.CubicBezierCurve = exports.CircleSector = exports.Circle = exports.Bounds = exports.BezierPath = void 0;
10
10
  var BezierPath_1 = require("./BezierPath");
11
11
  Object.defineProperty(exports, "BezierPath", { enumerable: true, get: function () { return BezierPath_1.BezierPath; } });
12
12
  var Bounds_1 = require("./Bounds");
@@ -19,8 +19,7 @@ var CubicBezierCurve_1 = require("./CubicBezierCurve");
19
19
  Object.defineProperty(exports, "CubicBezierCurve", { enumerable: true, get: function () { return CubicBezierCurve_1.CubicBezierCurve; } });
20
20
  var draw_1 = require("./draw");
21
21
  Object.defineProperty(exports, "drawutils", { enumerable: true, get: function () { return draw_1.drawutils; } });
22
- var drawgl_1 = require("./drawgl");
23
- Object.defineProperty(exports, "drawutilsgl", { enumerable: true, get: function () { return drawgl_1.drawutilsgl; } });
22
+ // import { drawutilsgl } from "./drawgl";
24
23
  var geomutils_1 = require("./geomutils");
25
24
  Object.defineProperty(exports, "geomutils", { enumerable: true, get: function () { return geomutils_1.geomutils; } });
26
25
  var Grid_1 = require("./Grid");
@@ -37,8 +36,6 @@ var PlotBoilerplate_1 = require("./PlotBoilerplate");
37
36
  Object.defineProperty(exports, "PlotBoilerplate", { enumerable: true, get: function () { return PlotBoilerplate_1.PlotBoilerplate; } });
38
37
  var Polygon_1 = require("./Polygon");
39
38
  Object.defineProperty(exports, "Polygon", { enumerable: true, get: function () { return Polygon_1.Polygon; } });
40
- var SVGBuilder_1 = require("./SVGBuilder");
41
- Object.defineProperty(exports, "SVGBuilder", { enumerable: true, get: function () { return SVGBuilder_1.SVGBuilder; } });
42
39
  var Triangle_1 = require("./Triangle");
43
40
  Object.defineProperty(exports, "Triangle", { enumerable: true, get: function () { return Triangle_1.Triangle; } });
44
41
  var UIDGenerator_1 = require("./UIDGenerator");
@@ -1 +1 @@
1
- {"version":3,"file":"module.js","sourceRoot":"","sources":["../ts/module.ts"],"names":[],"mappings":";AAAA,mBAAmB;AACnB,uEAAuE;AACvE,MAAM;AACN,+EAA+E;AAC/E,EAAE;AACF,gBAAgB;;;AAEhB,2CAA0C;AA4BxC,2FA5BO,uBAAU,OA4BP;AA3BZ,mCAAkC;AA4BhC,uFA5BO,eAAM,OA4BP;AA3BR,mCAAkC;AA4BhC,uFA5BO,eAAM,OA4BP;AA3BR,+CAA8C;AA4B5C,6FA5BO,2BAAY,OA4BP;AA3Bd,uDAAsD;AA4BpD,iGA5BO,mCAAgB,OA4BP;AA3BlB,+BAAmC;AA4BjC,0FA5BO,gBAAS,OA4BP;AA3BX,mCAAuC;AA4BrC,4FA5BO,oBAAW,OA4BP;AA3Bb,yCAAwC;AA4BtC,0FA5BO,qBAAS,OA4BP;AA3BX,+BAA8B;AA4B5B,qFA5BO,WAAI,OA4BP;AA3BN,2CAA0C;AA6BxC,2FA7BO,uBAAU,OA6BP;AA5BZ,+BAA8B;AA6B5B,qFA7BO,WAAI,OA6BP;AA5BN,+CAA8C;AA6B5C,6FA7BO,2BAAY,OA6BP;AA5Bd,qCAAoC;AA6BlC,wFA7BO,iBAAO,OA6BP;AA5BT,qDAAoD;AA6BlD,gGA7BO,iCAAe,OA6BP;AA5BjB,qCAAoC;AA6BlC,wFA7BO,iBAAO,OA6BP;AA5BT,2CAA0C;AA6BxC,2FA7BO,uBAAU,OA6BP;AA5BZ,uCAAsC;AA6BpC,yFA7BO,mBAAQ,OA6BP;AA5BV,+CAA8C;AA6B5C,6FA7BO,2BAAY,OA6BP;AA5Bd,mCAAkC;AA6BhC,uFA7BO,eAAM,OA6BP;AA5BR,uCAAsC;AA6BpC,yFA7BO,mBAAQ,OA6BP;AA5BV,mDAAkD;AA6BhD,+FA7BO,+BAAc,OA6BP;AA5BhB,mCAAkC;AA6BhC,uFA7BO,eAAM,OA6BP;AA5BR,2CAA0C;AA6BxC,2FA7BO,uBAAU,OA6BP;AA5BZ,qDAAoD;AA6BlD,gGA7BO,iCAAe,OA6BP;AA5BjB,yCAAwC;AA6BtC,0FA7BO,qBAAS,OA6BP;AA5BX,+CAA8C;AA6B5C,6FA7BO,2BAAY,OA6BP;AAEd,kBAAe,iCAAe,CAAC"}
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../ts/module.ts"],"names":[],"mappings":";AAAA,mBAAmB;AACnB,uEAAuE;AACvE,MAAM;AACN,+EAA+E;AAC/E,EAAE;AACF,gBAAgB;;;AAEhB,2CAA0C;AA2BxC,2FA3BO,uBAAU,OA2BP;AA1BZ,mCAAkC;AA2BhC,uFA3BO,eAAM,OA2BP;AA1BR,mCAAkC;AA2BhC,uFA3BO,eAAM,OA2BP;AA1BR,+CAA8C;AA2B5C,6FA3BO,2BAAY,OA2BP;AA1Bd,uDAAsD;AA2BpD,iGA3BO,mCAAgB,OA2BP;AA1BlB,+BAAmC;AA2BjC,0FA3BO,gBAAS,OA2BP;AA1BX,0CAA0C;AAC1C,yCAAwC;AA2BtC,0FA3BO,qBAAS,OA2BP;AA1BX,+BAA8B;AA2B5B,qFA3BO,WAAI,OA2BP;AA1BN,2CAA0C;AA4BxC,2FA5BO,uBAAU,OA4BP;AA3BZ,+BAA8B;AA4B5B,qFA5BO,WAAI,OA4BP;AA3BN,+CAA8C;AA4B5C,6FA5BO,2BAAY,OA4BP;AA3Bd,qCAAoC;AA4BlC,wFA5BO,iBAAO,OA4BP;AA3BT,qDAAoD;AA4BlD,gGA5BO,iCAAe,OA4BP;AA3BjB,qCAAoC;AA4BlC,wFA5BO,iBAAO,OA4BP;AA3BT,uCAAsC;AA4BpC,yFA5BO,mBAAQ,OA4BP;AA3BV,+CAA8C;AA4B5C,6FA5BO,2BAAY,OA4BP;AA3Bd,mCAAkC;AA4BhC,uFA5BO,eAAM,OA4BP;AA3BR,uCAAsC;AA4BpC,yFA5BO,mBAAQ,OA4BP;AA3BV,mDAAkD;AA4BhD,+FA5BO,+BAAc,OA4BP;AA3BhB,mCAAkC;AA4BhC,uFA5BO,eAAM,OA4BP;AA3BR,2CAA0C;AA4BxC,2FA5BO,uBAAU,OA4BP;AA3BZ,qDAAoD;AA4BlD,gGA5BO,iCAAe,OA4BP;AA3BjB,yCAAwC;AA4BtC,0FA5BO,qBAAS,OA4BP;AA3BX,+CAA8C;AA4B5C,6FA5BO,2BAAY,OA4BP;AAEd,kBAAe,iCAAe,CAAC"}
@@ -11,6 +11,16 @@
11
11
  **/
12
12
  var utils = (globalThis.utils = globalThis.utils || {});
13
13
 
14
+ /**
15
+ * Need to access the dat.gui folders of plotboilerplate? You will find them here.
16
+ *
17
+ * Following keys are currently available:
18
+ * - editor_settings
19
+ * - editor_settings.export (if enableSVGExport=true)
20
+ * - draw_settings
21
+ */
22
+ globalThis.utils.guiFolders = globalThis.utils.guiFolders || {};
23
+
14
24
  /**
15
25
  * Creates a control GUI (a dat.gui instance) for this
16
26
  * plot boilerplate instance.
@@ -255,9 +265,13 @@ globalThis.utils.createGUI = function (pb, props) {
255
265
  fold0.add(dummy, "resetScale").title("Reset the draw scale to (1.,1.).");
256
266
 
257
267
  if (pb.config.enableSVGExport) {
258
- var fold1 = gui.addFolder("Export");
259
- fold1.add(pb.config, "saveFile").name("SVG Image").title("Save as SVG.");
268
+ var foldExport = gui.addFolder("Export");
269
+ foldExport.add(pb.config, "saveFile").name("SVG Image").title("Save as SVG.");
270
+ globalThis.utils.guiFolders["editor_settings.export"] = foldExport;
260
271
  }
261
272
 
273
+ globalThis.utils.guiFolders["editor_settings"] = fold0;
274
+ globalThis.utils.guiFolders["draw_settings"] = fold01;
275
+
262
276
  return gui;
263
277
  }; // END creategui
@@ -86,6 +86,11 @@ export declare class Girih {
86
86
  * @return {void}
87
87
  */
88
88
  removeTileAt(index: number): void;
89
+ /**
90
+ *
91
+ * @param tiles
92
+ */
93
+ replaceTiles(tiles: GirihTile): void;
89
94
  /**
90
95
  * Find that tile (index) which contains the given position. First match will be returned.
91
96
  *
@@ -44,7 +44,6 @@ var Girih = /** @class */ (function () {
44
44
  this.tiles = [];
45
45
  this.initTemplates(edgeLength);
46
46
  }
47
- ;
48
47
  /**
49
48
  * Initialize the TILE_TEMPLATES array.
50
49
  *
@@ -72,7 +71,6 @@ var Girih = /** @class */ (function () {
72
71
  this.TILE_TEMPLATES.push(decagon.transformTilePositionToAdjacency(5, bowtie));
73
72
  this.TILE_TEMPLATES.push(pentagon.transformTilePositionToAdjacency(4, rhombus));
74
73
  };
75
- ;
76
74
  /**
77
75
  * Add a new tile to this Girih pattern.
78
76
  *
@@ -85,7 +83,6 @@ var Girih = /** @class */ (function () {
85
83
  Girih.prototype.addTile = function (tile) {
86
84
  this.tiles.push(tile);
87
85
  };
88
- ;
89
86
  /**
90
87
  * Remove the tile at given array position. The index must be inside valid bounds.
91
88
  *
@@ -98,7 +95,16 @@ var Girih = /** @class */ (function () {
98
95
  Girih.prototype.removeTileAt = function (index) {
99
96
  this.tiles.splice(index, 1);
100
97
  };
101
- ;
98
+ /**
99
+ *
100
+ * @param tiles
101
+ */
102
+ Girih.prototype.replaceTiles = function (tiles) {
103
+ this.tiles.splice(0, this.tiles.length);
104
+ for (var i in tiles) {
105
+ this.addTile(tiles[i]);
106
+ }
107
+ };
102
108
  /**
103
109
  * Find that tile (index) which contains the given position. First match will be returned.
104
110
  *
@@ -115,7 +121,6 @@ var Girih = /** @class */ (function () {
115
121
  }
116
122
  return -1;
117
123
  };
118
- ;
119
124
  /**
120
125
  * Turn the tile the mouse is hovering over.
121
126
  * The turnCount is ab abstract number: -1 for one turn left, +1 for one turn right.
@@ -130,12 +135,12 @@ var Girih = /** @class */ (function () {
130
135
  * @return {void}
131
136
  */
132
137
  Girih.prototype.turnTile = function (tileIndex, turnCount) {
133
- if (tileIndex == -1) // TODO: still required?
138
+ if (tileIndex == -1)
139
+ // TODO: still required?
134
140
  return;
135
141
  var tile = this.tiles[tileIndex];
136
- tile.rotate(turnCount * Math.PI * 2 / tile.symmetry);
142
+ tile.rotate((turnCount * Math.PI * 2) / tile.symmetry);
137
143
  };
138
- ;
139
144
  /**
140
145
  * Move that tile the mouse is hovering over.
141
146
  * The move amounts are abstract numbers, 1 indicating one unit along each axis.
@@ -149,12 +154,12 @@ var Girih = /** @class */ (function () {
149
154
  * @return {void}
150
155
  */
151
156
  Girih.prototype.moveTile = function (tileIndex, moveXAmount, moveYAmount) {
152
- if (tileIndex == -1) // TODO: still required?
157
+ if (tileIndex == -1)
158
+ // TODO: still required?
153
159
  return;
154
160
  var tile = this.tiles[tileIndex];
155
161
  tile.move({ x: moveXAmount * 10, y: moveYAmount * 10 });
156
162
  };
157
- ;
158
163
  /**
159
164
  * Find all possible adjadent tiles and their locations (type, rotation and offset). The
160
165
  * function will return an array of all possible tiles matching at the given tile and edge.
@@ -168,7 +173,8 @@ var Girih = /** @class */ (function () {
168
173
  */
169
174
  Girih.prototype.findPossibleAdjacentTiles = function (tileIndex, edgeIndex) {
170
175
  var adjTiles = [];
171
- if (tileIndex == -1 || edgeIndex == -1) // TODO: still required?
176
+ if (tileIndex == -1 || edgeIndex == -1)
177
+ // TODO: still required?
172
178
  return [];
173
179
  var template = null;
174
180
  for (var i in this.TILE_TEMPLATES) {
@@ -183,9 +189,7 @@ var Girih = /** @class */ (function () {
183
189
  // previewTilePointer = Math.min( adjTiles.length-1, previewTiilePointer );
184
190
  return adjTiles;
185
191
  };
186
- ;
187
192
  return Girih;
188
- }());
193
+ }()); // END class Girih
189
194
  exports.Girih = Girih;
190
- ; // END class Girih
191
195
  //# sourceMappingURL=Girih.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Girih.js","sourceRoot":"","sources":["../../../ts/utils/datastructures/Girih.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Girih.js","sourceRoot":"","sources":["../../../ts/utils/datastructures/Girih.ts"],"names":[],"mappings":"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"}