plotboilerplate 1.12.10 → 1.16.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 (213) hide show
  1. package/README.md +5 -1
  2. package/changelog.md +50 -0
  3. package/dist/index.esm.js +999 -510
  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 +1013 -509
  10. package/dist/plotboilerplate.min.js +1 -1
  11. package/package.json +1 -1
  12. package/src/cjs/BezierPath.d.ts +45 -2
  13. package/src/cjs/BezierPath.js +114 -18
  14. package/src/cjs/BezierPath.js.map +1 -1
  15. package/src/cjs/Circle.d.ts +25 -10
  16. package/src/cjs/Circle.js +38 -33
  17. package/src/cjs/Circle.js.map +1 -1
  18. package/src/cjs/CircleSector.d.ts +27 -13
  19. package/src/cjs/CircleSector.js +38 -23
  20. package/src/cjs/CircleSector.js.map +1 -1
  21. package/src/cjs/CubicBezierCurve.d.ts +17 -1
  22. package/src/cjs/CubicBezierCurve.js +78 -79
  23. package/src/cjs/CubicBezierCurve.js.map +1 -1
  24. package/src/cjs/KeyHandler.d.ts +10 -3
  25. package/src/cjs/KeyHandler.js +28 -23
  26. package/src/cjs/KeyHandler.js.map +1 -1
  27. package/src/cjs/Line.d.ts +2 -1
  28. package/src/cjs/Line.js +19 -18
  29. package/src/cjs/Line.js.map +1 -1
  30. package/src/cjs/MouseHandler.js +43 -53
  31. package/src/cjs/MouseHandler.js.map +1 -1
  32. package/src/cjs/PBImage.d.ts +16 -1
  33. package/src/cjs/PBImage.js +13 -3
  34. package/src/cjs/PBImage.js.map +1 -1
  35. package/src/cjs/PBText.d.ts +130 -0
  36. package/src/cjs/PBText.js +76 -0
  37. package/src/cjs/PBText.js.map +1 -0
  38. package/src/cjs/PlotBoilerplate.d.ts +2 -1
  39. package/src/cjs/PlotBoilerplate.js +44 -16
  40. package/src/cjs/PlotBoilerplate.js.map +1 -1
  41. package/src/cjs/Polygon.d.ts +37 -1
  42. package/src/cjs/Polygon.js +131 -54
  43. package/src/cjs/Polygon.js.map +1 -1
  44. package/src/cjs/Triangle.d.ts +16 -1
  45. package/src/cjs/Triangle.js +50 -54
  46. package/src/cjs/Triangle.js.map +1 -1
  47. package/src/cjs/VEllipse.d.ts +16 -1
  48. package/src/cjs/VEllipse.js +25 -12
  49. package/src/cjs/VEllipse.js.map +1 -1
  50. package/src/cjs/VEllipseSector.d.ts +15 -1
  51. package/src/cjs/VEllipseSector.js +11 -1
  52. package/src/cjs/VEllipseSector.js.map +1 -1
  53. package/src/cjs/Vector.d.ts +3 -1
  54. package/src/cjs/Vector.js +32 -36
  55. package/src/cjs/Vector.js.map +1 -1
  56. package/src/cjs/VertTuple.d.ts +15 -1
  57. package/src/cjs/VertTuple.js +14 -19
  58. package/src/cjs/VertTuple.js.map +1 -1
  59. package/src/cjs/Vertex.d.ts +66 -4
  60. package/src/cjs/Vertex.js +99 -17
  61. package/src/cjs/Vertex.js.map +1 -1
  62. package/src/cjs/VertexListeners.d.ts +12 -8
  63. package/src/cjs/VertexListeners.js +18 -25
  64. package/src/cjs/VertexListeners.js.map +1 -1
  65. package/src/cjs/draw.d.ts +30 -2
  66. package/src/cjs/draw.js +51 -6
  67. package/src/cjs/draw.js.map +1 -1
  68. package/src/cjs/drawgl.d.ts +29 -2
  69. package/src/cjs/drawgl.js +21 -4
  70. package/src/cjs/drawgl.js.map +1 -1
  71. package/src/cjs/drawutilssvg.d.ts +25 -7
  72. package/src/cjs/drawutilssvg.js +62 -14
  73. package/src/cjs/drawutilssvg.js.map +1 -1
  74. package/src/cjs/entry.js +1 -0
  75. package/src/cjs/index.d.ts +1 -0
  76. package/src/cjs/index.js +1 -0
  77. package/src/cjs/index.js.map +1 -1
  78. package/src/cjs/interfaces/DrawLib.d.ts +27 -6
  79. package/src/cjs/interfaces/DrawLib.js +3 -0
  80. package/src/cjs/interfaces/DrawLib.js.map +1 -1
  81. package/src/cjs/interfaces/core.d.ts +9 -1
  82. package/src/cjs/interfaces/core.js +1 -0
  83. package/src/cjs/interfaces/core.js.map +1 -1
  84. package/src/cjs/utils/creategui.js +1 -1
  85. package/src/cjs/utils/findInVertexArray.d.ts +19 -0
  86. package/src/cjs/utils/findInVertexArray.js +29 -0
  87. package/src/cjs/utils/findInVertexArray.js.map +1 -0
  88. package/src/cjs/utils/helpers/BezierPathInteractionHelper.d.ts +15 -0
  89. package/src/cjs/utils/helpers/BezierPathInteractionHelper.js +55 -28
  90. package/src/cjs/utils/helpers/BezierPathInteractionHelper.js.map +1 -1
  91. package/src/cjs/utils/io/DndFileHandler.d.ts +63 -0
  92. package/src/cjs/utils/io/DndFileHandler.js +112 -0
  93. package/src/cjs/utils/io/DndFileHandler.js.map +1 -0
  94. package/src/cjs/utils/io/FileDrop.d.ts +98 -0
  95. package/src/cjs/utils/io/FileDrop.js +142 -0
  96. package/src/cjs/utils/io/FileDrop.js.map +1 -0
  97. package/src/esm/BezierPath.d.ts +45 -2
  98. package/src/esm/BezierPath.js +114 -18
  99. package/src/esm/BezierPath.js.map +1 -1
  100. package/src/esm/Circle.d.ts +25 -10
  101. package/src/esm/Circle.js +38 -33
  102. package/src/esm/Circle.js.map +1 -1
  103. package/src/esm/CircleSector.d.ts +27 -13
  104. package/src/esm/CircleSector.js +38 -23
  105. package/src/esm/CircleSector.js.map +1 -1
  106. package/src/esm/CubicBezierCurve.d.ts +17 -1
  107. package/src/esm/CubicBezierCurve.js +78 -79
  108. package/src/esm/CubicBezierCurve.js.map +1 -1
  109. package/src/esm/KeyHandler.d.ts +10 -3
  110. package/src/esm/KeyHandler.js +28 -23
  111. package/src/esm/KeyHandler.js.map +1 -1
  112. package/src/esm/Line.d.ts +2 -1
  113. package/src/esm/Line.js +19 -18
  114. package/src/esm/Line.js.map +1 -1
  115. package/src/esm/MouseHandler.js +43 -53
  116. package/src/esm/MouseHandler.js.map +1 -1
  117. package/src/esm/PBImage.d.ts +16 -1
  118. package/src/esm/PBImage.js +13 -3
  119. package/src/esm/PBImage.js.map +1 -1
  120. package/src/esm/PBText.d.ts +130 -0
  121. package/src/esm/PBText.js +71 -0
  122. package/src/esm/PBText.js.map +1 -0
  123. package/src/esm/PlotBoilerplate.d.ts +2 -1
  124. package/src/esm/PlotBoilerplate.js +44 -16
  125. package/src/esm/PlotBoilerplate.js.map +1 -1
  126. package/src/esm/Polygon.d.ts +37 -1
  127. package/src/esm/Polygon.js +131 -54
  128. package/src/esm/Polygon.js.map +1 -1
  129. package/src/esm/Triangle.d.ts +16 -1
  130. package/src/esm/Triangle.js +50 -54
  131. package/src/esm/Triangle.js.map +1 -1
  132. package/src/esm/VEllipse.d.ts +16 -1
  133. package/src/esm/VEllipse.js +25 -12
  134. package/src/esm/VEllipse.js.map +1 -1
  135. package/src/esm/VEllipseSector.d.ts +15 -1
  136. package/src/esm/VEllipseSector.js +11 -1
  137. package/src/esm/VEllipseSector.js.map +1 -1
  138. package/src/esm/Vector.d.ts +3 -1
  139. package/src/esm/Vector.js +32 -36
  140. package/src/esm/Vector.js.map +1 -1
  141. package/src/esm/VertTuple.d.ts +15 -1
  142. package/src/esm/VertTuple.js +14 -19
  143. package/src/esm/VertTuple.js.map +1 -1
  144. package/src/esm/Vertex.d.ts +66 -4
  145. package/src/esm/Vertex.js +99 -17
  146. package/src/esm/Vertex.js.map +1 -1
  147. package/src/esm/VertexListeners.d.ts +12 -8
  148. package/src/esm/VertexListeners.js +18 -25
  149. package/src/esm/VertexListeners.js.map +1 -1
  150. package/src/esm/draw.d.ts +30 -2
  151. package/src/esm/draw.js +51 -6
  152. package/src/esm/draw.js.map +1 -1
  153. package/src/esm/drawgl.d.ts +29 -2
  154. package/src/esm/drawgl.js +21 -4
  155. package/src/esm/drawgl.js.map +1 -1
  156. package/src/esm/drawutilssvg.d.ts +25 -7
  157. package/src/esm/drawutilssvg.js +62 -14
  158. package/src/esm/drawutilssvg.js.map +1 -1
  159. package/src/esm/entry.js +1 -0
  160. package/src/esm/index.d.ts +1 -0
  161. package/src/esm/index.js +1 -0
  162. package/src/esm/index.js.map +1 -1
  163. package/src/esm/interfaces/DrawLib.d.ts +27 -6
  164. package/src/esm/interfaces/DrawLib.js +3 -0
  165. package/src/esm/interfaces/DrawLib.js.map +1 -1
  166. package/src/esm/interfaces/core.d.ts +9 -1
  167. package/src/esm/interfaces/core.js +1 -0
  168. package/src/esm/interfaces/core.js.map +1 -1
  169. package/src/esm/utils/findInVertexArray.d.ts +19 -0
  170. package/src/esm/utils/findInVertexArray.js +25 -0
  171. package/src/esm/utils/findInVertexArray.js.map +1 -0
  172. package/src/esm/utils/helpers/BezierPathInteractionHelper.d.ts +15 -0
  173. package/src/esm/utils/helpers/BezierPathInteractionHelper.js +54 -28
  174. package/src/esm/utils/helpers/BezierPathInteractionHelper.js.map +1 -1
  175. package/src/esm/utils/io/DndFileHandler.d.ts +63 -0
  176. package/src/esm/utils/io/DndFileHandler.js +106 -0
  177. package/src/esm/utils/io/DndFileHandler.js.map +1 -0
  178. package/src/esm/utils/io/FileDrop.d.ts +98 -0
  179. package/src/esm/utils/io/FileDrop.js +136 -0
  180. package/src/esm/utils/io/FileDrop.js.map +1 -0
  181. package/src/ts/BezierPath.ts +133 -16
  182. package/src/ts/Circle.ts +213 -200
  183. package/src/ts/CircleSector.ts +171 -141
  184. package/src/ts/CubicBezierCurve.ts +777 -810
  185. package/src/ts/KeyHandler.ts +221 -212
  186. package/src/ts/Line.ts +77 -80
  187. package/src/ts/MouseHandler.ts +356 -368
  188. package/src/ts/PBImage.ts +81 -68
  189. package/src/ts/PBText.ts +166 -0
  190. package/src/ts/PlotBoilerplate.ts +48 -20
  191. package/src/ts/Polygon.ts +519 -451
  192. package/src/ts/Triangle.ts +484 -489
  193. package/src/ts/VEllipse.ts +36 -11
  194. package/src/ts/VEllipseSector.ts +20 -1
  195. package/src/ts/Vector.ts +164 -160
  196. package/src/ts/VertTuple.ts +333 -338
  197. package/src/ts/Vertex.ts +117 -16
  198. package/src/ts/VertexListeners.ts +248 -266
  199. package/src/ts/draw.ts +71 -8
  200. package/src/ts/drawgl.ts +48 -8
  201. package/src/ts/drawutilssvg.ts +94 -17
  202. package/src/ts/index.ts +1 -0
  203. package/src/ts/interfaces/DrawLib.ts +30 -4
  204. package/src/ts/interfaces/core.ts +9 -0
  205. package/src/ts/utils/findInVertexArray.ts +28 -0
  206. package/src/ts/utils/helpers/BezierPathInteractionHelper.ts +61 -30
  207. package/src/ts/utils/io/FileDrop.ts +178 -0
  208. package/dist/plotboilerplate.browser.min.js.LICENSE.txt +0 -8
  209. package/src/ts/utils/algorithms/clearPolygonDuplicateVertices.ts~ +0 -5
  210. package/src/ts/utils/algorithms/findPolygonSelfIntersections.ts~ +0 -45
  211. package/src/ts/utils/algorithms/sh-tmp.ts~ +0 -59
  212. package/src/ts/utils/algorithms/splitPolygonToNonIntersecting.ts~ +0 -113
  213. package/src/ts/utils/algorithms/sutherlandHodgman.ts~ +0 -88
package/src/esm/Circle.js CHANGED
@@ -7,7 +7,9 @@
7
7
  * @modified 2020-09-07 Changed the vertAt function by switching sin and cos! The old version did not return the correct vertex (by angle) accoring to the assumed circle math.
8
8
  * @modified 2020-10-16 Added the containsCircle(...) function.
9
9
  * @modified 2021-01-20 Added UID.
10
- * @version 1.2.0
10
+ * @modified 2022-02-02 Added the `destroy` method.
11
+ * @modified 2022-02-02 Cleared the `toSVGString` function (deprecated). Use `drawutilssvg` instead.
12
+ * @version 1.3.0
11
13
  **/
12
14
  import { Line } from "./Line";
13
15
  import { UIDGenerator } from "./UIDGenerator";
@@ -42,7 +44,6 @@ export class Circle {
42
44
  this.center = center;
43
45
  this.radius = radius;
44
46
  }
45
- ;
46
47
  /**
47
48
  * Check if the given circle is fully contained inside this circle.
48
49
  *
@@ -55,7 +56,6 @@ export class Circle {
55
56
  containsCircle(circle) {
56
57
  return this.center.distance(circle.center) + circle.radius < this.radius;
57
58
  }
58
- ;
59
59
  /**
60
60
  * Calculate the distance from this circle to the given line.
61
61
  *
@@ -74,7 +74,6 @@ export class Circle {
74
74
  const closestPointOnLine = line.getClosestPoint(this.center);
75
75
  return closestPointOnLine.distance(this.center) - this.radius;
76
76
  }
77
- ;
78
77
  /**
79
78
  * Get the vertex on the this circle for the given angle.
80
79
  *
@@ -88,7 +87,6 @@ export class Circle {
88
87
  // Find the point on the circle respective the angle. Then move relative to center.
89
88
  return Circle.circleUtils.vertAt(angle, this.radius).add(this.center);
90
89
  }
91
- ;
92
90
  /**
93
91
  * Get a tangent line of this circle for a given angle.
94
92
  *
@@ -105,7 +103,6 @@ export class Circle {
105
103
  // Construct the perpendicular of the line in point a. Then move relative to center.
106
104
  return new Vector(pointA, new Vertex(0, 0)).add(this.center).perp();
107
105
  }
108
- ;
109
106
  /**
110
107
  * Calculate the intersection points (if exists) with the given circle.
111
108
  *
@@ -145,48 +142,56 @@ export class Circle {
145
142
  // x4 = P2.x - h*(P1.y - P0.y)/d;
146
143
  // y4 = P2.y + h*(P1.x - P0.x)/d;
147
144
  // return pair<Point, Point>(Point(x3, y3), Point(x4, y4));
148
- // }
145
+ // }
149
146
  var p0 = this.center;
150
147
  var p1 = circle.center;
151
148
  var d = p0.distance(p1);
152
149
  var a = (this.radius * this.radius - circle.radius * circle.radius + d * d) / (2 * d);
153
150
  var h = Math.sqrt(this.radius * this.radius - a * a);
154
151
  var p2 = p1.clone().scale(a / d, p0);
155
- var x3 = p2.x + h * (p1.y - p0.y) / d;
156
- var y3 = p2.y - h * (p1.x - p0.x) / d;
157
- var x4 = p2.x - h * (p1.y - p0.y) / d;
158
- var y4 = p2.y + h * (p1.x - p0.x) / d;
152
+ var x3 = p2.x + (h * (p1.y - p0.y)) / d;
153
+ var y3 = p2.y - (h * (p1.x - p0.x)) / d;
154
+ var x4 = p2.x - (h * (p1.y - p0.y)) / d;
155
+ var y4 = p2.y + (h * (p1.x - p0.x)) / d;
159
156
  return new Line(new Vertex(x3, y3), new Vertex(x4, y4));
160
157
  }
161
- ;
162
158
  /**
163
- * Create an SVG representation of this circle.
164
- *
165
- * @deprecated DEPRECATION Please use the drawutilssvg library and an XMLSerializer instead.
166
- * @method toSVGString
167
- * @param {object=} options - An optional set of options, like 'className'.
168
- * @return {string} A string representing the SVG code for this vertex.
169
- * @instance
170
- * @memberof Circle
171
- */
159
+ * Create an SVG representation of this circle.
160
+ *
161
+ * @deprecated DEPRECATION Please use the drawutilssvg library and an XMLSerializer instead.
162
+ * @method toSVGString
163
+ * @param {object=} options - An optional set of options, like 'className'.
164
+ * @return {string} A string representing the SVG code for this vertex.
165
+ * @instance
166
+ * @memberof Circle
167
+ */
172
168
  toSVGString(options) {
173
- options = options || {};
174
- var buffer = [];
175
- buffer.push('<circle');
176
- if (options.className)
177
- buffer.push(' class="' + options.className + '"');
178
- buffer.push(' cx="' + this.center.x + '"');
179
- buffer.push(' cy="' + this.center.y + '"');
180
- buffer.push(' r="' + this.radius + '"');
181
- buffer.push(' />');
182
- return buffer.join('');
169
+ // options = options || {};
170
+ // var buffer: Array<string> = [];
171
+ // buffer.push("<circle");
172
+ // if (options.className) buffer.push(' class="' + options.className + '"');
173
+ // buffer.push(' cx="' + this.center.x + '"');
174
+ // buffer.push(' cy="' + this.center.y + '"');
175
+ // buffer.push(' r="' + this.radius + '"');
176
+ // buffer.push(" />");
177
+ // return buffer.join("");
178
+ console.warn("[Deprecation] Warning: the Circle.toSVGString method is deprecated and does not return and valid SVG data any more. Please use `drawutilssvg` instead.");
179
+ return "";
180
+ }
181
+ /**
182
+ * This function should invalidate any installed listeners and invalidate this object.
183
+ * After calling this function the object might not hold valid data any more and
184
+ * should not be used.
185
+ */
186
+ destroy() {
187
+ this.center.destroy();
188
+ this.isDestroyed = true;
183
189
  }
184
- ;
185
190
  } // END class
186
191
  Circle.circleUtils = {
187
192
  vertAt: (angle, radius) => {
188
193
  /* return new Vertex( Math.sin(angle) * radius,
189
- Math.cos(angle) * radius ); */
194
+ Math.cos(angle) * radius ); */
190
195
  return new Vertex(Math.cos(angle) * radius, Math.sin(angle) * radius);
191
196
  }
192
197
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Circle.js","sourceRoot":"","sources":["../ts/Circle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Circle.js","sourceRoot":"","sources":["../ts/Circle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;IAYI;AAEJ,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC;;;;;;;;;;IAUI;AACJ,MAAM,OAAO,MAAM;IAsCjB;;;;;;;OAOG;IACH,YAAY,MAAc,EAAE,MAAc;QA7C1C;;YAEI;QACK,cAAS,GAAW,QAAQ,CAAC;QA2CpC,IAAI,CAAC,GAAG,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;;;;;;;OAQG;IACH,cAAc,CAAC,MAAc;QAC3B,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3E,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,YAAY,CAAC,IAAoB;QAC/B,MAAM,kBAAkB,GAAW,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrE,OAAO,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;IAChE,CAAC;IAED;;;;;;;;QAQI;IACJ,MAAM,CAAC,KAAa;QAClB,mFAAmF;QACnF,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACxE,CAAC;IAED;;;;;;;;;;QAUI;IACJ,SAAS,CAAC,KAAa;QACrB,MAAM,MAAM,GAAW,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACrE,oFAAoF;QACpF,OAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAY,CAAC,IAAI,EAAY,CAAC;IAC5F,CAAC;IAED;;;;;;;;QAQI;IACJ,kBAAkB,CAAC,MAAc;QAC/B,mCAAmC;QACnC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE;YACrE,OAAO,IAAI,CAAC;SACb;QACD,wCAAwC;QACxC,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE;YAC/E,OAAO,IAAI,CAAC;SACb;QACD,iDAAiD;QACjD,mFAAmF;QACnF,wDAAwD;QACxD,kDAAkD;QAClD,EAAE;QACF,2CAA2C;QAC3C,EAAE;QACF,+CAA+C;QAC/C,qBAAqB;QACrB,yBAAyB;QACzB,oBAAoB;QACpB,0BAA0B;QAC1B,sCAAsC;QACtC,0BAA0B;QAC1B,+CAA+C;QAC/C,2BAA2B;QAC3B,oCAAoC;QACpC,oCAAoC;QACpC,oCAAoC;QACpC,oCAAoC;QACpC,8DAA8D;QAC9D,IAAI;QACJ,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;QACrB,IAAI,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC;QACvB,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACxB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACtF,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACrD,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;QACrC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACxC,OAAO,IAAI,IAAI,CAAC,IAAI,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED;;;;;;;;;OASG;IACH,WAAW,CAAC,OAA+B;QACzC,2BAA2B;QAC3B,kCAAkC;QAClC,0BAA0B;QAC1B,4EAA4E;QAC5E,8CAA8C;QAC9C,8CAA8C;QAC9C,2CAA2C;QAC3C,sBAAsB;QACtB,0BAA0B;QAC1B,OAAO,CAAC,IAAI,CACV,wJAAwJ,CACzJ,CAAC;QACF,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;;;OAIG;IACH,OAAO;QACL,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACtB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;EASD,YAAY;AAPL,kBAAW,GAAG;IACnB,MAAM,EAAE,CAAC,KAAa,EAAE,MAAc,EAAE,EAAE;QACxC;mDACkC;QAClC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,CAAC;IACxE,CAAC;CACF,CAAC"}
@@ -37,10 +37,10 @@ export declare class CircleSector implements SVGSerializable {
37
37
  */
38
38
  circle: Circle;
39
39
  /**
40
- * @member {number}
41
- * @memberof CircleSector
42
- * @instance
43
- */
40
+ * @member {number}
41
+ * @memberof CircleSector
42
+ * @instance
43
+ */
44
44
  startAngle: number;
45
45
  /**
46
46
  * @member {number}
@@ -48,6 +48,13 @@ export declare class CircleSector implements SVGSerializable {
48
48
  * @instance
49
49
  */
50
50
  endAngle: number;
51
+ /**
52
+ * @member isDestroyed
53
+ * @memberof CircleSector
54
+ * @type {boolean}
55
+ * @instance
56
+ */
57
+ isDestroyed: boolean;
51
58
  /**
52
59
  * Create a new circle sector with given circle, start- and end-angle.
53
60
  *
@@ -59,17 +66,24 @@ export declare class CircleSector implements SVGSerializable {
59
66
  */
60
67
  constructor(circle: Circle, startAngle: number, endAngle: number);
61
68
  /**
62
- * Create an SVG representation of this circle.
63
- *
64
- * @method toSVGString
65
- * @param {object=} options - An optional set of options, like 'className'.
66
- * @return {string} A string representing the SVG code for this vertex.
67
- * @instance
68
- * @memberof Circle
69
- */
69
+ * Create an SVG representation of this circle.
70
+ *
71
+ * @deprecated DEPRECATION Please use the drawutilssvg library and an XMLSerializer instead.
72
+ * @method toSVGString
73
+ * @param {object=} options - An optional set of options, like 'className'.
74
+ * @return {string} A string representing the SVG code for this vertex.
75
+ * @instance
76
+ * @memberof Circle
77
+ */
70
78
  toSVGString(options: {
71
79
  className?: string;
72
80
  }): string;
81
+ /**
82
+ * This function should invalidate any installed listeners and invalidate this object.
83
+ * After calling this function the object might not hold valid data any more and
84
+ * should not be used.
85
+ */
86
+ destroy(): void;
73
87
  static circleSectorUtils: {
74
88
  /**
75
89
  * Helper function to convert polar circle coordinates to cartesian coordinates.
@@ -77,7 +91,7 @@ export declare class CircleSector implements SVGSerializable {
77
91
  * TODO: generalize for ellipses (two radii).
78
92
  *
79
93
  * @param {number} angle - The angle in radians.
80
- */
94
+ */
81
95
  polarToCartesian: (centerX: number, centerY: number, radius: number, angle: number) => XYCoords;
82
96
  /**
83
97
  * Helper function to convert a circle section as SVG arc params (for the `d` attribute).
@@ -35,27 +35,42 @@ export class CircleSector {
35
35
  this.startAngle = startAngle;
36
36
  this.endAngle = endAngle;
37
37
  }
38
- ;
39
38
  /**
40
- * Create an SVG representation of this circle.
41
- *
42
- * @method toSVGString
43
- * @param {object=} options - An optional set of options, like 'className'.
44
- * @return {string} A string representing the SVG code for this vertex.
45
- * @instance
46
- * @memberof Circle
47
- */
39
+ * Create an SVG representation of this circle.
40
+ *
41
+ * @deprecated DEPRECATION Please use the drawutilssvg library and an XMLSerializer instead.
42
+ * @method toSVGString
43
+ * @param {object=} options - An optional set of options, like 'className'.
44
+ * @return {string} A string representing the SVG code for this vertex.
45
+ * @instance
46
+ * @memberof Circle
47
+ */
48
48
  toSVGString(options) {
49
- options = options || {};
50
- var buffer = [];
51
- buffer.push('<path ');
52
- if (options.className)
53
- buffer.push(' class="' + options.className + '"');
54
- const data = CircleSector.circleSectorUtils.describeSVGArc(this.circle.center.x, this.circle.center.y, this.circle.radius, this.startAngle, this.endAngle);
55
- buffer.push(' d="' + data.join(" ") + '" />');
56
- return buffer.join('');
49
+ // options = options || {};
50
+ // var buffer: Array<string> = [];
51
+ // buffer.push("<path ");
52
+ // if (options.className) buffer.push(' class="' + options.className + '"');
53
+ // const data: SVGPathParams = CircleSector.circleSectorUtils.describeSVGArc(
54
+ // this.circle.center.x,
55
+ // this.circle.center.y,
56
+ // this.circle.radius,
57
+ // this.startAngle,
58
+ // this.endAngle
59
+ // );
60
+ // buffer.push(' d="' + data.join(" ") + '" />');
61
+ // return buffer.join("");
62
+ console.warn("[Deprecation] Warning: the CircleSector.toSVGString method is deprecated and does not return and valid SVG data any more. Please use `drawutilssvg` instead.");
63
+ return "";
64
+ }
65
+ /**
66
+ * This function should invalidate any installed listeners and invalidate this object.
67
+ * After calling this function the object might not hold valid data any more and
68
+ * should not be used.
69
+ */
70
+ destroy() {
71
+ this.circle.destroy();
72
+ this.isDestroyed = true;
57
73
  }
58
- ;
59
74
  } // END class
60
75
  CircleSector.circleSectorUtils = {
61
76
  /**
@@ -64,11 +79,11 @@ CircleSector.circleSectorUtils = {
64
79
  * TODO: generalize for ellipses (two radii).
65
80
  *
66
81
  * @param {number} angle - The angle in radians.
67
- */
82
+ */
68
83
  polarToCartesian: (centerX, centerY, radius, angle) => {
69
84
  return {
70
- x: centerX + (radius * Math.cos(angle)),
71
- y: centerY + (radius * Math.sin(angle))
85
+ x: centerX + radius * Math.cos(angle),
86
+ y: centerY + radius * Math.sin(angle)
72
87
  };
73
88
  },
74
89
  /**
@@ -81,7 +96,7 @@ CircleSector.circleSectorUtils = {
81
96
  * @return [ 'A', radiusx, radiusy, rotation=0, largeArcFlag=1|0, sweepFlag=0, endx, endy ]
82
97
  */
83
98
  describeSVGArc: (x, y, radius, startAngle, endAngle, options) => {
84
- if (typeof options === 'undefined')
99
+ if (typeof options === "undefined")
85
100
  options = { moveToStart: true };
86
101
  const end = CircleSector.circleSectorUtils.polarToCartesian(x, y, radius, endAngle);
87
102
  const start = CircleSector.circleSectorUtils.polarToCartesian(x, y, radius, startAngle);
@@ -106,7 +121,7 @@ CircleSector.circleSectorUtils = {
106
121
  }
107
122
  const pathData = [];
108
123
  if (options.moveToStart) {
109
- pathData.push('M', start.x, start.y);
124
+ pathData.push("M", start.x, start.y);
110
125
  }
111
126
  pathData.push("A", radius, radius, 0, largeArcFlag, sweepFlag, end.x, end.y);
112
127
  return pathData;
@@ -1 +1 @@
1
- {"version":3,"file":"CircleSector.js","sourceRoot":"","sources":["../ts/CircleSector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CircleSector.js","sourceRoot":"","sources":["../ts/CircleSector.ts"],"names":[],"mappings":"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"}
@@ -18,7 +18,9 @@
18
18
  * @modified 2020-07-14 Changed the moveCurvePoint(...,Vertex) to moveCurvePoint(...,XYCoords), which is more generic.
19
19
  * @modified 2020-07-24 Added the getClosestT function and the helper function locateIntervalByDistance(...).
20
20
  * @modified 2021-01-20 Added UID.
21
- * @version 2.5.0
21
+ * @modified 2022-02-02 Added the `destroy` method.
22
+ * @modified 2022-02-02 Cleared the `toSVGPathData` function (deprecated). Use `drawutilssvg` instead.
23
+ * @version 2.6.0
22
24
  *
23
25
  * @file CubicBezierCurve
24
26
  * @public
@@ -110,6 +112,13 @@ export declare class CubicBezierCurve {
110
112
  * @instance
111
113
  */
112
114
  arcLength: number;
115
+ /**
116
+ * @member isDestroyed
117
+ * @memberof CubicBezierCurve
118
+ * @type {boolean}
119
+ * @instance
120
+ */
121
+ isDestroyed: boolean;
113
122
  /**
114
123
  * The constructor.
115
124
  *
@@ -393,6 +402,12 @@ export declare class CubicBezierCurve {
393
402
  * @return {boolean}
394
403
  **/
395
404
  equals(curve: CubicBezierCurve | undefined): boolean;
405
+ /**
406
+ * This function should invalidate any installed listeners and invalidate this object.
407
+ * After calling this function the object might not hold valid data any more and
408
+ * should not be used.
409
+ */
410
+ destroy(): void;
396
411
  /**
397
412
  * Quick check for class instance.
398
413
  * Is there a better way?
@@ -412,6 +427,7 @@ export declare class CubicBezierCurve {
412
427
  * or in other words<br>
413
428
  * <pre>'M startoint.x startPoint.y C startControlPoint.x startControlPoint.y endControlPoint.x endControlPoint.y endPoint.x endPoint.y'</pre>
414
429
  *
430
+ * @deprecated DEPRECATION Please use the drawutilssvg library and an XMLSerializer instead.
415
431
  * @method toSVGPathData
416
432
  * @instance
417
433
  * @memberof CubicBezierCurve