plotboilerplate 1.23.3 → 1.25.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 +19 -1
- package/dist/index.esm.js +1684 -394
- 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 +12450 -11120
- package/dist/plotboilerplate.min.js +1 -1
- package/package.json +9 -5
- package/src/cjs/BezierPath.d.ts +41 -5
- package/src/cjs/BezierPath.js +52 -2
- package/src/cjs/BezierPath.js.map +1 -1
- package/src/cjs/Bounds.d.ts +67 -3
- package/src/cjs/Bounds.js +101 -3
- package/src/cjs/Bounds.js.map +1 -1
- package/src/cjs/Circle.d.ts +46 -4
- package/src/cjs/Circle.js +82 -3
- package/src/cjs/Circle.js.map +1 -1
- package/src/cjs/CircleSector.d.ts +51 -2
- package/src/cjs/CircleSector.js +112 -3
- package/src/cjs/CircleSector.js.map +1 -1
- package/src/cjs/CubicBezierCurve.d.ts +113 -7
- package/src/cjs/CubicBezierCurve.js +281 -33
- package/src/cjs/CubicBezierCurve.js.map +1 -1
- package/src/cjs/Line.d.ts +38 -3
- package/src/cjs/Line.js +64 -1
- package/src/cjs/Line.js.map +1 -1
- package/src/cjs/PlotBoilerplate.d.ts +37 -6
- package/src/cjs/PlotBoilerplate.js +224 -125
- package/src/cjs/PlotBoilerplate.js.map +1 -1
- package/src/cjs/Polygon.d.ts +68 -5
- package/src/cjs/Polygon.js +143 -22
- package/src/cjs/Polygon.js.map +1 -1
- package/src/cjs/Triangle.d.ts +52 -3
- package/src/cjs/Triangle.js +80 -1
- package/src/cjs/Triangle.js.map +1 -1
- package/src/cjs/VEllipse.d.ts +62 -3
- package/src/cjs/VEllipse.js +181 -17
- package/src/cjs/VEllipse.js.map +1 -1
- package/src/cjs/VEllipseSector.d.ts +86 -2
- package/src/cjs/VEllipseSector.js +148 -4
- package/src/cjs/VEllipseSector.js.map +1 -1
- package/src/cjs/Vector.d.ts +12 -2
- package/src/cjs/Vector.js +15 -2
- package/src/cjs/Vector.js.map +1 -1
- package/src/cjs/VertTuple.d.ts +28 -4
- package/src/cjs/VertTuple.js +36 -3
- package/src/cjs/VertTuple.js.map +1 -1
- package/src/cjs/Vertex.d.ts +31 -4
- package/src/cjs/Vertex.js +35 -1
- package/src/cjs/Vertex.js.map +1 -1
- package/src/cjs/interfaces/core.d.ts +67 -0
- package/src/cjs/interfaces/core.js +4 -0
- package/src/cjs/interfaces/core.js.map +1 -1
- package/src/cjs/utils/algorithms/convexPolygonIncircle.d.ts +2 -1
- package/src/cjs/utils/algorithms/convexPolygonIncircle.js +14 -6
- package/src/cjs/utils/algorithms/convexPolygonIncircle.js.map +1 -1
- package/src/cjs/utils/createRandomizedPolygon.d.ts +14 -0
- package/src/cjs/utils/createRandomizedPolygon.js +32 -0
- package/src/cjs/utils/createRandomizedPolygon.js.map +1 -0
- package/src/cjs/utils/datastructures/Color.d.ts +147 -1
- package/src/cjs/utils/datastructures/Color.js +385 -41
- package/src/cjs/utils/datastructures/Color.js.map +1 -1
- package/src/cjs/utils/datastructures/ColorGradient.d.ts +79 -0
- package/src/cjs/utils/datastructures/ColorGradient.js +171 -0
- package/src/cjs/utils/datastructures/ColorGradient.js.map +1 -0
- package/src/cjs/utils/dom/components/ColorGradientPicker.d.ts +245 -0
- package/src/cjs/utils/dom/components/ColorGradientPicker.js +667 -0
- package/src/cjs/utils/dom/components/ColorGradientPicker.js.map +1 -0
- package/src/cjs/utils/dom/components/ColorGradientPickerJSX.d.ts +129 -0
- package/src/cjs/utils/dom/components/ColorGradientPickerJSX.js +520 -0
- package/src/cjs/utils/dom/components/ColorGradientPickerJSX.js.map +1 -0
- package/src/cjs/utils/dom/components/ColorGradientSelector.d.ts +117 -0
- package/src/cjs/utils/dom/components/ColorGradientSelector.js +325 -0
- package/src/cjs/utils/dom/components/ColorGradientSelector.js.map +1 -0
- package/src/cjs/utils/dom/components/Test.d.ts +7 -0
- package/src/cjs/utils/dom/components/Test.js +30 -0
- package/src/cjs/utils/dom/components/Test.js.map +1 -0
- package/src/cjs/utils/dom/guiSizeToggler.js +1 -1
- package/src/cjs/utils/dom/guiSizeToggler.js.map +1 -1
- package/src/cjs/utils/helpers/BezierPathInteractionHelper.d.ts +16 -8
- package/src/cjs/utils/helpers/BezierPathInteractionHelper.js +49 -28
- package/src/cjs/utils/helpers/BezierPathInteractionHelper.js.map +1 -1
- package/src/cjs/utils/helpers/CircleHelper.d.ts +10 -1
- package/src/cjs/utils/helpers/CircleHelper.js +13 -2
- package/src/cjs/utils/helpers/CircleHelper.js.map +1 -1
- package/src/cjs/utils/helpers/CircleSectorHelper.d.ts +11 -2
- package/src/cjs/utils/helpers/CircleSectorHelper.js +20 -20
- package/src/cjs/utils/helpers/CircleSectorHelper.js.map +1 -1
- package/src/cjs/utils/helpers/TriangleHelper.d.ts +57 -0
- package/src/cjs/utils/helpers/TriangleHelper.js +83 -0
- package/src/cjs/utils/helpers/TriangleHelper.js.map +1 -0
- package/src/cjs/utils/helpers/VEllipseHelper.d.ts +32 -0
- package/src/cjs/utils/helpers/VEllipseHelper.js +88 -0
- package/src/cjs/utils/helpers/VEllipseHelper.js.map +1 -0
- package/src/cjs/utils/helpers/VEllipseSectorHelper.d.ts +44 -4
- package/src/cjs/utils/helpers/VEllipseSectorHelper.js +108 -25
- package/src/cjs/utils/helpers/VEllipseSectorHelper.js.map +1 -1
- package/src/cjs/utils/parsers/LinearColorGradientParser.d.ts +78 -0
- package/src/cjs/utils/parsers/LinearColorGradientParser.js +224 -0
- package/src/cjs/utils/parsers/LinearColorGradientParser.js.map +1 -0
- package/src/createDemoDrawables.js +4 -1
- package/src/esm/BezierPath.d.ts +41 -5
- package/src/esm/BezierPath.js +50 -2
- package/src/esm/BezierPath.js.map +1 -1
- package/src/esm/Bounds.d.ts +67 -3
- package/src/esm/Bounds.js +101 -3
- package/src/esm/Bounds.js.map +1 -1
- package/src/esm/Circle.d.ts +46 -4
- package/src/esm/Circle.js +79 -3
- package/src/esm/Circle.js.map +1 -1
- package/src/esm/CircleSector.d.ts +51 -2
- package/src/esm/CircleSector.js +108 -3
- package/src/esm/CircleSector.js.map +1 -1
- package/src/esm/CubicBezierCurve.d.ts +113 -7
- package/src/esm/CubicBezierCurve.js +277 -33
- package/src/esm/CubicBezierCurve.js.map +1 -1
- package/src/esm/Line.d.ts +38 -3
- package/src/esm/Line.js +62 -1
- package/src/esm/Line.js.map +1 -1
- package/src/esm/PlotBoilerplate.d.ts +37 -6
- package/src/esm/PlotBoilerplate.js +224 -125
- package/src/esm/PlotBoilerplate.js.map +1 -1
- package/src/esm/Polygon.d.ts +68 -5
- package/src/esm/Polygon.js +138 -22
- package/src/esm/Polygon.js.map +1 -1
- package/src/esm/Triangle.d.ts +52 -3
- package/src/esm/Triangle.js +77 -1
- package/src/esm/Triangle.js.map +1 -1
- package/src/esm/VEllipse.d.ts +62 -3
- package/src/esm/VEllipse.js +178 -17
- package/src/esm/VEllipse.js.map +1 -1
- package/src/esm/VEllipseSector.d.ts +86 -2
- package/src/esm/VEllipseSector.js +146 -7
- package/src/esm/VEllipseSector.js.map +1 -1
- package/src/esm/Vector.d.ts +12 -2
- package/src/esm/Vector.js +15 -2
- package/src/esm/Vector.js.map +1 -1
- package/src/esm/VertTuple.d.ts +28 -4
- package/src/esm/VertTuple.js +36 -3
- package/src/esm/VertTuple.js.map +1 -1
- package/src/esm/Vertex.d.ts +31 -4
- package/src/esm/Vertex.js +35 -1
- package/src/esm/Vertex.js.map +1 -1
- package/src/esm/interfaces/core.d.ts +67 -0
- package/src/esm/interfaces/core.js +4 -0
- package/src/esm/interfaces/core.js.map +1 -1
- package/src/esm/utils/algorithms/convexPolygonIncircle.d.ts +2 -1
- package/src/esm/utils/algorithms/convexPolygonIncircle.js +15 -7
- package/src/esm/utils/algorithms/convexPolygonIncircle.js.map +1 -1
- package/src/esm/utils/algorithms/createRandomizedPolygon.d.ts +14 -0
- package/src/esm/utils/algorithms/createRandomizedPolygon.js +28 -0
- package/src/esm/utils/algorithms/createRandomizedPolygon.js.map +1 -0
- package/src/esm/utils/createRandomizedPolygon.d.ts +14 -0
- package/src/esm/utils/createRandomizedPolygon.js +28 -0
- package/src/esm/utils/createRandomizedPolygon.js.map +1 -0
- package/src/esm/utils/datastructures/Color.d.ts +147 -1
- package/src/esm/utils/datastructures/Color.js +386 -42
- package/src/esm/utils/datastructures/Color.js.map +1 -1
- package/src/esm/utils/datastructures/ColorGradient.d.ts +79 -0
- package/src/esm/utils/datastructures/ColorGradient.js +166 -0
- package/src/esm/utils/datastructures/ColorGradient.js.map +1 -0
- package/src/esm/utils/dom/components/ColorGradientPicker.d.ts +245 -0
- package/src/esm/utils/dom/components/ColorGradientPicker.js +732 -0
- package/src/esm/utils/dom/components/ColorGradientPicker.js.map +1 -0
- package/src/esm/utils/dom/components/ColorGradientPickerJSX.d.ts +129 -0
- package/src/esm/utils/dom/components/ColorGradientPickerJSX.js +582 -0
- package/src/esm/utils/dom/components/ColorGradientPickerJSX.js.map +1 -0
- package/src/esm/utils/dom/components/ColorGradientSelector.d.ts +117 -0
- package/src/esm/utils/dom/components/ColorGradientSelector.js +332 -0
- package/src/esm/utils/dom/components/ColorGradientSelector.js.map +1 -0
- package/src/esm/utils/dom/components/Test.d.ts +7 -0
- package/src/esm/utils/dom/components/Test.js +26 -0
- package/src/esm/utils/dom/components/Test.js.map +1 -0
- package/src/esm/utils/dom/guiSizeToggler.js +1 -1
- package/src/esm/utils/dom/guiSizeToggler.js.map +1 -1
- package/src/esm/utils/helpers/BezierPathInteractionHelper.d.ts +16 -8
- package/src/esm/utils/helpers/BezierPathInteractionHelper.js +47 -27
- package/src/esm/utils/helpers/BezierPathInteractionHelper.js.map +1 -1
- package/src/esm/utils/helpers/CircleHelper.d.ts +10 -1
- package/src/esm/utils/helpers/CircleHelper.js +13 -2
- package/src/esm/utils/helpers/CircleHelper.js.map +1 -1
- package/src/esm/utils/helpers/CircleSectorHelper.d.ts +11 -2
- package/src/esm/utils/helpers/CircleSectorHelper.js +20 -20
- package/src/esm/utils/helpers/CircleSectorHelper.js.map +1 -1
- package/src/esm/utils/helpers/TriangleHelper.d.ts +57 -0
- package/src/esm/utils/helpers/TriangleHelper.js +78 -0
- package/src/esm/utils/helpers/TriangleHelper.js.map +1 -0
- package/src/esm/utils/helpers/VEllipseHelper.d.ts +32 -0
- package/src/esm/utils/helpers/VEllipseHelper.js +83 -0
- package/src/esm/utils/helpers/VEllipseHelper.js.map +1 -0
- package/src/esm/utils/helpers/VEllipseSectorHelper.d.ts +44 -4
- package/src/esm/utils/helpers/VEllipseSectorHelper.js +107 -24
- package/src/esm/utils/helpers/VEllipseSectorHelper.js.map +1 -1
- package/src/esm/utils/parsers/LinearColorGradientParser.d.ts +78 -0
- package/src/esm/utils/parsers/LinearColorGradientParser.js +217 -0
- package/src/esm/utils/parsers/LinearColorGradientParser.js.map +1 -0
- package/src/external.d.ts +9 -0
- package/src/ts/BezierPath.ts +58 -5
- package/src/ts/Bounds.ts +110 -6
- package/src/ts/Circle.ts +87 -5
- package/src/ts/CircleSector.ts +115 -5
- package/src/ts/CubicBezierCurve.ts +332 -42
- package/src/ts/Line.ts +66 -3
- package/src/ts/PlotBoilerplate.ts +236 -114
- package/src/ts/Polygon.ts +164 -29
- package/src/ts/Triangle.ts +85 -3
- package/src/ts/VEllipse.ts +214 -19
- package/src/ts/VEllipseSector.ts +154 -8
- package/src/ts/Vector.ts +16 -2
- package/src/ts/VertTuple.ts +39 -4
- package/src/ts/Vertex.ts +40 -4
- package/src/ts/interfaces/core.ts +73 -0
- package/src/ts/utils/algorithms/convexPolygonIncircle.ts +82 -78
- package/src/ts/utils/createRandomizedPolygon.ts +31 -0
- package/src/ts/utils/datastructures/Color.ts +423 -44
- package/src/ts/utils/datastructures/ColorGradient.ts +196 -0
- package/src/ts/utils/dom/components/ColorGradientPicker.tsx +877 -0
- package/src/ts/utils/dom/components/ColorGradientSelector.tsx +445 -0
- package/src/ts/utils/dom/components/Test.tsx +44 -0
- package/src/ts/utils/dom/components/_ColorGradientPicker_raw.ts_ +392 -0
- package/src/ts/utils/dom/guiSizeToggler.ts +1 -1
- package/src/ts/utils/helpers/BezierPathInteractionHelper.ts +61 -35
- package/src/ts/utils/helpers/CircleHelper.ts +17 -3
- package/src/ts/utils/helpers/CircleSectorHelper.ts +118 -126
- package/src/ts/utils/helpers/TriangleHelper.ts +102 -0
- package/src/ts/utils/helpers/VEllipseHelper.ts +115 -0
- package/src/ts/utils/helpers/VEllipseSectorHelper.ts +144 -26
- package/src/ts/utils/parsers/LinearColorGradientParser.ts +297 -0
|
@@ -7,10 +7,18 @@
|
|
|
7
7
|
* @date 2021-02-26
|
|
8
8
|
* @modified 2022-02-02 Added the `destroy` method.
|
|
9
9
|
* @modified 2022-11-01 Tweaked the `endpointToCenterParameters` function to handle negative values, too, without errors.
|
|
10
|
-
* @
|
|
10
|
+
* @modified 2025-04-01 Adapting a the `toCubicBezier` calculation to match an underlying change in the vertAt and tangentAt calculation of ellipses (was required to hamonize both methods with circles).
|
|
11
|
+
* @modified 2025-04-02 Adding `VEllipseSector.containsAngle` method.
|
|
12
|
+
* @modified 2025-04-02 Adding `VEllipseSector.lineIntersections` and `VEllipseSector.lineIntersectionTangents` and implementing `Intersectable`.
|
|
13
|
+
* @modified 2025-04-07 Adding value wrapping (0 to TWO_PI) to the `VEllipseSector.containsAngle` method.
|
|
14
|
+
* @modified 2025-04-09 Adding the `VEllipseSector.move` method.
|
|
15
|
+
* @modified 2025-04-19 Added the `VEllipseSector.getStartPoint` and `getEndPoint` methods.
|
|
16
|
+
* @modified 2025-04-23 Added the `VEllipseSector.getBounds` method.
|
|
17
|
+
* @version 1.2.0
|
|
11
18
|
*/
|
|
12
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
20
|
exports.VEllipseSector = void 0;
|
|
21
|
+
var Bounds_1 = require("./Bounds");
|
|
14
22
|
var CubicBezierCurve_1 = require("./CubicBezierCurve");
|
|
15
23
|
var geomutils_1 = require("./geomutils");
|
|
16
24
|
var Line_1 = require("./Line");
|
|
@@ -51,6 +59,142 @@ var VEllipseSector = /** @class */ (function () {
|
|
|
51
59
|
this.startAngle = geomutils_1.geomutils.wrapMinMax(startAngle, 0, Math.PI * 2);
|
|
52
60
|
this.endAngle = geomutils_1.geomutils.wrapMinMax(endAngle, 0, Math.PI * 2);
|
|
53
61
|
}
|
|
62
|
+
/**
|
|
63
|
+
* Move the ellipse sector by the given amount.
|
|
64
|
+
*
|
|
65
|
+
* @method move
|
|
66
|
+
* @param {XYCoords} amount - The amount to move.
|
|
67
|
+
* @instance
|
|
68
|
+
* @memberof VEllipseSector
|
|
69
|
+
* @return {VEllipseSector} this for chaining
|
|
70
|
+
**/
|
|
71
|
+
VEllipseSector.prototype.move = function (amount) {
|
|
72
|
+
this.ellipse.move(amount);
|
|
73
|
+
return this;
|
|
74
|
+
};
|
|
75
|
+
/**
|
|
76
|
+
* Checks wether the given angle (must be inside 0 and PI*2) is contained inside this sector.
|
|
77
|
+
*
|
|
78
|
+
* @param {number} angle - The numeric angle to check.
|
|
79
|
+
* @method containsAngle
|
|
80
|
+
* @instance
|
|
81
|
+
* @memberof VEllipseSectpr
|
|
82
|
+
* @return {boolean} True if (and only if) this sector contains the given angle.
|
|
83
|
+
*/
|
|
84
|
+
VEllipseSector.prototype.containsAngle = function (angle) {
|
|
85
|
+
angle = geomutils_1.geomutils.mapAngleTo2PI(angle); // wrapMinMax(angle, 0, Math.PI * 2);
|
|
86
|
+
var sAngle = geomutils_1.geomutils.mapAngleTo2PI(this.startAngle);
|
|
87
|
+
var eAngle = geomutils_1.geomutils.mapAngleTo2PI(this.endAngle);
|
|
88
|
+
// TODO: cleanup
|
|
89
|
+
// if (this.startAngle <= this.endAngle) {
|
|
90
|
+
// return angle >= this.startAngle && angle < this.endAngle;
|
|
91
|
+
// } else {
|
|
92
|
+
// // startAngle > endAngle
|
|
93
|
+
// return angle >= this.startAngle || angle < this.endAngle;
|
|
94
|
+
// }
|
|
95
|
+
if (sAngle <= eAngle) {
|
|
96
|
+
return angle >= sAngle && angle < eAngle;
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
// startAngle > endAngle
|
|
100
|
+
return angle >= sAngle || angle < eAngle;
|
|
101
|
+
}
|
|
102
|
+
};
|
|
103
|
+
/**
|
|
104
|
+
* Get the sectors starting point (on the underlying ellipse, located at the start angle).
|
|
105
|
+
*
|
|
106
|
+
* @method getStartPoint
|
|
107
|
+
* @instance
|
|
108
|
+
* @memberof VEllipseSector
|
|
109
|
+
* @return {Vertex} The sector's stating point.
|
|
110
|
+
*/
|
|
111
|
+
VEllipseSector.prototype.getStartPoint = function () {
|
|
112
|
+
return this.ellipse.vertAt(this.startAngle);
|
|
113
|
+
};
|
|
114
|
+
/**
|
|
115
|
+
* Get the sectors ending point (on the underlying ellipse, located at the end angle).
|
|
116
|
+
*
|
|
117
|
+
* @method getEndPoint
|
|
118
|
+
* @instance
|
|
119
|
+
* @memberof VEllipseSector
|
|
120
|
+
* @return {Vertex} The sector's ending point.
|
|
121
|
+
*/
|
|
122
|
+
VEllipseSector.prototype.getEndPoint = function () {
|
|
123
|
+
return this.ellipse.vertAt(this.endAngle);
|
|
124
|
+
};
|
|
125
|
+
//--- BEGIN --- Implement interface `IBounded`
|
|
126
|
+
/**
|
|
127
|
+
* Get the bounds of this elliptic sector.
|
|
128
|
+
*
|
|
129
|
+
* The bounds are approximated by the underlying segment buffer; the more segment there are,
|
|
130
|
+
* the more accurate will be the returned bounds.
|
|
131
|
+
*
|
|
132
|
+
* @method getBounds
|
|
133
|
+
* @instance
|
|
134
|
+
* @memberof VEllipse
|
|
135
|
+
* @return {Bounds} The bounds of this elliptic sector.
|
|
136
|
+
**/
|
|
137
|
+
VEllipseSector.prototype.getBounds = function () {
|
|
138
|
+
var _this = this;
|
|
139
|
+
// Calculage angles from east, west, north and south box points and check if they are inside
|
|
140
|
+
var extremes = this.ellipse.getExtremePoints();
|
|
141
|
+
var candidates = extremes.filter(function (point) {
|
|
142
|
+
var angle = new Line_1.Line(_this.ellipse.center, point).angle() - _this.ellipse.rotation;
|
|
143
|
+
return _this.containsAngle(angle);
|
|
144
|
+
});
|
|
145
|
+
return Bounds_1.Bounds.computeFromVertices([this.getStartPoint(), this.getEndPoint()].concat(candidates));
|
|
146
|
+
};
|
|
147
|
+
//--- BEGIN --- Implement interface `Intersectable`
|
|
148
|
+
/**
|
|
149
|
+
* Get the line intersections as vectors with this ellipse.
|
|
150
|
+
*
|
|
151
|
+
* @method lineIntersections
|
|
152
|
+
* @instance
|
|
153
|
+
* @memberof VEllipseSectpr
|
|
154
|
+
* @param {VertTuple<Vector>} ray - The line/ray to intersect this ellipse with.
|
|
155
|
+
* @param {boolean} inVectorBoundsOnly - (default=false) Set to true if only intersections within the vector bounds are of interest.
|
|
156
|
+
* @returns
|
|
157
|
+
*/
|
|
158
|
+
VEllipseSector.prototype.lineIntersections = function (ray, inVectorBoundsOnly) {
|
|
159
|
+
var _this = this;
|
|
160
|
+
if (inVectorBoundsOnly === void 0) { inVectorBoundsOnly = false; }
|
|
161
|
+
// First get all line intersections from underlying ellipse.
|
|
162
|
+
var ellipseIntersections = this.ellipse.lineIntersections(ray, inVectorBoundsOnly);
|
|
163
|
+
// Drop all intersection points that are not contained in the circle sectors bounds.
|
|
164
|
+
var tmpLine = new Line_1.Line(this.ellipse.center, new Vertex_1.Vertex());
|
|
165
|
+
return ellipseIntersections.filter(function (intersectionPoint) {
|
|
166
|
+
tmpLine.b.set(intersectionPoint);
|
|
167
|
+
var lineAngle = tmpLine.angle();
|
|
168
|
+
return _this.containsAngle(lineAngle - _this.ellipse.rotation);
|
|
169
|
+
});
|
|
170
|
+
};
|
|
171
|
+
/**
|
|
172
|
+
* Get all line intersections of this polygon and their tangents along the shape.
|
|
173
|
+
*
|
|
174
|
+
* This method returns all intersection tangents (as vectors) with this shape. The returned array of vectors is in no specific order.
|
|
175
|
+
*
|
|
176
|
+
* @method lineIntersections
|
|
177
|
+
* @memberof VEllipseSectpr
|
|
178
|
+
* @param line
|
|
179
|
+
* @param lineIntersectionTangents
|
|
180
|
+
* @returns
|
|
181
|
+
*/
|
|
182
|
+
VEllipseSector.prototype.lineIntersectionTangents = function (line, inVectorBoundsOnly) {
|
|
183
|
+
var _this = this;
|
|
184
|
+
if (inVectorBoundsOnly === void 0) { inVectorBoundsOnly = false; }
|
|
185
|
+
// Find the intersections of all lines plus their tangents inside the circle bounds
|
|
186
|
+
var interSectionPoints = this.lineIntersections(line, inVectorBoundsOnly);
|
|
187
|
+
return interSectionPoints.map(function (vert) {
|
|
188
|
+
// Calculate angle
|
|
189
|
+
var lineFromCenter = new Line_1.Line(_this.ellipse.center, vert);
|
|
190
|
+
var angle = lineFromCenter.angle();
|
|
191
|
+
// console.log("angle", (angle / Math.PI) * 180.0);
|
|
192
|
+
// const angle = Math.random() * Math.PI * 2; // TODO
|
|
193
|
+
// Calculate tangent at angle
|
|
194
|
+
return _this.ellipse.tangentAt(angle);
|
|
195
|
+
});
|
|
196
|
+
};
|
|
197
|
+
//--- END --- Implement interface `Intersectable`
|
|
54
198
|
/**
|
|
55
199
|
* Convert this elliptic sector into cubic Bézier curves.
|
|
56
200
|
*
|
|
@@ -78,8 +222,8 @@ var VEllipseSector = /** @class */ (function () {
|
|
|
78
222
|
for (var i = 0; i + 1 < angles.length; i++) {
|
|
79
223
|
var nextAngle = angles[(i + 1) % angles.length];
|
|
80
224
|
var endPoint = this.ellipse.vertAt(nextAngle);
|
|
81
|
-
var startTangent = this.ellipse.tangentAt(curAngle);
|
|
82
|
-
var endTangent = this.ellipse.tangentAt(nextAngle);
|
|
225
|
+
var startTangent = this.ellipse.tangentAt(curAngle + this.ellipse.rotation);
|
|
226
|
+
var endTangent = this.ellipse.tangentAt(nextAngle + this.ellipse.rotation);
|
|
83
227
|
// Distorted ellipses can only be approximated by linear Bézier segments
|
|
84
228
|
if (Math.abs(radiusV) < 0.0001 || Math.abs(radiusH) < 0.0001) {
|
|
85
229
|
var diff = startPoint.difference(endPoint);
|
|
@@ -189,7 +333,7 @@ var VEllipseSector = /** @class */ (function () {
|
|
|
189
333
|
return angle >= startAngle || (angle <= endAngle && angle >= 0);
|
|
190
334
|
};
|
|
191
335
|
// Drop all angles outside the sector
|
|
192
|
-
|
|
336
|
+
ellipseAngles = ellipseAngles.filter(angleIsInRange);
|
|
193
337
|
// Now we need to sort the angles to the first one in the array is the closest to startAngle.
|
|
194
338
|
// --> find the angle that is closest to the start angle
|
|
195
339
|
var startIndex = VEllipseSector.ellipseSectorUtils.findClosestToStartAngle(startAngle, endAngle, ellipseAngles);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VEllipseSector.js","sourceRoot":"","sources":["../ts/VEllipseSector.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"VEllipseSector.js","sourceRoot":"","sources":["../ts/VEllipseSector.ts"],"names":[],"mappings":"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"}
|
package/src/cjs/Vector.d.ts
CHANGED
|
@@ -12,7 +12,8 @@
|
|
|
12
12
|
* @modified 2022-02-02 Added the `destroy` method.
|
|
13
13
|
* @modified 2022-02-02 Cleared the `Vector.toSVGString` function (deprecated). Use `drawutilssvg` instead.
|
|
14
14
|
* @modified 2022-10-25 Added the `getOrthogonal` method.
|
|
15
|
-
* @
|
|
15
|
+
* @modified 2025-04-14 Added the `Vector.rotate(number)` method.
|
|
16
|
+
* @version 1.6.0
|
|
16
17
|
*
|
|
17
18
|
* @file Vector
|
|
18
19
|
* @public
|
|
@@ -47,7 +48,6 @@ export declare class Vector extends VertTuple<Vector> implements SVGSerializable
|
|
|
47
48
|
/**
|
|
48
49
|
* Get the perpendicular of this vector which is located at a.
|
|
49
50
|
*
|
|
50
|
-
* @param {Number} t The position on the vector.
|
|
51
51
|
* @return {Vector} A new vector being the perpendicular of this vector sitting on a.
|
|
52
52
|
**/
|
|
53
53
|
perp(): Vector;
|
|
@@ -85,6 +85,16 @@ export declare class Vector extends VertTuple<Vector> implements SVGSerializable
|
|
|
85
85
|
* @memberof Vector
|
|
86
86
|
**/
|
|
87
87
|
getOrthogonal(): Vector;
|
|
88
|
+
/**
|
|
89
|
+
* Rotate this vector by the given angle around the first point `a`.
|
|
90
|
+
*
|
|
91
|
+
* @name rotate
|
|
92
|
+
* @method rotate
|
|
93
|
+
* @return {Vector} this - for chaining.
|
|
94
|
+
* @instance
|
|
95
|
+
* @memberof Vector
|
|
96
|
+
*/
|
|
97
|
+
rotate(angle: number): Vector;
|
|
88
98
|
static utils: {
|
|
89
99
|
/**
|
|
90
100
|
* Generate a four-point arrow head, starting at the vector end minus the
|
package/src/cjs/Vector.js
CHANGED
|
@@ -13,7 +13,8 @@
|
|
|
13
13
|
* @modified 2022-02-02 Added the `destroy` method.
|
|
14
14
|
* @modified 2022-02-02 Cleared the `Vector.toSVGString` function (deprecated). Use `drawutilssvg` instead.
|
|
15
15
|
* @modified 2022-10-25 Added the `getOrthogonal` method.
|
|
16
|
-
* @
|
|
16
|
+
* @modified 2025-04-14 Added the `Vector.rotate(number)` method.
|
|
17
|
+
* @version 1.6.0
|
|
17
18
|
*
|
|
18
19
|
* @file Vector
|
|
19
20
|
* @public
|
|
@@ -68,7 +69,6 @@ var Vector = /** @class */ (function (_super) {
|
|
|
68
69
|
/**
|
|
69
70
|
* Get the perpendicular of this vector which is located at a.
|
|
70
71
|
*
|
|
71
|
-
* @param {Number} t The position on the vector.
|
|
72
72
|
* @return {Vector} A new vector being the perpendicular of this vector sitting on a.
|
|
73
73
|
**/
|
|
74
74
|
Vector.prototype.perp = function () {
|
|
@@ -144,6 +144,19 @@ var Vector = /** @class */ (function (_super) {
|
|
|
144
144
|
startPoint.y = tmp;
|
|
145
145
|
return new Vector(linePoint, startPoint.add(this.a));
|
|
146
146
|
};
|
|
147
|
+
/**
|
|
148
|
+
* Rotate this vector by the given angle around the first point `a`.
|
|
149
|
+
*
|
|
150
|
+
* @name rotate
|
|
151
|
+
* @method rotate
|
|
152
|
+
* @return {Vector} this - for chaining.
|
|
153
|
+
* @instance
|
|
154
|
+
* @memberof Vector
|
|
155
|
+
*/
|
|
156
|
+
Vector.prototype.rotate = function (angle) {
|
|
157
|
+
this.b.rotate(angle, this.a);
|
|
158
|
+
return this;
|
|
159
|
+
};
|
|
147
160
|
Vector.utils = {
|
|
148
161
|
/**
|
|
149
162
|
* Generate a four-point arrow head, starting at the vector end minus the
|
package/src/cjs/Vector.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Vector.js","sourceRoot":"","sources":["../ts/Vector.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"Vector.js","sourceRoot":"","sources":["../ts/Vector.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;IAmBI;;;;;;;;;;;;;;;;;;AAEJ,yCAAwC;AACxC,mCAAkC;AAGlC;;;;;;;;IAQI;AACJ;IAA4B,0BAAiB;IAM3C;;;;;;;;QAQI;IACJ,gBAAY,KAAa,EAAE,KAAa;QACtC,YAAA,MAAK,YAAC,KAAK,EAAE,KAAK,EAAE,UAAC,CAAS,EAAE,CAAS,IAAK,OAAA,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAhB,CAAgB,CAAC,SAAC;QAflE;;YAEI;QACK,eAAS,GAAW,QAAQ,CAAC;;IAatC,CAAC;IAED;;;;QAII;IACJ,qBAAI,GAAJ;QACE,IAAI,CAAC,GAAW,IAAI,CAAC,KAAK,EAAE,CAAC;QAC7B,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACd,CAAC,GAAG,IAAI,MAAM,CAAC,IAAI,eAAM,EAAE,EAAE,IAAI,eAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO,CAAC,CAAC;IACX,CAAC;IAED;;;;;;QAMI;IACJ,wBAAO,GAAP;QACE,IAAI,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC;QACjB,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;QAChB,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC;QACb,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;QAII;IACJ,oBAAG,GAAH;QACE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;QAQI;IACJ,6BAAY,GAAZ,UAAa,IAAY;QACvB,IAAI,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,WAAW,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QAElC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,UAAU,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACvE,IAAI,UAAU,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACvE,CAAC,GAAG,UAAU,GAAG,WAAW,CAAC,CAAC,wBAAwB;QACtD,CAAC,GAAG,UAAU,GAAG,WAAW,CAAC;QAE7B,QAAQ;QACR,6DAA6D;QAE7D,6EAA6E;QAC7E,OAAO,IAAI,eAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAChG,CAAC;IAED;;;;;;;;QAQI;IACJ,8BAAa,GAAb;QACE,qDAAqD;QACrD,IAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;QACjC,IAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9C,IAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC;QACzB,UAAU,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC;QAC7B,UAAU,CAAC,CAAC,GAAG,GAAG,CAAC;QACnB,OAAO,IAAI,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,CAAC;IAED;;;;;;;;OAQG;IACH,uBAAM,GAAN,UAAO,KAAa;QAClB,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,YAAK,GAAG;QACb;;;;;;;;;;;;;;;;;;;;;;;;YAwBI;QACJ,cAAc,EAAE,UAAC,EAAY,EAAE,EAAY,EAAE,OAAe,EAAE,MAAc,EAAE,MAAc;YAC1F,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;YACzE,IAAM,QAAQ,GAAkB,EAAE,CAAC;YACnC,QAAQ,CAAC,IAAI,CAAC,IAAI,eAAM,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAChH,QAAQ,CAAC,IAAI,CACX,IAAI,eAAM,CACR,EAAE,CAAC,CAAC,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,EAC9D,EAAE,CAAC,CAAC,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAC/D,CACF,CAAC;YACF,QAAQ,CAAC,IAAI,CAAC,IAAI,eAAM,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,EAAE,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;YACxD,QAAQ,CAAC,IAAI,CACX,IAAI,eAAM,CACR,EAAE,CAAC,CAAC,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,EAC9D,EAAE,CAAC,CAAC,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAC/D,CACF,CAAC;YAEF,OAAO,QAAQ,CAAC;QAClB,CAAC;KACF,AA9CW,CA8CV;IACJ,aAAC;CAAA,AArKD,CAA4B,qBAAS,GAqKpC;AArKY,wBAAM"}
|
package/src/cjs/VertTuple.d.ts
CHANGED
|
@@ -13,7 +13,10 @@
|
|
|
13
13
|
* @modified 2024-09-10 Chaging the first param of `pointDistance` from `Vertex` to less strict type `XYCoords`. This should not break anything.
|
|
14
14
|
* @modified 2024-09-10 Adding the optional `epsilon` param to the `hasPoint` method.
|
|
15
15
|
* @modified 2024-12-02 Added the `epsilon` param to the `colinear` method. Default is 1.0e-6.
|
|
16
|
-
* @
|
|
16
|
+
* @modified 2025-03-31 Added the `VertTuple.revert` method.
|
|
17
|
+
* @modified 2025-04-15 Changed param of `VertTuple.moveTo` method from `Vertex` to `XYCoords`.
|
|
18
|
+
* @modified 2025-04-15 Added method `VertTuple.move` method.
|
|
19
|
+
* @version 1.4.0
|
|
17
20
|
*/
|
|
18
21
|
import { Vertex } from "./Vertex";
|
|
19
22
|
import { XYCoords, UID } from "./interfaces";
|
|
@@ -99,11 +102,22 @@ export declare class VertTuple<T extends VertTuple<T>> {
|
|
|
99
102
|
*
|
|
100
103
|
* @method add
|
|
101
104
|
* @param {XYCoords} amount The amount (x,y) to add.
|
|
102
|
-
* @return {Line} this
|
|
103
105
|
* @instance
|
|
104
106
|
* @memberof VertTuple
|
|
107
|
+
* @return {VertTuple<T>} this
|
|
105
108
|
**/
|
|
106
109
|
add(amount: XYCoords): VertTuple<T>;
|
|
110
|
+
/**
|
|
111
|
+
* Reverse this vertex tuple: a becomes b, and b becomes a.
|
|
112
|
+
* This operation is in-place.
|
|
113
|
+
*
|
|
114
|
+
* @method add
|
|
115
|
+
* @param {XYCoords} amount The amount (x,y) to add.
|
|
116
|
+
* @instance
|
|
117
|
+
* @memberof VertTuple
|
|
118
|
+
* @return {VertTuple<T>} this
|
|
119
|
+
*/
|
|
120
|
+
revert(): VertTuple<T>;
|
|
107
121
|
/**
|
|
108
122
|
* Normalize this line (set to length 1).
|
|
109
123
|
*
|
|
@@ -127,12 +141,22 @@ export declare class VertTuple<T extends VertTuple<T>> {
|
|
|
127
141
|
* Move this line to a new location.
|
|
128
142
|
*
|
|
129
143
|
* @method moveTo
|
|
130
|
-
* @param {
|
|
144
|
+
* @param {XYCoords} newA - The new desired location of 'a'. Vertex 'b' will be moved, too.
|
|
145
|
+
* @return {VertTuple} this
|
|
146
|
+
* @instance
|
|
147
|
+
* @memberof VertTuple
|
|
148
|
+
**/
|
|
149
|
+
moveTo(newA: XYCoords): VertTuple<T>;
|
|
150
|
+
/**
|
|
151
|
+
* Move this line by the given amount
|
|
152
|
+
*
|
|
153
|
+
* @method move
|
|
154
|
+
* @param {XYCoords} amount - The amount to move both point of this tuple.
|
|
131
155
|
* @return {VertTuple} this
|
|
132
156
|
* @instance
|
|
133
157
|
* @memberof VertTuple
|
|
134
158
|
**/
|
|
135
|
-
|
|
159
|
+
move(amount: XYCoords): VertTuple<T>;
|
|
136
160
|
/**
|
|
137
161
|
* Get the angle between this and the passed line (in radians).
|
|
138
162
|
*
|
package/src/cjs/VertTuple.js
CHANGED
|
@@ -14,7 +14,10 @@
|
|
|
14
14
|
* @modified 2024-09-10 Chaging the first param of `pointDistance` from `Vertex` to less strict type `XYCoords`. This should not break anything.
|
|
15
15
|
* @modified 2024-09-10 Adding the optional `epsilon` param to the `hasPoint` method.
|
|
16
16
|
* @modified 2024-12-02 Added the `epsilon` param to the `colinear` method. Default is 1.0e-6.
|
|
17
|
-
* @
|
|
17
|
+
* @modified 2025-03-31 Added the `VertTuple.revert` method.
|
|
18
|
+
* @modified 2025-04-15 Changed param of `VertTuple.moveTo` method from `Vertex` to `XYCoords`.
|
|
19
|
+
* @modified 2025-04-15 Added method `VertTuple.move` method.
|
|
20
|
+
* @version 1.4.0
|
|
18
21
|
*/
|
|
19
22
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
23
|
exports.VertTuple = void 0;
|
|
@@ -83,15 +86,31 @@ var VertTuple = /** @class */ (function () {
|
|
|
83
86
|
*
|
|
84
87
|
* @method add
|
|
85
88
|
* @param {XYCoords} amount The amount (x,y) to add.
|
|
86
|
-
* @return {Line} this
|
|
87
89
|
* @instance
|
|
88
90
|
* @memberof VertTuple
|
|
91
|
+
* @return {VertTuple<T>} this
|
|
89
92
|
**/
|
|
90
93
|
VertTuple.prototype.add = function (amount) {
|
|
91
94
|
this.a.add(amount);
|
|
92
95
|
this.b.add(amount);
|
|
93
96
|
return this;
|
|
94
97
|
};
|
|
98
|
+
/**
|
|
99
|
+
* Reverse this vertex tuple: a becomes b, and b becomes a.
|
|
100
|
+
* This operation is in-place.
|
|
101
|
+
*
|
|
102
|
+
* @method add
|
|
103
|
+
* @param {XYCoords} amount The amount (x,y) to add.
|
|
104
|
+
* @instance
|
|
105
|
+
* @memberof VertTuple
|
|
106
|
+
* @return {VertTuple<T>} this
|
|
107
|
+
*/
|
|
108
|
+
VertTuple.prototype.revert = function () {
|
|
109
|
+
var tmp = this.a;
|
|
110
|
+
this.a = this.b;
|
|
111
|
+
this.b = tmp;
|
|
112
|
+
return this;
|
|
113
|
+
};
|
|
95
114
|
/**
|
|
96
115
|
* Normalize this line (set to length 1).
|
|
97
116
|
*
|
|
@@ -121,7 +140,7 @@ var VertTuple = /** @class */ (function () {
|
|
|
121
140
|
* Move this line to a new location.
|
|
122
141
|
*
|
|
123
142
|
* @method moveTo
|
|
124
|
-
* @param {
|
|
143
|
+
* @param {XYCoords} newA - The new desired location of 'a'. Vertex 'b' will be moved, too.
|
|
125
144
|
* @return {VertTuple} this
|
|
126
145
|
* @instance
|
|
127
146
|
* @memberof VertTuple
|
|
@@ -132,6 +151,20 @@ var VertTuple = /** @class */ (function () {
|
|
|
132
151
|
this.b.add(diff);
|
|
133
152
|
return this;
|
|
134
153
|
};
|
|
154
|
+
/**
|
|
155
|
+
* Move this line by the given amount
|
|
156
|
+
*
|
|
157
|
+
* @method move
|
|
158
|
+
* @param {XYCoords} amount - The amount to move both point of this tuple.
|
|
159
|
+
* @return {VertTuple} this
|
|
160
|
+
* @instance
|
|
161
|
+
* @memberof VertTuple
|
|
162
|
+
**/
|
|
163
|
+
VertTuple.prototype.move = function (amount) {
|
|
164
|
+
this.a.add(amount);
|
|
165
|
+
this.b.add(amount);
|
|
166
|
+
return this;
|
|
167
|
+
};
|
|
135
168
|
/**
|
|
136
169
|
* Get the angle between this and the passed line (in radians).
|
|
137
170
|
*
|
package/src/cjs/VertTuple.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VertTuple.js","sourceRoot":"","sources":["../ts/VertTuple.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"VertTuple.js","sourceRoot":"","sources":["../ts/VertTuple.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;GAmBG;;;AAEH,mCAAkC;AAClC,+CAA8C;AAG9C;;;;;;GAMG;AACH;IAsCE;;;;;;;QAOI;IACJ,mBAAY,CAAS,EAAE,CAAS,EAAE,OAAoC;QACpE,IAAI,CAAC,GAAG,GAAG,2BAAY,CAAC,IAAI,EAAE,CAAC;QAC/B,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;;;;;;QAMI;IACJ,0BAAM,GAAN;QACE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACxF,CAAC;IAED;;;;;;;;QAQI;IACJ,6BAAS,GAAT,UAAU,MAAc;QACtB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;;;QAQI;IACJ,uBAAG,GAAH,UAAI,MAAgB;QAClB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;QAQI;IACJ,uBAAG,GAAH,UAAI,MAAgB;QAClB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;;OASG;IACH,0BAAM,GAAN;QACE,IAAM,GAAG,GAAW,IAAI,CAAC,CAAC,CAAC;QAC3B,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;QAChB,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC;QACb,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;QAOI;IACJ,6BAAS,GAAT;QACE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC/G,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;QAQI;IACJ,yBAAK,GAAL,UAAM,MAAc;QAClB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;QACjG,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;QAQI;IACJ,0BAAM,GAAN,UAAO,IAAc;QACnB,IAAI,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;QAQI;IACJ,wBAAI,GAAJ,UAAK,MAAgB;QACnB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;QAQI;IACJ,yBAAK,GAAL,UAAM,IAAqB;QACzB,IAAI,IAAI,IAAI,IAAI,IAAI,OAAO,IAAI,IAAI,WAAW,EAAE,CAAC;YAC/C,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,eAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,eAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QAC5D,CAAC;QACD,iEAAiE;QACjE,IAAM,EAAE,GAAW,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9C,IAAM,EAAE,GAAW,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9C,2FAA2F;QAC3F,wGAAwG;QACxG,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IACzD,CAAC;IAED;;;;;;;;;;;QAWI;IACJ,0BAAM,GAAN,UAAO,CAAS;QACd,OAAO,IAAI,eAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAChG,CAAC;IAED;;;;;;;;;;QAUI;IACJ,+BAAW,GAAX,UAAY,IAAkB;QAC5B,6CAA6C;QAC7C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvG,CAAC;IAED;;;;;;;;;;;OAWG;IACH,4BAAQ,GAAR,UAAS,IAAkB,EAAE,OAAgB;QAC3C,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,OAAO,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,eAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACxG,CAAC;IAED;;;;;;;;;;;QAWI;IACJ,+BAAW,GAAX,UAAY,CAAW;QACrB,IAAI,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QACjD,IAAI,EAAE,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QACvB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;QACnG,6BAA6B;QAC7B,sCAAsC;QACtC,mCAAmC;QACnC,OAAO,CAAC,CAAC;IACX,CAAC;IAED;;;;;;;;;;;OAWG;IACH,4BAAQ,GAAR,UAAS,KAAe,EAAE,gBAA0B,EAAE,OAAgB;QACpE,IAAM,CAAC,GAAW,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1C,4BAA4B;QAC5B,IAAM,QAAQ,GAAW,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnF,IAAI,OAAO,gBAAgB,KAAK,WAAW,IAAI,gBAAgB,EAAE,CAAC;YAChE,OAAO,QAAQ,GAAG,CAAC,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,eAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpE,CAAC;aAAM,CAAC;YACN,OAAO,QAAQ,GAAG,CAAC,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,eAAM,CAAC,OAAO,CAAC,CAAC,CAAC,oBAAoB;QACrE,CAAC;IACH,CAAC;IAED;;;;;;;;QAQI;IACJ,mCAAe,GAAf,UAAgB,CAAS;QACvB,IAAI,CAAC,GAAW,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC;IAED;;;;;;;;QAQI;IACJ,iCAAa,GAAb,UAAc,CAAW;QACvB,cAAc;QACd,kGAAkG;QAClG,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjF,CAAC;IAED;;;;;;;QAOI;IACJ,yBAAK,GAAL;QACE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IACtD,CAAC;IAED;;;;;;;QAOI;IACJ,4BAAQ,GAAR;QACE,OAAO,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC;IAC5E,CAAC;IAED;;;;OAIG;IACH,2BAAO,GAAP;QACE,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QACjB,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;QACjB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED;;QAEI;IACG,iBAAO,GAAG;QACf,KAAK,EAAE,UAAC,CAAW,EAAE,CAAW;YAC9B,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/D,CAAC;KACF,CAAC;IACJ,gBAAC;CAAA,AAhXD,IAgXC;AAhXY,8BAAS"}
|
package/src/cjs/Vertex.d.ts
CHANGED
|
@@ -33,14 +33,18 @@
|
|
|
33
33
|
* @modified 2023-09-29 Added the `Vertex.abs()` method as it seems useful.
|
|
34
34
|
* @modified 2024-03-08 Added the optional `precision` param to the `toString` method.
|
|
35
35
|
* @modified 2024-12-17 Outsourced the euclidean distance calculation of `Vertex.distance` to `geomutils.dist4`.
|
|
36
|
-
* @
|
|
36
|
+
* @modified 2025-03-24 Making the second parameter `center` of the `Vertex.rotate` method optional.
|
|
37
|
+
* @modified 2025-04-13 Adding the `Vertex.move(amount: XYCoords)` method (does the same as `add`, added by naming convention).
|
|
38
|
+
* @modified 2025-05-07 Class `Vertex` is now implementing interface `IBounded` (to meet convention).
|
|
39
|
+
* @version 2.11.0
|
|
37
40
|
*
|
|
38
41
|
* @file Vertex
|
|
39
42
|
* @public
|
|
40
43
|
**/
|
|
41
44
|
import { IVertexAttr } from "./VertexAttr";
|
|
42
45
|
import { VertexListeners } from "./VertexListeners";
|
|
43
|
-
import { XYCoords, SVGSerializable, UID } from "./interfaces";
|
|
46
|
+
import { XYCoords, SVGSerializable, UID, IBounded } from "./interfaces";
|
|
47
|
+
import { Bounds } from "./Bounds";
|
|
44
48
|
/**
|
|
45
49
|
* @classdesc A vertex is a pair of two numbers.<br>
|
|
46
50
|
* <br>
|
|
@@ -55,7 +59,7 @@ import { XYCoords, SVGSerializable, UID } from "./interfaces";
|
|
|
55
59
|
* @requires XYCoords
|
|
56
60
|
*
|
|
57
61
|
*/
|
|
58
|
-
export declare class Vertex implements XYCoords, SVGSerializable {
|
|
62
|
+
export declare class Vertex implements IBounded, XYCoords, SVGSerializable {
|
|
59
63
|
private static readonly ZERO;
|
|
60
64
|
/**
|
|
61
65
|
* Required to generate proper CSS classes and other class related IDs.
|
|
@@ -180,6 +184,19 @@ export declare class Vertex implements XYCoords, SVGSerializable {
|
|
|
180
184
|
* @memberof Vertex
|
|
181
185
|
**/
|
|
182
186
|
add(x: number | XYCoords, y?: number): Vertex;
|
|
187
|
+
/**
|
|
188
|
+
* Move this point by the given amount.
|
|
189
|
+
*
|
|
190
|
+
* This method just calls `add(amount).
|
|
191
|
+
*
|
|
192
|
+
*
|
|
193
|
+
* @method move
|
|
194
|
+
* @param {Vertex} amount - The amount to move this vertex.
|
|
195
|
+
* @return {Vertex} this - For chaining.
|
|
196
|
+
* @instance
|
|
197
|
+
* @memberof Vertex
|
|
198
|
+
*/
|
|
199
|
+
move(amount: XYCoords): Vertex;
|
|
183
200
|
/**
|
|
184
201
|
* Add the passed amounts to the x- and y- components of this vertex.
|
|
185
202
|
*
|
|
@@ -367,7 +384,7 @@ export declare class Vertex implements XYCoords, SVGSerializable {
|
|
|
367
384
|
* @instance
|
|
368
385
|
* @memberof Vertex
|
|
369
386
|
**/
|
|
370
|
-
rotate(angle: number, center
|
|
387
|
+
rotate(angle: number, center?: XYCoords | undefined): Vertex;
|
|
371
388
|
/**
|
|
372
389
|
* Multiply both components of this vertex with the given scalar.<br>
|
|
373
390
|
* <br>
|
|
@@ -408,6 +425,16 @@ export declare class Vertex implements XYCoords, SVGSerializable {
|
|
|
408
425
|
* @memberof Vertex
|
|
409
426
|
*/
|
|
410
427
|
abs(): Vertex;
|
|
428
|
+
/**
|
|
429
|
+
* Get the bounding box (bounds) of this Vertex.
|
|
430
|
+
* This is just by convention – any vertex is just a position without any useful with or height (0).
|
|
431
|
+
*
|
|
432
|
+
* @method getBounds
|
|
433
|
+
* @instance
|
|
434
|
+
* @memberof Vertex
|
|
435
|
+
* @return {Bounds} The rectangular bounds of this Vertex (width and height are zero).
|
|
436
|
+
**/
|
|
437
|
+
getBounds(): Bounds;
|
|
411
438
|
/**
|
|
412
439
|
* Get a string representation of this vertex.
|
|
413
440
|
*
|
package/src/cjs/Vertex.js
CHANGED
|
@@ -34,7 +34,10 @@
|
|
|
34
34
|
* @modified 2023-09-29 Added the `Vertex.abs()` method as it seems useful.
|
|
35
35
|
* @modified 2024-03-08 Added the optional `precision` param to the `toString` method.
|
|
36
36
|
* @modified 2024-12-17 Outsourced the euclidean distance calculation of `Vertex.distance` to `geomutils.dist4`.
|
|
37
|
-
* @
|
|
37
|
+
* @modified 2025-03-24 Making the second parameter `center` of the `Vertex.rotate` method optional.
|
|
38
|
+
* @modified 2025-04-13 Adding the `Vertex.move(amount: XYCoords)` method (does the same as `add`, added by naming convention).
|
|
39
|
+
* @modified 2025-05-07 Class `Vertex` is now implementing interface `IBounded` (to meet convention).
|
|
40
|
+
* @version 2.11.0
|
|
38
41
|
*
|
|
39
42
|
* @file Vertex
|
|
40
43
|
* @public
|
|
@@ -45,6 +48,7 @@ var VertexAttr_1 = require("./VertexAttr");
|
|
|
45
48
|
var UIDGenerator_1 = require("./UIDGenerator");
|
|
46
49
|
var VertexListeners_1 = require("./VertexListeners");
|
|
47
50
|
var geomutils_1 = require("./geomutils");
|
|
51
|
+
var Bounds_1 = require("./Bounds");
|
|
48
52
|
/**
|
|
49
53
|
* @classdesc A vertex is a pair of two numbers.<br>
|
|
50
54
|
* <br>
|
|
@@ -231,6 +235,21 @@ var Vertex = /** @class */ (function () {
|
|
|
231
235
|
}
|
|
232
236
|
return this;
|
|
233
237
|
};
|
|
238
|
+
/**
|
|
239
|
+
* Move this point by the given amount.
|
|
240
|
+
*
|
|
241
|
+
* This method just calls `add(amount).
|
|
242
|
+
*
|
|
243
|
+
*
|
|
244
|
+
* @method move
|
|
245
|
+
* @param {Vertex} amount - The amount to move this vertex.
|
|
246
|
+
* @return {Vertex} this - For chaining.
|
|
247
|
+
* @instance
|
|
248
|
+
* @memberof Vertex
|
|
249
|
+
*/
|
|
250
|
+
Vertex.prototype.move = function (amount) {
|
|
251
|
+
return this.add(amount);
|
|
252
|
+
};
|
|
234
253
|
/**
|
|
235
254
|
* Add the passed amounts to the x- and y- components of this vertex.
|
|
236
255
|
*
|
|
@@ -570,6 +589,21 @@ var Vertex = /** @class */ (function () {
|
|
|
570
589
|
this.y = Math.abs(this.y);
|
|
571
590
|
return this;
|
|
572
591
|
};
|
|
592
|
+
//--- BEGIN --- Implement interface `IBounded`
|
|
593
|
+
/**
|
|
594
|
+
* Get the bounding box (bounds) of this Vertex.
|
|
595
|
+
* This is just by convention – any vertex is just a position without any useful with or height (0).
|
|
596
|
+
*
|
|
597
|
+
* @method getBounds
|
|
598
|
+
* @instance
|
|
599
|
+
* @memberof Vertex
|
|
600
|
+
* @return {Bounds} The rectangular bounds of this Vertex (width and height are zero).
|
|
601
|
+
**/
|
|
602
|
+
Vertex.prototype.getBounds = function () {
|
|
603
|
+
// return Bounds.computeFromVertices([this.a, this.b, this.c]);
|
|
604
|
+
return Bounds_1.Bounds.computeFromVertices([this]);
|
|
605
|
+
};
|
|
606
|
+
//--- END --- Implement interface `IBounded`
|
|
573
607
|
/**
|
|
574
608
|
* Get a string representation of this vertex.
|
|
575
609
|
*
|