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.
- package/README.md +5 -1
- package/changelog.md +50 -0
- package/dist/index.esm.js +999 -510
- package/dist/index.esm.js.map +1 -1
- package/dist/index.esm.min.js +1 -1
- package/dist/index.esm.min.js.map +1 -1
- package/dist/plotboilerplate.browser.min.js +1 -1
- package/dist/plotboilerplate.browser.min.js.map +1 -1
- package/dist/plotboilerplate.js +1013 -509
- package/dist/plotboilerplate.min.js +1 -1
- package/package.json +1 -1
- package/src/cjs/BezierPath.d.ts +45 -2
- package/src/cjs/BezierPath.js +114 -18
- package/src/cjs/BezierPath.js.map +1 -1
- package/src/cjs/Circle.d.ts +25 -10
- package/src/cjs/Circle.js +38 -33
- package/src/cjs/Circle.js.map +1 -1
- package/src/cjs/CircleSector.d.ts +27 -13
- package/src/cjs/CircleSector.js +38 -23
- package/src/cjs/CircleSector.js.map +1 -1
- package/src/cjs/CubicBezierCurve.d.ts +17 -1
- package/src/cjs/CubicBezierCurve.js +78 -79
- package/src/cjs/CubicBezierCurve.js.map +1 -1
- package/src/cjs/KeyHandler.d.ts +10 -3
- package/src/cjs/KeyHandler.js +28 -23
- package/src/cjs/KeyHandler.js.map +1 -1
- package/src/cjs/Line.d.ts +2 -1
- package/src/cjs/Line.js +19 -18
- package/src/cjs/Line.js.map +1 -1
- package/src/cjs/MouseHandler.js +43 -53
- package/src/cjs/MouseHandler.js.map +1 -1
- package/src/cjs/PBImage.d.ts +16 -1
- package/src/cjs/PBImage.js +13 -3
- package/src/cjs/PBImage.js.map +1 -1
- package/src/cjs/PBText.d.ts +130 -0
- package/src/cjs/PBText.js +76 -0
- package/src/cjs/PBText.js.map +1 -0
- package/src/cjs/PlotBoilerplate.d.ts +2 -1
- package/src/cjs/PlotBoilerplate.js +44 -16
- package/src/cjs/PlotBoilerplate.js.map +1 -1
- package/src/cjs/Polygon.d.ts +37 -1
- package/src/cjs/Polygon.js +131 -54
- package/src/cjs/Polygon.js.map +1 -1
- package/src/cjs/Triangle.d.ts +16 -1
- package/src/cjs/Triangle.js +50 -54
- package/src/cjs/Triangle.js.map +1 -1
- package/src/cjs/VEllipse.d.ts +16 -1
- package/src/cjs/VEllipse.js +25 -12
- package/src/cjs/VEllipse.js.map +1 -1
- package/src/cjs/VEllipseSector.d.ts +15 -1
- package/src/cjs/VEllipseSector.js +11 -1
- package/src/cjs/VEllipseSector.js.map +1 -1
- package/src/cjs/Vector.d.ts +3 -1
- package/src/cjs/Vector.js +32 -36
- package/src/cjs/Vector.js.map +1 -1
- package/src/cjs/VertTuple.d.ts +15 -1
- package/src/cjs/VertTuple.js +14 -19
- package/src/cjs/VertTuple.js.map +1 -1
- package/src/cjs/Vertex.d.ts +66 -4
- package/src/cjs/Vertex.js +99 -17
- package/src/cjs/Vertex.js.map +1 -1
- package/src/cjs/VertexListeners.d.ts +12 -8
- package/src/cjs/VertexListeners.js +18 -25
- package/src/cjs/VertexListeners.js.map +1 -1
- package/src/cjs/draw.d.ts +30 -2
- package/src/cjs/draw.js +51 -6
- package/src/cjs/draw.js.map +1 -1
- package/src/cjs/drawgl.d.ts +29 -2
- package/src/cjs/drawgl.js +21 -4
- package/src/cjs/drawgl.js.map +1 -1
- package/src/cjs/drawutilssvg.d.ts +25 -7
- package/src/cjs/drawutilssvg.js +62 -14
- package/src/cjs/drawutilssvg.js.map +1 -1
- package/src/cjs/entry.js +1 -0
- package/src/cjs/index.d.ts +1 -0
- package/src/cjs/index.js +1 -0
- package/src/cjs/index.js.map +1 -1
- package/src/cjs/interfaces/DrawLib.d.ts +27 -6
- package/src/cjs/interfaces/DrawLib.js +3 -0
- package/src/cjs/interfaces/DrawLib.js.map +1 -1
- package/src/cjs/interfaces/core.d.ts +9 -1
- package/src/cjs/interfaces/core.js +1 -0
- package/src/cjs/interfaces/core.js.map +1 -1
- package/src/cjs/utils/creategui.js +1 -1
- package/src/cjs/utils/findInVertexArray.d.ts +19 -0
- package/src/cjs/utils/findInVertexArray.js +29 -0
- package/src/cjs/utils/findInVertexArray.js.map +1 -0
- package/src/cjs/utils/helpers/BezierPathInteractionHelper.d.ts +15 -0
- package/src/cjs/utils/helpers/BezierPathInteractionHelper.js +55 -28
- package/src/cjs/utils/helpers/BezierPathInteractionHelper.js.map +1 -1
- package/src/cjs/utils/io/DndFileHandler.d.ts +63 -0
- package/src/cjs/utils/io/DndFileHandler.js +112 -0
- package/src/cjs/utils/io/DndFileHandler.js.map +1 -0
- package/src/cjs/utils/io/FileDrop.d.ts +98 -0
- package/src/cjs/utils/io/FileDrop.js +142 -0
- package/src/cjs/utils/io/FileDrop.js.map +1 -0
- package/src/esm/BezierPath.d.ts +45 -2
- package/src/esm/BezierPath.js +114 -18
- package/src/esm/BezierPath.js.map +1 -1
- package/src/esm/Circle.d.ts +25 -10
- package/src/esm/Circle.js +38 -33
- package/src/esm/Circle.js.map +1 -1
- package/src/esm/CircleSector.d.ts +27 -13
- package/src/esm/CircleSector.js +38 -23
- package/src/esm/CircleSector.js.map +1 -1
- package/src/esm/CubicBezierCurve.d.ts +17 -1
- package/src/esm/CubicBezierCurve.js +78 -79
- package/src/esm/CubicBezierCurve.js.map +1 -1
- package/src/esm/KeyHandler.d.ts +10 -3
- package/src/esm/KeyHandler.js +28 -23
- package/src/esm/KeyHandler.js.map +1 -1
- package/src/esm/Line.d.ts +2 -1
- package/src/esm/Line.js +19 -18
- package/src/esm/Line.js.map +1 -1
- package/src/esm/MouseHandler.js +43 -53
- package/src/esm/MouseHandler.js.map +1 -1
- package/src/esm/PBImage.d.ts +16 -1
- package/src/esm/PBImage.js +13 -3
- package/src/esm/PBImage.js.map +1 -1
- package/src/esm/PBText.d.ts +130 -0
- package/src/esm/PBText.js +71 -0
- package/src/esm/PBText.js.map +1 -0
- package/src/esm/PlotBoilerplate.d.ts +2 -1
- package/src/esm/PlotBoilerplate.js +44 -16
- package/src/esm/PlotBoilerplate.js.map +1 -1
- package/src/esm/Polygon.d.ts +37 -1
- package/src/esm/Polygon.js +131 -54
- package/src/esm/Polygon.js.map +1 -1
- package/src/esm/Triangle.d.ts +16 -1
- package/src/esm/Triangle.js +50 -54
- package/src/esm/Triangle.js.map +1 -1
- package/src/esm/VEllipse.d.ts +16 -1
- package/src/esm/VEllipse.js +25 -12
- package/src/esm/VEllipse.js.map +1 -1
- package/src/esm/VEllipseSector.d.ts +15 -1
- package/src/esm/VEllipseSector.js +11 -1
- package/src/esm/VEllipseSector.js.map +1 -1
- package/src/esm/Vector.d.ts +3 -1
- package/src/esm/Vector.js +32 -36
- package/src/esm/Vector.js.map +1 -1
- package/src/esm/VertTuple.d.ts +15 -1
- package/src/esm/VertTuple.js +14 -19
- package/src/esm/VertTuple.js.map +1 -1
- package/src/esm/Vertex.d.ts +66 -4
- package/src/esm/Vertex.js +99 -17
- package/src/esm/Vertex.js.map +1 -1
- package/src/esm/VertexListeners.d.ts +12 -8
- package/src/esm/VertexListeners.js +18 -25
- package/src/esm/VertexListeners.js.map +1 -1
- package/src/esm/draw.d.ts +30 -2
- package/src/esm/draw.js +51 -6
- package/src/esm/draw.js.map +1 -1
- package/src/esm/drawgl.d.ts +29 -2
- package/src/esm/drawgl.js +21 -4
- package/src/esm/drawgl.js.map +1 -1
- package/src/esm/drawutilssvg.d.ts +25 -7
- package/src/esm/drawutilssvg.js +62 -14
- package/src/esm/drawutilssvg.js.map +1 -1
- package/src/esm/entry.js +1 -0
- package/src/esm/index.d.ts +1 -0
- package/src/esm/index.js +1 -0
- package/src/esm/index.js.map +1 -1
- package/src/esm/interfaces/DrawLib.d.ts +27 -6
- package/src/esm/interfaces/DrawLib.js +3 -0
- package/src/esm/interfaces/DrawLib.js.map +1 -1
- package/src/esm/interfaces/core.d.ts +9 -1
- package/src/esm/interfaces/core.js +1 -0
- package/src/esm/interfaces/core.js.map +1 -1
- package/src/esm/utils/findInVertexArray.d.ts +19 -0
- package/src/esm/utils/findInVertexArray.js +25 -0
- package/src/esm/utils/findInVertexArray.js.map +1 -0
- package/src/esm/utils/helpers/BezierPathInteractionHelper.d.ts +15 -0
- package/src/esm/utils/helpers/BezierPathInteractionHelper.js +54 -28
- package/src/esm/utils/helpers/BezierPathInteractionHelper.js.map +1 -1
- package/src/esm/utils/io/DndFileHandler.d.ts +63 -0
- package/src/esm/utils/io/DndFileHandler.js +106 -0
- package/src/esm/utils/io/DndFileHandler.js.map +1 -0
- package/src/esm/utils/io/FileDrop.d.ts +98 -0
- package/src/esm/utils/io/FileDrop.js +136 -0
- package/src/esm/utils/io/FileDrop.js.map +1 -0
- package/src/ts/BezierPath.ts +133 -16
- package/src/ts/Circle.ts +213 -200
- package/src/ts/CircleSector.ts +171 -141
- package/src/ts/CubicBezierCurve.ts +777 -810
- package/src/ts/KeyHandler.ts +221 -212
- package/src/ts/Line.ts +77 -80
- package/src/ts/MouseHandler.ts +356 -368
- package/src/ts/PBImage.ts +81 -68
- package/src/ts/PBText.ts +166 -0
- package/src/ts/PlotBoilerplate.ts +48 -20
- package/src/ts/Polygon.ts +519 -451
- package/src/ts/Triangle.ts +484 -489
- package/src/ts/VEllipse.ts +36 -11
- package/src/ts/VEllipseSector.ts +20 -1
- package/src/ts/Vector.ts +164 -160
- package/src/ts/VertTuple.ts +333 -338
- package/src/ts/Vertex.ts +117 -16
- package/src/ts/VertexListeners.ts +248 -266
- package/src/ts/draw.ts +71 -8
- package/src/ts/drawgl.ts +48 -8
- package/src/ts/drawutilssvg.ts +94 -17
- package/src/ts/index.ts +1 -0
- package/src/ts/interfaces/DrawLib.ts +30 -4
- package/src/ts/interfaces/core.ts +9 -0
- package/src/ts/utils/findInVertexArray.ts +28 -0
- package/src/ts/utils/helpers/BezierPathInteractionHelper.ts +61 -30
- package/src/ts/utils/io/FileDrop.ts +178 -0
- package/dist/plotboilerplate.browser.min.js.LICENSE.txt +0 -8
- package/src/ts/utils/algorithms/clearPolygonDuplicateVertices.ts~ +0 -5
- package/src/ts/utils/algorithms/findPolygonSelfIntersections.ts~ +0 -45
- package/src/ts/utils/algorithms/sh-tmp.ts~ +0 -59
- package/src/ts/utils/algorithms/splitPolygonToNonIntersecting.ts~ +0 -113
- package/src/ts/utils/algorithms/sutherlandHodgman.ts~ +0 -88
package/src/esm/Polygon.d.ts
CHANGED
|
@@ -19,7 +19,11 @@
|
|
|
19
19
|
* @modified 2021-01-29 Added the `isClockwise` function.
|
|
20
20
|
* @modified 2021-01-29 Added the `area` function.
|
|
21
21
|
* @modified 2021-01-29 Changed the param type for `containsVert` from Vertex to XYCoords.
|
|
22
|
-
* @
|
|
22
|
+
* @modified 2021-12-14 Added the `perimeter()` function.
|
|
23
|
+
* @modified 2021-12-16 Added the `getEvenDistributionPolygon()` function.
|
|
24
|
+
* @modified 2022-02-02 Added the `destroy` method.
|
|
25
|
+
* @modified 2022-02-02 Cleared the `Polygon.toSVGString` function (deprecated). Use `drawutilssvg` instead.
|
|
26
|
+
* @version 1.9.0
|
|
23
27
|
*
|
|
24
28
|
* @file Polygon
|
|
25
29
|
* @public
|
|
@@ -67,6 +71,13 @@ export declare class Polygon implements SVGSerializable {
|
|
|
67
71
|
* @instance
|
|
68
72
|
*/
|
|
69
73
|
isOpen: boolean;
|
|
74
|
+
/**
|
|
75
|
+
* @member isDestroyed
|
|
76
|
+
* @memberof Polygon
|
|
77
|
+
* @type {boolean}
|
|
78
|
+
* @instance
|
|
79
|
+
*/
|
|
80
|
+
isDestroyed: boolean;
|
|
70
81
|
/**
|
|
71
82
|
* The constructor.
|
|
72
83
|
*
|
|
@@ -155,6 +166,19 @@ export declare class Polygon implements SVGSerializable {
|
|
|
155
166
|
* @return {boolean}
|
|
156
167
|
*/
|
|
157
168
|
isClockwise(): boolean;
|
|
169
|
+
/**
|
|
170
|
+
* Get the perimeter of this polygon.
|
|
171
|
+
* The perimeter is the absolute length of the outline.
|
|
172
|
+
*
|
|
173
|
+
* If this polygon is open then the last segment (connecting the first and the
|
|
174
|
+
* last vertex) will be skipped.
|
|
175
|
+
*
|
|
176
|
+
* @method perimeter
|
|
177
|
+
* @instance
|
|
178
|
+
* @memberof Polygon
|
|
179
|
+
* @return {number}
|
|
180
|
+
*/
|
|
181
|
+
perimeter(): number;
|
|
158
182
|
/**
|
|
159
183
|
* Scale the polygon relative to the given center.
|
|
160
184
|
*
|
|
@@ -177,6 +201,12 @@ export declare class Polygon implements SVGSerializable {
|
|
|
177
201
|
* @return {Polygon} this, for chaining.
|
|
178
202
|
**/
|
|
179
203
|
rotate(angle: number, center: Vertex): Polygon;
|
|
204
|
+
/**
|
|
205
|
+
* Convert this polygon into a new polygon with n evenly distributed vertices.
|
|
206
|
+
*
|
|
207
|
+
* @param {number} pointCount - Must not be negative.
|
|
208
|
+
*/
|
|
209
|
+
getEvenDistributionPolygon(pointCount: number): Polygon;
|
|
180
210
|
/**
|
|
181
211
|
* Get the bounding box (bounds) of this polygon.
|
|
182
212
|
*
|
|
@@ -256,6 +286,12 @@ export declare class Polygon implements SVGSerializable {
|
|
|
256
286
|
toSVGString(options: {
|
|
257
287
|
className?: string;
|
|
258
288
|
} | undefined): string;
|
|
289
|
+
/**
|
|
290
|
+
* This function should invalidate any installed listeners and invalidate this object.
|
|
291
|
+
* After calling this function the object might not hold valid data any more and
|
|
292
|
+
* should not be used.
|
|
293
|
+
*/
|
|
294
|
+
destroy(): void;
|
|
259
295
|
static utils: {
|
|
260
296
|
/**
|
|
261
297
|
* Calculate the area of the given polygon (unsigned).
|
package/src/esm/Polygon.js
CHANGED
|
@@ -19,7 +19,11 @@
|
|
|
19
19
|
* @modified 2021-01-29 Added the `isClockwise` function.
|
|
20
20
|
* @modified 2021-01-29 Added the `area` function.
|
|
21
21
|
* @modified 2021-01-29 Changed the param type for `containsVert` from Vertex to XYCoords.
|
|
22
|
-
* @
|
|
22
|
+
* @modified 2021-12-14 Added the `perimeter()` function.
|
|
23
|
+
* @modified 2021-12-16 Added the `getEvenDistributionPolygon()` function.
|
|
24
|
+
* @modified 2022-02-02 Added the `destroy` method.
|
|
25
|
+
* @modified 2022-02-02 Cleared the `Polygon.toSVGString` function (deprecated). Use `drawutilssvg` instead.
|
|
26
|
+
* @version 1.9.0
|
|
23
27
|
*
|
|
24
28
|
* @file Polygon
|
|
25
29
|
* @public
|
|
@@ -54,12 +58,11 @@ export class Polygon {
|
|
|
54
58
|
**/
|
|
55
59
|
this.className = "Polygon";
|
|
56
60
|
this.uid = UIDGenerator.next();
|
|
57
|
-
if (typeof vertices ==
|
|
61
|
+
if (typeof vertices == "undefined")
|
|
58
62
|
vertices = [];
|
|
59
63
|
this.vertices = vertices;
|
|
60
64
|
this.isOpen = isOpen;
|
|
61
65
|
}
|
|
62
|
-
;
|
|
63
66
|
/**
|
|
64
67
|
* Add a vertex to the end of the `vertices` array.
|
|
65
68
|
*
|
|
@@ -71,7 +74,6 @@ export class Polygon {
|
|
|
71
74
|
addVertex(vert) {
|
|
72
75
|
this.vertices.push(vert);
|
|
73
76
|
}
|
|
74
|
-
;
|
|
75
77
|
/**
|
|
76
78
|
* Get the polygon vertex at the given position (index).
|
|
77
79
|
*
|
|
@@ -94,7 +96,6 @@ export class Polygon {
|
|
|
94
96
|
else
|
|
95
97
|
return this.vertices[index % this.vertices.length];
|
|
96
98
|
}
|
|
97
|
-
;
|
|
98
99
|
/**
|
|
99
100
|
* Move the polygon's vertices by the given amount.
|
|
100
101
|
*
|
|
@@ -110,7 +111,6 @@ export class Polygon {
|
|
|
110
111
|
}
|
|
111
112
|
return this;
|
|
112
113
|
}
|
|
113
|
-
;
|
|
114
114
|
/**
|
|
115
115
|
* Check if the given vertex is inside this polygon.<br>
|
|
116
116
|
* <br>
|
|
@@ -130,14 +130,12 @@ export class Polygon {
|
|
|
130
130
|
for (var i = 0, j = this.vertices.length - 1; i < this.vertices.length; j = i++) {
|
|
131
131
|
let xi = this.vertices[i].x, yi = this.vertices[i].y;
|
|
132
132
|
let xj = this.vertices[j].x, yj = this.vertices[j].y;
|
|
133
|
-
var intersect =
|
|
134
|
-
&& (vert.x < (xj - xi) * (vert.y - yi) / (yj - yi) + xi);
|
|
133
|
+
var intersect = yi > vert.y != yj > vert.y && vert.x < ((xj - xi) * (vert.y - yi)) / (yj - yi) + xi;
|
|
135
134
|
if (intersect)
|
|
136
135
|
inside = !inside;
|
|
137
136
|
}
|
|
138
137
|
return inside;
|
|
139
138
|
}
|
|
140
|
-
;
|
|
141
139
|
/**
|
|
142
140
|
* Calculate the area of the given polygon (unsigned).
|
|
143
141
|
*
|
|
@@ -151,7 +149,6 @@ export class Polygon {
|
|
|
151
149
|
area() {
|
|
152
150
|
return Polygon.utils.area(this.vertices);
|
|
153
151
|
}
|
|
154
|
-
;
|
|
155
152
|
/**
|
|
156
153
|
* Calulate the signed polyon area by interpreting the polygon as a matrix
|
|
157
154
|
* and calculating its determinant.
|
|
@@ -164,7 +161,6 @@ export class Polygon {
|
|
|
164
161
|
signedArea() {
|
|
165
162
|
return Polygon.utils.signedArea(this.vertices);
|
|
166
163
|
}
|
|
167
|
-
;
|
|
168
164
|
/**
|
|
169
165
|
* Get the winding order of this polgon: clockwise or counterclockwise.
|
|
170
166
|
*
|
|
@@ -176,7 +172,28 @@ export class Polygon {
|
|
|
176
172
|
isClockwise() {
|
|
177
173
|
return Polygon.utils.signedArea(this.vertices) < 0;
|
|
178
174
|
}
|
|
179
|
-
|
|
175
|
+
/**
|
|
176
|
+
* Get the perimeter of this polygon.
|
|
177
|
+
* The perimeter is the absolute length of the outline.
|
|
178
|
+
*
|
|
179
|
+
* If this polygon is open then the last segment (connecting the first and the
|
|
180
|
+
* last vertex) will be skipped.
|
|
181
|
+
*
|
|
182
|
+
* @method perimeter
|
|
183
|
+
* @instance
|
|
184
|
+
* @memberof Polygon
|
|
185
|
+
* @return {number}
|
|
186
|
+
*/
|
|
187
|
+
perimeter() {
|
|
188
|
+
let length = 0;
|
|
189
|
+
for (var i = 1; i < this.vertices.length; i++) {
|
|
190
|
+
length += this.vertices[i - 1].distance(this.vertices[i]);
|
|
191
|
+
}
|
|
192
|
+
if (!this.isOpen && this.vertices.length > 1) {
|
|
193
|
+
length += this.vertices[0].distance(this.vertices[this.vertices.length - 1]);
|
|
194
|
+
}
|
|
195
|
+
return length;
|
|
196
|
+
}
|
|
180
197
|
/**
|
|
181
198
|
* Scale the polygon relative to the given center.
|
|
182
199
|
*
|
|
@@ -189,14 +206,13 @@ export class Polygon {
|
|
|
189
206
|
**/
|
|
190
207
|
scale(factor, center) {
|
|
191
208
|
for (var i in this.vertices) {
|
|
192
|
-
if (typeof this.vertices[i].scale ==
|
|
209
|
+
if (typeof this.vertices[i].scale == "function")
|
|
193
210
|
this.vertices[i].scale(factor, center);
|
|
194
211
|
else
|
|
195
|
-
console.log(
|
|
212
|
+
console.log("There seems to be a null vertex!", this.vertices[i]);
|
|
196
213
|
}
|
|
197
214
|
return this;
|
|
198
215
|
}
|
|
199
|
-
;
|
|
200
216
|
/**
|
|
201
217
|
* Rotate the polygon around the given center.
|
|
202
218
|
*
|
|
@@ -213,7 +229,52 @@ export class Polygon {
|
|
|
213
229
|
}
|
|
214
230
|
return this;
|
|
215
231
|
}
|
|
216
|
-
|
|
232
|
+
/**
|
|
233
|
+
* Convert this polygon into a new polygon with n evenly distributed vertices.
|
|
234
|
+
*
|
|
235
|
+
* @param {number} pointCount - Must not be negative.
|
|
236
|
+
*/
|
|
237
|
+
getEvenDistributionPolygon(pointCount) {
|
|
238
|
+
if (pointCount <= 0) {
|
|
239
|
+
throw new Error("pointCount must be larger than zero; is " + pointCount + ".");
|
|
240
|
+
}
|
|
241
|
+
const result = new Polygon([], this.isOpen);
|
|
242
|
+
if (this.vertices.length === 0) {
|
|
243
|
+
return result;
|
|
244
|
+
}
|
|
245
|
+
// Fetch and add the start point from the source polygon
|
|
246
|
+
let polygonPoint = new Vertex(this.vertices[0]);
|
|
247
|
+
result.vertices.push(polygonPoint);
|
|
248
|
+
if (this.vertices.length === 1) {
|
|
249
|
+
return result;
|
|
250
|
+
}
|
|
251
|
+
const perimeter = this.perimeter();
|
|
252
|
+
const stepSize = perimeter / pointCount;
|
|
253
|
+
const n = this.vertices.length;
|
|
254
|
+
let polygonIndex = 1;
|
|
255
|
+
let nextPolygonPoint = new Vertex(this.vertices[1]);
|
|
256
|
+
let segmentLength = polygonPoint.distance(nextPolygonPoint);
|
|
257
|
+
let loopMax = this.isOpen ? n : n + 1;
|
|
258
|
+
let curSegmentU = stepSize;
|
|
259
|
+
var i = 1;
|
|
260
|
+
while (i < pointCount && polygonIndex < loopMax) {
|
|
261
|
+
// Check if next eq point is inside this segment
|
|
262
|
+
if (curSegmentU < segmentLength) {
|
|
263
|
+
let newPoint = polygonPoint.clone().lerpAbs(nextPolygonPoint, curSegmentU);
|
|
264
|
+
result.vertices.push(newPoint);
|
|
265
|
+
curSegmentU += stepSize;
|
|
266
|
+
i++;
|
|
267
|
+
}
|
|
268
|
+
else {
|
|
269
|
+
polygonIndex++;
|
|
270
|
+
polygonPoint = nextPolygonPoint;
|
|
271
|
+
nextPolygonPoint = new Vertex(this.vertices[polygonIndex % n]);
|
|
272
|
+
curSegmentU = curSegmentU - segmentLength;
|
|
273
|
+
segmentLength = polygonPoint.distance(nextPolygonPoint);
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
return result;
|
|
277
|
+
}
|
|
217
278
|
/**
|
|
218
279
|
* Get the bounding box (bounds) of this polygon.
|
|
219
280
|
*
|
|
@@ -225,7 +286,6 @@ export class Polygon {
|
|
|
225
286
|
getBounds() {
|
|
226
287
|
return Bounds.computeFromVertices(this.vertices);
|
|
227
288
|
}
|
|
228
|
-
;
|
|
229
289
|
/**
|
|
230
290
|
* Convert this polygon to a sequence of quadratic Bézier curves.<br>
|
|
231
291
|
* <br>
|
|
@@ -257,7 +317,6 @@ export class Polygon {
|
|
|
257
317
|
}
|
|
258
318
|
return qbezier;
|
|
259
319
|
}
|
|
260
|
-
;
|
|
261
320
|
/**
|
|
262
321
|
* Convert this polygon to a quadratic bezier curve, represented as an SVG data string.
|
|
263
322
|
*
|
|
@@ -270,13 +329,12 @@ export class Polygon {
|
|
|
270
329
|
var qdata = this.toQuadraticBezierData();
|
|
271
330
|
if (qdata.length == 0)
|
|
272
331
|
return "";
|
|
273
|
-
var buffer = [
|
|
332
|
+
var buffer = ["M " + qdata[0].x + " " + qdata[0].y];
|
|
274
333
|
for (var i = 1; i < qdata.length; i += 2) {
|
|
275
|
-
buffer.push(
|
|
334
|
+
buffer.push("Q " + qdata[i].x + " " + qdata[i].y + ", " + qdata[i + 1].x + " " + qdata[i + 1].y);
|
|
276
335
|
}
|
|
277
|
-
return buffer.join(
|
|
336
|
+
return buffer.join(" ");
|
|
278
337
|
}
|
|
279
|
-
;
|
|
280
338
|
/**
|
|
281
339
|
* Convert this polygon to a sequence of cubic Bézier curves.<br>
|
|
282
340
|
* <br>
|
|
@@ -293,7 +351,7 @@ export class Polygon {
|
|
|
293
351
|
* @memberof Polygon
|
|
294
352
|
**/
|
|
295
353
|
toCubicBezierData(threshold) {
|
|
296
|
-
if (typeof threshold ==
|
|
354
|
+
if (typeof threshold == "undefined")
|
|
297
355
|
threshold = 1.0;
|
|
298
356
|
if (this.vertices.length < 3)
|
|
299
357
|
return [];
|
|
@@ -317,7 +375,6 @@ export class Polygon {
|
|
|
317
375
|
}
|
|
318
376
|
return cbezier;
|
|
319
377
|
}
|
|
320
|
-
;
|
|
321
378
|
/**
|
|
322
379
|
* Convert this polygon to a cubic bezier curve, represented as an SVG data string.
|
|
323
380
|
*
|
|
@@ -330,13 +387,23 @@ export class Polygon {
|
|
|
330
387
|
var qdata = this.toCubicBezierData(threshold);
|
|
331
388
|
if (qdata.length == 0)
|
|
332
389
|
return "";
|
|
333
|
-
var buffer = [
|
|
390
|
+
var buffer = ["M " + qdata[0].x + " " + qdata[0].y];
|
|
334
391
|
for (var i = 1; i < qdata.length; i += 3) {
|
|
335
|
-
buffer.push(
|
|
392
|
+
buffer.push("C " +
|
|
393
|
+
qdata[i].x +
|
|
394
|
+
" " +
|
|
395
|
+
qdata[i].y +
|
|
396
|
+
", " +
|
|
397
|
+
qdata[i + 1].x +
|
|
398
|
+
" " +
|
|
399
|
+
qdata[i + 1].y +
|
|
400
|
+
", " +
|
|
401
|
+
qdata[i + 2].x +
|
|
402
|
+
" " +
|
|
403
|
+
qdata[i + 2].y);
|
|
336
404
|
}
|
|
337
|
-
return buffer.join(
|
|
405
|
+
return buffer.join(" ");
|
|
338
406
|
}
|
|
339
|
-
;
|
|
340
407
|
/**
|
|
341
408
|
* Convert this polygon to a cubic bezier path instance.
|
|
342
409
|
*
|
|
@@ -355,7 +422,6 @@ export class Polygon {
|
|
|
355
422
|
}
|
|
356
423
|
return BezierPath.fromArray(pathdata);
|
|
357
424
|
}
|
|
358
|
-
;
|
|
359
425
|
/**
|
|
360
426
|
* Create an SVG representation of this polygon.
|
|
361
427
|
*
|
|
@@ -367,31 +433,42 @@ export class Polygon {
|
|
|
367
433
|
* @memberof Polygon
|
|
368
434
|
**/
|
|
369
435
|
toSVGString(options) {
|
|
370
|
-
options = options || {};
|
|
371
|
-
var buffer = [];
|
|
372
|
-
buffer.push(
|
|
373
|
-
if (options.className)
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
436
|
+
// options = options || {};
|
|
437
|
+
// var buffer: Array<string> = [];
|
|
438
|
+
// buffer.push("<path");
|
|
439
|
+
// if (options.className) buffer.push(' class="' + options.className + '"');
|
|
440
|
+
// buffer.push(' d="');
|
|
441
|
+
// if (this.vertices.length > 0) {
|
|
442
|
+
// buffer.push("M ");
|
|
443
|
+
// buffer.push(this.vertices[0].x.toString());
|
|
444
|
+
// buffer.push(" ");
|
|
445
|
+
// buffer.push(this.vertices[0].y.toString());
|
|
446
|
+
// for (var i = 1; i < this.vertices.length; i++) {
|
|
447
|
+
// buffer.push(" L ");
|
|
448
|
+
// buffer.push(this.vertices[i].x.toString());
|
|
449
|
+
// buffer.push(" ");
|
|
450
|
+
// buffer.push(this.vertices[i].y.toString());
|
|
451
|
+
// }
|
|
452
|
+
// if (!this.isOpen) {
|
|
453
|
+
// buffer.push(" Z");
|
|
454
|
+
// }
|
|
455
|
+
// }
|
|
456
|
+
// buffer.push('" />');
|
|
457
|
+
// return buffer.join("");
|
|
458
|
+
console.warn("[Deprecation] Warning: the Polygon.toSVGString method is deprecated and does not return and valid SVG data any more. Please use `drawutilssvg` instead.");
|
|
459
|
+
return "";
|
|
460
|
+
}
|
|
461
|
+
/**
|
|
462
|
+
* This function should invalidate any installed listeners and invalidate this object.
|
|
463
|
+
* After calling this function the object might not hold valid data any more and
|
|
464
|
+
* should not be used.
|
|
465
|
+
*/
|
|
466
|
+
destroy() {
|
|
467
|
+
for (var i = 0; i < this.vertices.length; i++) {
|
|
468
|
+
this.vertices[i].destroy();
|
|
390
469
|
}
|
|
391
|
-
|
|
392
|
-
return buffer.join('');
|
|
470
|
+
this.isDestroyed = true;
|
|
393
471
|
}
|
|
394
|
-
;
|
|
395
472
|
}
|
|
396
473
|
Polygon.utils = {
|
|
397
474
|
/**
|
|
@@ -411,8 +488,8 @@ Polygon.utils = {
|
|
|
411
488
|
const addY = vertices[(i + 1) % l].y;
|
|
412
489
|
const subX = vertices[(i + 1) % l].x;
|
|
413
490
|
const subY = vertices[i].y;
|
|
414
|
-
total +=
|
|
415
|
-
total -=
|
|
491
|
+
total += addX * addY * 0.5;
|
|
492
|
+
total -= subX * subY * 0.5;
|
|
416
493
|
}
|
|
417
494
|
return Math.abs(total);
|
|
418
495
|
},
|
package/src/esm/Polygon.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Polygon.js","sourceRoot":"","sources":["../ts/Polygon.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Polygon.js","sourceRoot":"","sources":["../ts/Polygon.ts"],"names":[],"mappings":"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"}
|
package/src/esm/Triangle.d.ts
CHANGED
|
@@ -19,7 +19,9 @@
|
|
|
19
19
|
* @modified 2020-12-28 Added the `getArea` function.
|
|
20
20
|
* @modified 2021-01-20 Added UID.
|
|
21
21
|
* @modified 2021-01-22 Always updating circumcircle when retieving it.
|
|
22
|
-
* @
|
|
22
|
+
* @modified 2022-02-02 Added the `destroy` method.
|
|
23
|
+
* @modified 2022-02-02 Cleared the `Triangle.toSVGString` function (deprecated). Use `drawutilssvg` instead.
|
|
24
|
+
* @version 2.6.0
|
|
23
25
|
*
|
|
24
26
|
* @file Triangle
|
|
25
27
|
* @fileoverview A simple triangle class: three vertices.
|
|
@@ -107,6 +109,13 @@ export declare class Triangle implements SVGSerializable {
|
|
|
107
109
|
* @private
|
|
108
110
|
*/
|
|
109
111
|
private radius;
|
|
112
|
+
/**
|
|
113
|
+
* @member isDestroyed
|
|
114
|
+
* @memberof Triangle
|
|
115
|
+
* @type {boolean}
|
|
116
|
+
* @instance
|
|
117
|
+
*/
|
|
118
|
+
isDestroyed: boolean;
|
|
110
119
|
/**
|
|
111
120
|
* The constructor.
|
|
112
121
|
*
|
|
@@ -317,5 +326,11 @@ export declare class Triangle implements SVGSerializable {
|
|
|
317
326
|
toSVGString(options: {
|
|
318
327
|
className?: string;
|
|
319
328
|
}): string;
|
|
329
|
+
/**
|
|
330
|
+
* This function should invalidate any installed listeners and invalidate this object.
|
|
331
|
+
* After calling this function the object might not hold valid data any more and
|
|
332
|
+
* should not be used.
|
|
333
|
+
*/
|
|
334
|
+
destroy(): void;
|
|
320
335
|
private static utils;
|
|
321
336
|
}
|