modern-path2d 1.1.0 → 1.2.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 +27 -15
- package/dist/index.cjs +353 -222
- package/dist/index.d.cts +67 -26
- package/dist/index.d.mts +67 -26
- package/dist/index.d.ts +67 -26
- package/dist/index.js +2 -2
- package/dist/index.mjs +350 -221
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -138,6 +138,7 @@ declare abstract class Curve {
|
|
|
138
138
|
getPointAt(u: number, output?: Vector2): Vector2;
|
|
139
139
|
isClockwise(): boolean;
|
|
140
140
|
getControlPointRefs(): Vector2[];
|
|
141
|
+
applyTransform(transform: Matrix3): this;
|
|
141
142
|
getUnevenPointArray(count?: number, output?: number[]): number[];
|
|
142
143
|
getSpacedPointArray(count?: number, output?: number[]): number[];
|
|
143
144
|
getAdaptivePointArray(output?: number[]): number[];
|
|
@@ -155,7 +156,6 @@ declare abstract class Curve {
|
|
|
155
156
|
getNormal(t: number, output?: Vector2): Vector2;
|
|
156
157
|
getNormalAt(u: number, output?: Vector2): Vector2;
|
|
157
158
|
getTForPoint(target: VectorLike, epsilon?: number): number;
|
|
158
|
-
matrix(matrix: Matrix3): this;
|
|
159
159
|
getMinMax(min?: Vector2, max?: Vector2): {
|
|
160
160
|
min: Vector2;
|
|
161
161
|
max: Vector2;
|
|
@@ -170,19 +170,32 @@ declare abstract class Curve {
|
|
|
170
170
|
clone(): this;
|
|
171
171
|
}
|
|
172
172
|
|
|
173
|
-
declare class
|
|
174
|
-
|
|
173
|
+
declare class RoundCurve extends Curve {
|
|
174
|
+
_center: Vector2;
|
|
175
|
+
_radius: Vector2;
|
|
176
|
+
_diff: Vector2;
|
|
177
|
+
rotate: number;
|
|
175
178
|
startAngle: number;
|
|
176
179
|
endAngle: number;
|
|
177
180
|
clockwise: boolean;
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
+
get cx(): number;
|
|
182
|
+
set cx(val: number);
|
|
183
|
+
get cy(): number;
|
|
184
|
+
set cy(val: number);
|
|
185
|
+
get rx(): number;
|
|
186
|
+
set rx(val: number);
|
|
187
|
+
get ry(): number;
|
|
188
|
+
set ry(val: number);
|
|
189
|
+
get dx(): number;
|
|
190
|
+
set dx(val: number);
|
|
191
|
+
get dy(): number;
|
|
192
|
+
set dy(val: number);
|
|
193
|
+
constructor(_center: Vector2, _radius: Vector2, _diff: Vector2, rotate?: number, startAngle?: number, endAngle?: number, clockwise?: boolean);
|
|
181
194
|
isClockwise(): boolean;
|
|
182
195
|
getPoint(t: number, output?: Vector2): Vector2;
|
|
183
196
|
toCommands(): Path2DCommand[];
|
|
184
197
|
drawTo(ctx: CanvasRenderingContext2D): this;
|
|
185
|
-
|
|
198
|
+
applyTransform(matrix: Matrix3): this;
|
|
186
199
|
getControlPointRefs(): Vector2[];
|
|
187
200
|
getAdaptivePointArray(output?: number[]): number[];
|
|
188
201
|
fillTriangulate(options?: FillTriangulateOptions): FillTriangulateResult;
|
|
@@ -190,11 +203,13 @@ declare class EllipseCurve extends Curve {
|
|
|
190
203
|
min: Vector2;
|
|
191
204
|
max: Vector2;
|
|
192
205
|
};
|
|
193
|
-
copy(source:
|
|
206
|
+
copy(source: RoundCurve): this;
|
|
194
207
|
}
|
|
195
208
|
|
|
196
|
-
declare class ArcCurve extends
|
|
209
|
+
declare class ArcCurve extends RoundCurve {
|
|
210
|
+
readonly radius: number;
|
|
197
211
|
constructor(cx?: number, cy?: number, radius?: number, startAngle?: number, endAngle?: number, clockwise?: boolean);
|
|
212
|
+
drawTo(ctx: CanvasRenderingContext2D): this;
|
|
198
213
|
getAdaptivePointArray(output?: number[]): number[];
|
|
199
214
|
}
|
|
200
215
|
|
|
@@ -220,8 +235,8 @@ declare class CubicBezierCurve extends Curve {
|
|
|
220
235
|
cp1: Vector2;
|
|
221
236
|
cp2: Vector2;
|
|
222
237
|
p2: Vector2;
|
|
223
|
-
static from(
|
|
224
|
-
constructor(
|
|
238
|
+
static from(p1x: number, p1y: number, cp1x: number, cp1y: number, cp2x: number, cp2y: number, p2x: number, p2y: number): CubicBezierCurve;
|
|
239
|
+
constructor(p1: Vector2, cp1: Vector2, cp2: Vector2, p2: Vector2);
|
|
225
240
|
getPoint(t: number, output?: Vector2): Vector2;
|
|
226
241
|
getAdaptivePointArray(output?: number[]): number[];
|
|
227
242
|
getControlPointRefs(): Vector2[];
|
|
@@ -235,11 +250,16 @@ declare class CubicBezierCurve extends Curve {
|
|
|
235
250
|
copy(source: CubicBezierCurve): this;
|
|
236
251
|
}
|
|
237
252
|
|
|
253
|
+
declare class EllipseCurve extends RoundCurve {
|
|
254
|
+
constructor(cx?: number, cy?: number, rx?: number, ry?: number, rotate?: number, startAngle?: number, endAngle?: number, clockwise?: boolean);
|
|
255
|
+
drawTo(ctx: CanvasRenderingContext2D): this;
|
|
256
|
+
}
|
|
257
|
+
|
|
238
258
|
declare class LineCurve extends Curve {
|
|
239
259
|
p1: Vector2;
|
|
240
260
|
p2: Vector2;
|
|
241
|
-
static from(
|
|
242
|
-
constructor(
|
|
261
|
+
static from(p1x: number, p1y: number, p2x: number, p2y: number): LineCurve;
|
|
262
|
+
constructor(p1: Vector2, p2: Vector2);
|
|
243
263
|
getPoint(t: number, output?: Vector2): Vector2;
|
|
244
264
|
getPointAt(u: number, output?: Vector2): Vector2;
|
|
245
265
|
getTangent(_t: number, output?: Vector2): Vector2;
|
|
@@ -256,15 +276,22 @@ declare class LineCurve extends Curve {
|
|
|
256
276
|
}
|
|
257
277
|
|
|
258
278
|
declare class PloygonCurve extends CompositeCurve<LineCurve> {
|
|
259
|
-
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
declare class EquilateralPloygonCurve extends PloygonCurve {
|
|
282
|
+
readonly cx: number;
|
|
283
|
+
readonly cy: number;
|
|
284
|
+
readonly radius: number;
|
|
285
|
+
readonly sideCount: number;
|
|
286
|
+
constructor(cx?: number, cy?: number, radius?: number, sideCount?: number);
|
|
260
287
|
}
|
|
261
288
|
|
|
262
289
|
declare class QuadraticBezierCurve extends Curve {
|
|
263
290
|
p1: Vector2;
|
|
264
291
|
cp: Vector2;
|
|
265
292
|
p2: Vector2;
|
|
266
|
-
static from(
|
|
267
|
-
constructor(
|
|
293
|
+
static from(p1x: number, p1y: number, cpx: number, cpy: number, p2x: number, p2y: number): QuadraticBezierCurve;
|
|
294
|
+
constructor(p1: Vector2, cp: Vector2, p2: Vector2);
|
|
268
295
|
getPoint(t: number, output?: Vector2): Vector2;
|
|
269
296
|
getControlPointRefs(): Vector2[];
|
|
270
297
|
getAdaptivePointArray(output?: number[]): number[];
|
|
@@ -278,14 +305,25 @@ declare class QuadraticBezierCurve extends Curve {
|
|
|
278
305
|
}
|
|
279
306
|
|
|
280
307
|
declare class RectangleCurve extends PloygonCurve {
|
|
281
|
-
x: number;
|
|
282
|
-
y: number;
|
|
283
|
-
width: number;
|
|
284
|
-
height: number;
|
|
308
|
+
readonly x: number;
|
|
309
|
+
readonly y: number;
|
|
310
|
+
readonly width: number;
|
|
311
|
+
readonly height: number;
|
|
285
312
|
constructor(x?: number, y?: number, width?: number, height?: number);
|
|
313
|
+
drawTo(ctx: CanvasRenderingContext2D): this;
|
|
286
314
|
fillTriangulate(options?: FillTriangulateOptions): FillTriangulateResult;
|
|
287
315
|
}
|
|
288
316
|
|
|
317
|
+
declare class RoundRectangleCurve extends RoundCurve {
|
|
318
|
+
readonly x: number;
|
|
319
|
+
readonly y: number;
|
|
320
|
+
readonly width: number;
|
|
321
|
+
readonly height: number;
|
|
322
|
+
readonly radius: number;
|
|
323
|
+
constructor(x?: number, y?: number, width?: number, height?: number, radius?: number);
|
|
324
|
+
drawTo(ctx: CanvasRenderingContext2D): this;
|
|
325
|
+
}
|
|
326
|
+
|
|
289
327
|
declare class SplineCurve extends Curve {
|
|
290
328
|
points: Vector2[];
|
|
291
329
|
constructor(points?: Vector2[]);
|
|
@@ -370,7 +408,8 @@ declare class CurvePath extends CompositeCurve {
|
|
|
370
408
|
arcTo(x1: number, y1: number, x2: number, y2: number, radius: number): this;
|
|
371
409
|
ellipse(x: number, y: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, counterclockwise?: boolean): this;
|
|
372
410
|
relativeEllipse(x: number, y: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, counterclockwise?: boolean): this;
|
|
373
|
-
rect(x: number, y: number,
|
|
411
|
+
rect(x: number, y: number, width: number, height: number): this;
|
|
412
|
+
roundRect(x: number, y: number, width: number, height: number, radii: number): this;
|
|
374
413
|
splineThru(points: Vector2[]): this;
|
|
375
414
|
drawTo(ctx: CanvasRenderingContext2D): this;
|
|
376
415
|
copy(source: CurvePath): this;
|
|
@@ -428,7 +467,8 @@ declare class Path2D extends CompositeCurve<CurvePath> {
|
|
|
428
467
|
arc(x: number, y: number, radius: number, startAngle: number, endAngle: number, counterclockwise?: boolean): this;
|
|
429
468
|
arcTo(x1: number, y1: number, x2: number, y2: number, radius: number): this;
|
|
430
469
|
ellipse(x: number, y: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, counterclockwise?: boolean): this;
|
|
431
|
-
rect(x: number, y: number,
|
|
470
|
+
rect(x: number, y: number, width: number, height: number): this;
|
|
471
|
+
roundRect(x: number, y: number, width: number, height: number, radii: number): this;
|
|
432
472
|
addCommands(commands: Path2DCommand[]): this;
|
|
433
473
|
addData(data: Path2DData): this;
|
|
434
474
|
splineThru(points: Vector2[]): this;
|
|
@@ -436,7 +476,7 @@ declare class Path2D extends CompositeCurve<CurvePath> {
|
|
|
436
476
|
skew(ax: number, ay?: number, target?: VectorLike): this;
|
|
437
477
|
rotate(a: number, target?: VectorLike): this;
|
|
438
478
|
bold(b: number): this;
|
|
439
|
-
|
|
479
|
+
applyTransform(transform: Matrix3): this;
|
|
440
480
|
getMinMax(min?: Vector2, max?: Vector2, withStyle?: boolean): {
|
|
441
481
|
min: Vector2;
|
|
442
482
|
max: Vector2;
|
|
@@ -489,7 +529,8 @@ declare function svgPathCommandsToData(commands: Path2DCommand[]): Path2DData;
|
|
|
489
529
|
|
|
490
530
|
declare function svgPathDataToCommands(data: Path2DData): Path2DCommand[];
|
|
491
531
|
|
|
492
|
-
declare function
|
|
493
|
-
|
|
532
|
+
declare function svgToDom(svg: string | SVGElement): SVGElement;
|
|
533
|
+
|
|
534
|
+
declare function svgToPath2DSet(svg: string | SVGElement): Path2DSet;
|
|
494
535
|
|
|
495
|
-
export { ArcCurve, BoundingBox, CompositeCurve, CubicBezierCurve, Curve, CurvePath, type DrawPointOptions, EllipseCurve, type FillRule, type FillTriangulateOptions, type FillTriangulateResult, type LineCap, LineCurve, type LineJoin, type LineStyle, Matrix3, Path2D, type Path2DCommand, type Path2DData, type Path2DDrawStyle, Path2DSet, type Path2DStyle, PloygonCurve, QuadraticBezierCurve, RectangleCurve, SplineCurve, type StrokeLinecap, type StrokeLinejoin, type StrokeTriangulateOptions, type StrokeTriangulateResult, Vector2, type VectorLike, catmullRom, cubicBezier, drawPoint, fillTriangulate, getAdaptiveCubicBezierCurvePoints, getAdaptiveQuadraticBezierCurvePoints, parseArcCommand, parsePathDataArgs,
|
|
536
|
+
export { ArcCurve, BoundingBox, CompositeCurve, CubicBezierCurve, Curve, CurvePath, type DrawPointOptions, EllipseCurve, EquilateralPloygonCurve, type FillRule, type FillTriangulateOptions, type FillTriangulateResult, type LineCap, LineCurve, type LineJoin, type LineStyle, Matrix3, Path2D, type Path2DCommand, type Path2DData, type Path2DDrawStyle, Path2DSet, type Path2DStyle, PloygonCurve, QuadraticBezierCurve, RectangleCurve, RoundRectangleCurve, SplineCurve, type StrokeLinecap, type StrokeLinejoin, type StrokeTriangulateOptions, type StrokeTriangulateResult, Vector2, type VectorLike, catmullRom, cubicBezier, drawPoint, fillTriangulate, getAdaptiveCubicBezierCurvePoints, getAdaptiveQuadraticBezierCurvePoints, parseArcCommand, parsePathDataArgs, quadraticBezier, setCanvasContext, strokeTriangulate, svgPathCommandsAddToPath2D, svgPathCommandsToData, svgPathDataToCommands, svgToDom, svgToPath2DSet };
|
package/dist/index.d.mts
CHANGED
|
@@ -138,6 +138,7 @@ declare abstract class Curve {
|
|
|
138
138
|
getPointAt(u: number, output?: Vector2): Vector2;
|
|
139
139
|
isClockwise(): boolean;
|
|
140
140
|
getControlPointRefs(): Vector2[];
|
|
141
|
+
applyTransform(transform: Matrix3): this;
|
|
141
142
|
getUnevenPointArray(count?: number, output?: number[]): number[];
|
|
142
143
|
getSpacedPointArray(count?: number, output?: number[]): number[];
|
|
143
144
|
getAdaptivePointArray(output?: number[]): number[];
|
|
@@ -155,7 +156,6 @@ declare abstract class Curve {
|
|
|
155
156
|
getNormal(t: number, output?: Vector2): Vector2;
|
|
156
157
|
getNormalAt(u: number, output?: Vector2): Vector2;
|
|
157
158
|
getTForPoint(target: VectorLike, epsilon?: number): number;
|
|
158
|
-
matrix(matrix: Matrix3): this;
|
|
159
159
|
getMinMax(min?: Vector2, max?: Vector2): {
|
|
160
160
|
min: Vector2;
|
|
161
161
|
max: Vector2;
|
|
@@ -170,19 +170,32 @@ declare abstract class Curve {
|
|
|
170
170
|
clone(): this;
|
|
171
171
|
}
|
|
172
172
|
|
|
173
|
-
declare class
|
|
174
|
-
|
|
173
|
+
declare class RoundCurve extends Curve {
|
|
174
|
+
_center: Vector2;
|
|
175
|
+
_radius: Vector2;
|
|
176
|
+
_diff: Vector2;
|
|
177
|
+
rotate: number;
|
|
175
178
|
startAngle: number;
|
|
176
179
|
endAngle: number;
|
|
177
180
|
clockwise: boolean;
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
+
get cx(): number;
|
|
182
|
+
set cx(val: number);
|
|
183
|
+
get cy(): number;
|
|
184
|
+
set cy(val: number);
|
|
185
|
+
get rx(): number;
|
|
186
|
+
set rx(val: number);
|
|
187
|
+
get ry(): number;
|
|
188
|
+
set ry(val: number);
|
|
189
|
+
get dx(): number;
|
|
190
|
+
set dx(val: number);
|
|
191
|
+
get dy(): number;
|
|
192
|
+
set dy(val: number);
|
|
193
|
+
constructor(_center: Vector2, _radius: Vector2, _diff: Vector2, rotate?: number, startAngle?: number, endAngle?: number, clockwise?: boolean);
|
|
181
194
|
isClockwise(): boolean;
|
|
182
195
|
getPoint(t: number, output?: Vector2): Vector2;
|
|
183
196
|
toCommands(): Path2DCommand[];
|
|
184
197
|
drawTo(ctx: CanvasRenderingContext2D): this;
|
|
185
|
-
|
|
198
|
+
applyTransform(matrix: Matrix3): this;
|
|
186
199
|
getControlPointRefs(): Vector2[];
|
|
187
200
|
getAdaptivePointArray(output?: number[]): number[];
|
|
188
201
|
fillTriangulate(options?: FillTriangulateOptions): FillTriangulateResult;
|
|
@@ -190,11 +203,13 @@ declare class EllipseCurve extends Curve {
|
|
|
190
203
|
min: Vector2;
|
|
191
204
|
max: Vector2;
|
|
192
205
|
};
|
|
193
|
-
copy(source:
|
|
206
|
+
copy(source: RoundCurve): this;
|
|
194
207
|
}
|
|
195
208
|
|
|
196
|
-
declare class ArcCurve extends
|
|
209
|
+
declare class ArcCurve extends RoundCurve {
|
|
210
|
+
readonly radius: number;
|
|
197
211
|
constructor(cx?: number, cy?: number, radius?: number, startAngle?: number, endAngle?: number, clockwise?: boolean);
|
|
212
|
+
drawTo(ctx: CanvasRenderingContext2D): this;
|
|
198
213
|
getAdaptivePointArray(output?: number[]): number[];
|
|
199
214
|
}
|
|
200
215
|
|
|
@@ -220,8 +235,8 @@ declare class CubicBezierCurve extends Curve {
|
|
|
220
235
|
cp1: Vector2;
|
|
221
236
|
cp2: Vector2;
|
|
222
237
|
p2: Vector2;
|
|
223
|
-
static from(
|
|
224
|
-
constructor(
|
|
238
|
+
static from(p1x: number, p1y: number, cp1x: number, cp1y: number, cp2x: number, cp2y: number, p2x: number, p2y: number): CubicBezierCurve;
|
|
239
|
+
constructor(p1: Vector2, cp1: Vector2, cp2: Vector2, p2: Vector2);
|
|
225
240
|
getPoint(t: number, output?: Vector2): Vector2;
|
|
226
241
|
getAdaptivePointArray(output?: number[]): number[];
|
|
227
242
|
getControlPointRefs(): Vector2[];
|
|
@@ -235,11 +250,16 @@ declare class CubicBezierCurve extends Curve {
|
|
|
235
250
|
copy(source: CubicBezierCurve): this;
|
|
236
251
|
}
|
|
237
252
|
|
|
253
|
+
declare class EllipseCurve extends RoundCurve {
|
|
254
|
+
constructor(cx?: number, cy?: number, rx?: number, ry?: number, rotate?: number, startAngle?: number, endAngle?: number, clockwise?: boolean);
|
|
255
|
+
drawTo(ctx: CanvasRenderingContext2D): this;
|
|
256
|
+
}
|
|
257
|
+
|
|
238
258
|
declare class LineCurve extends Curve {
|
|
239
259
|
p1: Vector2;
|
|
240
260
|
p2: Vector2;
|
|
241
|
-
static from(
|
|
242
|
-
constructor(
|
|
261
|
+
static from(p1x: number, p1y: number, p2x: number, p2y: number): LineCurve;
|
|
262
|
+
constructor(p1: Vector2, p2: Vector2);
|
|
243
263
|
getPoint(t: number, output?: Vector2): Vector2;
|
|
244
264
|
getPointAt(u: number, output?: Vector2): Vector2;
|
|
245
265
|
getTangent(_t: number, output?: Vector2): Vector2;
|
|
@@ -256,15 +276,22 @@ declare class LineCurve extends Curve {
|
|
|
256
276
|
}
|
|
257
277
|
|
|
258
278
|
declare class PloygonCurve extends CompositeCurve<LineCurve> {
|
|
259
|
-
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
declare class EquilateralPloygonCurve extends PloygonCurve {
|
|
282
|
+
readonly cx: number;
|
|
283
|
+
readonly cy: number;
|
|
284
|
+
readonly radius: number;
|
|
285
|
+
readonly sideCount: number;
|
|
286
|
+
constructor(cx?: number, cy?: number, radius?: number, sideCount?: number);
|
|
260
287
|
}
|
|
261
288
|
|
|
262
289
|
declare class QuadraticBezierCurve extends Curve {
|
|
263
290
|
p1: Vector2;
|
|
264
291
|
cp: Vector2;
|
|
265
292
|
p2: Vector2;
|
|
266
|
-
static from(
|
|
267
|
-
constructor(
|
|
293
|
+
static from(p1x: number, p1y: number, cpx: number, cpy: number, p2x: number, p2y: number): QuadraticBezierCurve;
|
|
294
|
+
constructor(p1: Vector2, cp: Vector2, p2: Vector2);
|
|
268
295
|
getPoint(t: number, output?: Vector2): Vector2;
|
|
269
296
|
getControlPointRefs(): Vector2[];
|
|
270
297
|
getAdaptivePointArray(output?: number[]): number[];
|
|
@@ -278,14 +305,25 @@ declare class QuadraticBezierCurve extends Curve {
|
|
|
278
305
|
}
|
|
279
306
|
|
|
280
307
|
declare class RectangleCurve extends PloygonCurve {
|
|
281
|
-
x: number;
|
|
282
|
-
y: number;
|
|
283
|
-
width: number;
|
|
284
|
-
height: number;
|
|
308
|
+
readonly x: number;
|
|
309
|
+
readonly y: number;
|
|
310
|
+
readonly width: number;
|
|
311
|
+
readonly height: number;
|
|
285
312
|
constructor(x?: number, y?: number, width?: number, height?: number);
|
|
313
|
+
drawTo(ctx: CanvasRenderingContext2D): this;
|
|
286
314
|
fillTriangulate(options?: FillTriangulateOptions): FillTriangulateResult;
|
|
287
315
|
}
|
|
288
316
|
|
|
317
|
+
declare class RoundRectangleCurve extends RoundCurve {
|
|
318
|
+
readonly x: number;
|
|
319
|
+
readonly y: number;
|
|
320
|
+
readonly width: number;
|
|
321
|
+
readonly height: number;
|
|
322
|
+
readonly radius: number;
|
|
323
|
+
constructor(x?: number, y?: number, width?: number, height?: number, radius?: number);
|
|
324
|
+
drawTo(ctx: CanvasRenderingContext2D): this;
|
|
325
|
+
}
|
|
326
|
+
|
|
289
327
|
declare class SplineCurve extends Curve {
|
|
290
328
|
points: Vector2[];
|
|
291
329
|
constructor(points?: Vector2[]);
|
|
@@ -370,7 +408,8 @@ declare class CurvePath extends CompositeCurve {
|
|
|
370
408
|
arcTo(x1: number, y1: number, x2: number, y2: number, radius: number): this;
|
|
371
409
|
ellipse(x: number, y: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, counterclockwise?: boolean): this;
|
|
372
410
|
relativeEllipse(x: number, y: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, counterclockwise?: boolean): this;
|
|
373
|
-
rect(x: number, y: number,
|
|
411
|
+
rect(x: number, y: number, width: number, height: number): this;
|
|
412
|
+
roundRect(x: number, y: number, width: number, height: number, radii: number): this;
|
|
374
413
|
splineThru(points: Vector2[]): this;
|
|
375
414
|
drawTo(ctx: CanvasRenderingContext2D): this;
|
|
376
415
|
copy(source: CurvePath): this;
|
|
@@ -428,7 +467,8 @@ declare class Path2D extends CompositeCurve<CurvePath> {
|
|
|
428
467
|
arc(x: number, y: number, radius: number, startAngle: number, endAngle: number, counterclockwise?: boolean): this;
|
|
429
468
|
arcTo(x1: number, y1: number, x2: number, y2: number, radius: number): this;
|
|
430
469
|
ellipse(x: number, y: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, counterclockwise?: boolean): this;
|
|
431
|
-
rect(x: number, y: number,
|
|
470
|
+
rect(x: number, y: number, width: number, height: number): this;
|
|
471
|
+
roundRect(x: number, y: number, width: number, height: number, radii: number): this;
|
|
432
472
|
addCommands(commands: Path2DCommand[]): this;
|
|
433
473
|
addData(data: Path2DData): this;
|
|
434
474
|
splineThru(points: Vector2[]): this;
|
|
@@ -436,7 +476,7 @@ declare class Path2D extends CompositeCurve<CurvePath> {
|
|
|
436
476
|
skew(ax: number, ay?: number, target?: VectorLike): this;
|
|
437
477
|
rotate(a: number, target?: VectorLike): this;
|
|
438
478
|
bold(b: number): this;
|
|
439
|
-
|
|
479
|
+
applyTransform(transform: Matrix3): this;
|
|
440
480
|
getMinMax(min?: Vector2, max?: Vector2, withStyle?: boolean): {
|
|
441
481
|
min: Vector2;
|
|
442
482
|
max: Vector2;
|
|
@@ -489,7 +529,8 @@ declare function svgPathCommandsToData(commands: Path2DCommand[]): Path2DData;
|
|
|
489
529
|
|
|
490
530
|
declare function svgPathDataToCommands(data: Path2DData): Path2DCommand[];
|
|
491
531
|
|
|
492
|
-
declare function
|
|
493
|
-
|
|
532
|
+
declare function svgToDom(svg: string | SVGElement): SVGElement;
|
|
533
|
+
|
|
534
|
+
declare function svgToPath2DSet(svg: string | SVGElement): Path2DSet;
|
|
494
535
|
|
|
495
|
-
export { ArcCurve, BoundingBox, CompositeCurve, CubicBezierCurve, Curve, CurvePath, type DrawPointOptions, EllipseCurve, type FillRule, type FillTriangulateOptions, type FillTriangulateResult, type LineCap, LineCurve, type LineJoin, type LineStyle, Matrix3, Path2D, type Path2DCommand, type Path2DData, type Path2DDrawStyle, Path2DSet, type Path2DStyle, PloygonCurve, QuadraticBezierCurve, RectangleCurve, SplineCurve, type StrokeLinecap, type StrokeLinejoin, type StrokeTriangulateOptions, type StrokeTriangulateResult, Vector2, type VectorLike, catmullRom, cubicBezier, drawPoint, fillTriangulate, getAdaptiveCubicBezierCurvePoints, getAdaptiveQuadraticBezierCurvePoints, parseArcCommand, parsePathDataArgs,
|
|
536
|
+
export { ArcCurve, BoundingBox, CompositeCurve, CubicBezierCurve, Curve, CurvePath, type DrawPointOptions, EllipseCurve, EquilateralPloygonCurve, type FillRule, type FillTriangulateOptions, type FillTriangulateResult, type LineCap, LineCurve, type LineJoin, type LineStyle, Matrix3, Path2D, type Path2DCommand, type Path2DData, type Path2DDrawStyle, Path2DSet, type Path2DStyle, PloygonCurve, QuadraticBezierCurve, RectangleCurve, RoundRectangleCurve, SplineCurve, type StrokeLinecap, type StrokeLinejoin, type StrokeTriangulateOptions, type StrokeTriangulateResult, Vector2, type VectorLike, catmullRom, cubicBezier, drawPoint, fillTriangulate, getAdaptiveCubicBezierCurvePoints, getAdaptiveQuadraticBezierCurvePoints, parseArcCommand, parsePathDataArgs, quadraticBezier, setCanvasContext, strokeTriangulate, svgPathCommandsAddToPath2D, svgPathCommandsToData, svgPathDataToCommands, svgToDom, svgToPath2DSet };
|
package/dist/index.d.ts
CHANGED
|
@@ -138,6 +138,7 @@ declare abstract class Curve {
|
|
|
138
138
|
getPointAt(u: number, output?: Vector2): Vector2;
|
|
139
139
|
isClockwise(): boolean;
|
|
140
140
|
getControlPointRefs(): Vector2[];
|
|
141
|
+
applyTransform(transform: Matrix3): this;
|
|
141
142
|
getUnevenPointArray(count?: number, output?: number[]): number[];
|
|
142
143
|
getSpacedPointArray(count?: number, output?: number[]): number[];
|
|
143
144
|
getAdaptivePointArray(output?: number[]): number[];
|
|
@@ -155,7 +156,6 @@ declare abstract class Curve {
|
|
|
155
156
|
getNormal(t: number, output?: Vector2): Vector2;
|
|
156
157
|
getNormalAt(u: number, output?: Vector2): Vector2;
|
|
157
158
|
getTForPoint(target: VectorLike, epsilon?: number): number;
|
|
158
|
-
matrix(matrix: Matrix3): this;
|
|
159
159
|
getMinMax(min?: Vector2, max?: Vector2): {
|
|
160
160
|
min: Vector2;
|
|
161
161
|
max: Vector2;
|
|
@@ -170,19 +170,32 @@ declare abstract class Curve {
|
|
|
170
170
|
clone(): this;
|
|
171
171
|
}
|
|
172
172
|
|
|
173
|
-
declare class
|
|
174
|
-
|
|
173
|
+
declare class RoundCurve extends Curve {
|
|
174
|
+
_center: Vector2;
|
|
175
|
+
_radius: Vector2;
|
|
176
|
+
_diff: Vector2;
|
|
177
|
+
rotate: number;
|
|
175
178
|
startAngle: number;
|
|
176
179
|
endAngle: number;
|
|
177
180
|
clockwise: boolean;
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
+
get cx(): number;
|
|
182
|
+
set cx(val: number);
|
|
183
|
+
get cy(): number;
|
|
184
|
+
set cy(val: number);
|
|
185
|
+
get rx(): number;
|
|
186
|
+
set rx(val: number);
|
|
187
|
+
get ry(): number;
|
|
188
|
+
set ry(val: number);
|
|
189
|
+
get dx(): number;
|
|
190
|
+
set dx(val: number);
|
|
191
|
+
get dy(): number;
|
|
192
|
+
set dy(val: number);
|
|
193
|
+
constructor(_center: Vector2, _radius: Vector2, _diff: Vector2, rotate?: number, startAngle?: number, endAngle?: number, clockwise?: boolean);
|
|
181
194
|
isClockwise(): boolean;
|
|
182
195
|
getPoint(t: number, output?: Vector2): Vector2;
|
|
183
196
|
toCommands(): Path2DCommand[];
|
|
184
197
|
drawTo(ctx: CanvasRenderingContext2D): this;
|
|
185
|
-
|
|
198
|
+
applyTransform(matrix: Matrix3): this;
|
|
186
199
|
getControlPointRefs(): Vector2[];
|
|
187
200
|
getAdaptivePointArray(output?: number[]): number[];
|
|
188
201
|
fillTriangulate(options?: FillTriangulateOptions): FillTriangulateResult;
|
|
@@ -190,11 +203,13 @@ declare class EllipseCurve extends Curve {
|
|
|
190
203
|
min: Vector2;
|
|
191
204
|
max: Vector2;
|
|
192
205
|
};
|
|
193
|
-
copy(source:
|
|
206
|
+
copy(source: RoundCurve): this;
|
|
194
207
|
}
|
|
195
208
|
|
|
196
|
-
declare class ArcCurve extends
|
|
209
|
+
declare class ArcCurve extends RoundCurve {
|
|
210
|
+
readonly radius: number;
|
|
197
211
|
constructor(cx?: number, cy?: number, radius?: number, startAngle?: number, endAngle?: number, clockwise?: boolean);
|
|
212
|
+
drawTo(ctx: CanvasRenderingContext2D): this;
|
|
198
213
|
getAdaptivePointArray(output?: number[]): number[];
|
|
199
214
|
}
|
|
200
215
|
|
|
@@ -220,8 +235,8 @@ declare class CubicBezierCurve extends Curve {
|
|
|
220
235
|
cp1: Vector2;
|
|
221
236
|
cp2: Vector2;
|
|
222
237
|
p2: Vector2;
|
|
223
|
-
static from(
|
|
224
|
-
constructor(
|
|
238
|
+
static from(p1x: number, p1y: number, cp1x: number, cp1y: number, cp2x: number, cp2y: number, p2x: number, p2y: number): CubicBezierCurve;
|
|
239
|
+
constructor(p1: Vector2, cp1: Vector2, cp2: Vector2, p2: Vector2);
|
|
225
240
|
getPoint(t: number, output?: Vector2): Vector2;
|
|
226
241
|
getAdaptivePointArray(output?: number[]): number[];
|
|
227
242
|
getControlPointRefs(): Vector2[];
|
|
@@ -235,11 +250,16 @@ declare class CubicBezierCurve extends Curve {
|
|
|
235
250
|
copy(source: CubicBezierCurve): this;
|
|
236
251
|
}
|
|
237
252
|
|
|
253
|
+
declare class EllipseCurve extends RoundCurve {
|
|
254
|
+
constructor(cx?: number, cy?: number, rx?: number, ry?: number, rotate?: number, startAngle?: number, endAngle?: number, clockwise?: boolean);
|
|
255
|
+
drawTo(ctx: CanvasRenderingContext2D): this;
|
|
256
|
+
}
|
|
257
|
+
|
|
238
258
|
declare class LineCurve extends Curve {
|
|
239
259
|
p1: Vector2;
|
|
240
260
|
p2: Vector2;
|
|
241
|
-
static from(
|
|
242
|
-
constructor(
|
|
261
|
+
static from(p1x: number, p1y: number, p2x: number, p2y: number): LineCurve;
|
|
262
|
+
constructor(p1: Vector2, p2: Vector2);
|
|
243
263
|
getPoint(t: number, output?: Vector2): Vector2;
|
|
244
264
|
getPointAt(u: number, output?: Vector2): Vector2;
|
|
245
265
|
getTangent(_t: number, output?: Vector2): Vector2;
|
|
@@ -256,15 +276,22 @@ declare class LineCurve extends Curve {
|
|
|
256
276
|
}
|
|
257
277
|
|
|
258
278
|
declare class PloygonCurve extends CompositeCurve<LineCurve> {
|
|
259
|
-
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
declare class EquilateralPloygonCurve extends PloygonCurve {
|
|
282
|
+
readonly cx: number;
|
|
283
|
+
readonly cy: number;
|
|
284
|
+
readonly radius: number;
|
|
285
|
+
readonly sideCount: number;
|
|
286
|
+
constructor(cx?: number, cy?: number, radius?: number, sideCount?: number);
|
|
260
287
|
}
|
|
261
288
|
|
|
262
289
|
declare class QuadraticBezierCurve extends Curve {
|
|
263
290
|
p1: Vector2;
|
|
264
291
|
cp: Vector2;
|
|
265
292
|
p2: Vector2;
|
|
266
|
-
static from(
|
|
267
|
-
constructor(
|
|
293
|
+
static from(p1x: number, p1y: number, cpx: number, cpy: number, p2x: number, p2y: number): QuadraticBezierCurve;
|
|
294
|
+
constructor(p1: Vector2, cp: Vector2, p2: Vector2);
|
|
268
295
|
getPoint(t: number, output?: Vector2): Vector2;
|
|
269
296
|
getControlPointRefs(): Vector2[];
|
|
270
297
|
getAdaptivePointArray(output?: number[]): number[];
|
|
@@ -278,14 +305,25 @@ declare class QuadraticBezierCurve extends Curve {
|
|
|
278
305
|
}
|
|
279
306
|
|
|
280
307
|
declare class RectangleCurve extends PloygonCurve {
|
|
281
|
-
x: number;
|
|
282
|
-
y: number;
|
|
283
|
-
width: number;
|
|
284
|
-
height: number;
|
|
308
|
+
readonly x: number;
|
|
309
|
+
readonly y: number;
|
|
310
|
+
readonly width: number;
|
|
311
|
+
readonly height: number;
|
|
285
312
|
constructor(x?: number, y?: number, width?: number, height?: number);
|
|
313
|
+
drawTo(ctx: CanvasRenderingContext2D): this;
|
|
286
314
|
fillTriangulate(options?: FillTriangulateOptions): FillTriangulateResult;
|
|
287
315
|
}
|
|
288
316
|
|
|
317
|
+
declare class RoundRectangleCurve extends RoundCurve {
|
|
318
|
+
readonly x: number;
|
|
319
|
+
readonly y: number;
|
|
320
|
+
readonly width: number;
|
|
321
|
+
readonly height: number;
|
|
322
|
+
readonly radius: number;
|
|
323
|
+
constructor(x?: number, y?: number, width?: number, height?: number, radius?: number);
|
|
324
|
+
drawTo(ctx: CanvasRenderingContext2D): this;
|
|
325
|
+
}
|
|
326
|
+
|
|
289
327
|
declare class SplineCurve extends Curve {
|
|
290
328
|
points: Vector2[];
|
|
291
329
|
constructor(points?: Vector2[]);
|
|
@@ -370,7 +408,8 @@ declare class CurvePath extends CompositeCurve {
|
|
|
370
408
|
arcTo(x1: number, y1: number, x2: number, y2: number, radius: number): this;
|
|
371
409
|
ellipse(x: number, y: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, counterclockwise?: boolean): this;
|
|
372
410
|
relativeEllipse(x: number, y: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, counterclockwise?: boolean): this;
|
|
373
|
-
rect(x: number, y: number,
|
|
411
|
+
rect(x: number, y: number, width: number, height: number): this;
|
|
412
|
+
roundRect(x: number, y: number, width: number, height: number, radii: number): this;
|
|
374
413
|
splineThru(points: Vector2[]): this;
|
|
375
414
|
drawTo(ctx: CanvasRenderingContext2D): this;
|
|
376
415
|
copy(source: CurvePath): this;
|
|
@@ -428,7 +467,8 @@ declare class Path2D extends CompositeCurve<CurvePath> {
|
|
|
428
467
|
arc(x: number, y: number, radius: number, startAngle: number, endAngle: number, counterclockwise?: boolean): this;
|
|
429
468
|
arcTo(x1: number, y1: number, x2: number, y2: number, radius: number): this;
|
|
430
469
|
ellipse(x: number, y: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, counterclockwise?: boolean): this;
|
|
431
|
-
rect(x: number, y: number,
|
|
470
|
+
rect(x: number, y: number, width: number, height: number): this;
|
|
471
|
+
roundRect(x: number, y: number, width: number, height: number, radii: number): this;
|
|
432
472
|
addCommands(commands: Path2DCommand[]): this;
|
|
433
473
|
addData(data: Path2DData): this;
|
|
434
474
|
splineThru(points: Vector2[]): this;
|
|
@@ -436,7 +476,7 @@ declare class Path2D extends CompositeCurve<CurvePath> {
|
|
|
436
476
|
skew(ax: number, ay?: number, target?: VectorLike): this;
|
|
437
477
|
rotate(a: number, target?: VectorLike): this;
|
|
438
478
|
bold(b: number): this;
|
|
439
|
-
|
|
479
|
+
applyTransform(transform: Matrix3): this;
|
|
440
480
|
getMinMax(min?: Vector2, max?: Vector2, withStyle?: boolean): {
|
|
441
481
|
min: Vector2;
|
|
442
482
|
max: Vector2;
|
|
@@ -489,7 +529,8 @@ declare function svgPathCommandsToData(commands: Path2DCommand[]): Path2DData;
|
|
|
489
529
|
|
|
490
530
|
declare function svgPathDataToCommands(data: Path2DData): Path2DCommand[];
|
|
491
531
|
|
|
492
|
-
declare function
|
|
493
|
-
|
|
532
|
+
declare function svgToDom(svg: string | SVGElement): SVGElement;
|
|
533
|
+
|
|
534
|
+
declare function svgToPath2DSet(svg: string | SVGElement): Path2DSet;
|
|
494
535
|
|
|
495
|
-
export { ArcCurve, BoundingBox, CompositeCurve, CubicBezierCurve, Curve, CurvePath, type DrawPointOptions, EllipseCurve, type FillRule, type FillTriangulateOptions, type FillTriangulateResult, type LineCap, LineCurve, type LineJoin, type LineStyle, Matrix3, Path2D, type Path2DCommand, type Path2DData, type Path2DDrawStyle, Path2DSet, type Path2DStyle, PloygonCurve, QuadraticBezierCurve, RectangleCurve, SplineCurve, type StrokeLinecap, type StrokeLinejoin, type StrokeTriangulateOptions, type StrokeTriangulateResult, Vector2, type VectorLike, catmullRom, cubicBezier, drawPoint, fillTriangulate, getAdaptiveCubicBezierCurvePoints, getAdaptiveQuadraticBezierCurvePoints, parseArcCommand, parsePathDataArgs,
|
|
536
|
+
export { ArcCurve, BoundingBox, CompositeCurve, CubicBezierCurve, Curve, CurvePath, type DrawPointOptions, EllipseCurve, EquilateralPloygonCurve, type FillRule, type FillTriangulateOptions, type FillTriangulateResult, type LineCap, LineCurve, type LineJoin, type LineStyle, Matrix3, Path2D, type Path2DCommand, type Path2DData, type Path2DDrawStyle, Path2DSet, type Path2DStyle, PloygonCurve, QuadraticBezierCurve, RectangleCurve, RoundRectangleCurve, SplineCurve, type StrokeLinecap, type StrokeLinejoin, type StrokeTriangulateOptions, type StrokeTriangulateResult, Vector2, type VectorLike, catmullRom, cubicBezier, drawPoint, fillTriangulate, getAdaptiveCubicBezierCurvePoints, getAdaptiveQuadraticBezierCurvePoints, parseArcCommand, parsePathDataArgs, quadraticBezier, setCanvasContext, strokeTriangulate, svgPathCommandsAddToPath2D, svgPathCommandsToData, svgPathDataToCommands, svgToDom, svgToPath2DSet };
|