@revideo/2d 0.3.5-yellow.968 → 0.3.5
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/editor/editor/tsconfig.build.tsbuildinfo +1 -1
- package/editor/index.js +151 -380
- package/editor/index.js.map +1 -1
- package/lib/code/CodeCursor.d.ts +74 -74
- package/lib/code/CodeDiffer.d.ts +16 -21
- package/lib/code/CodeDiffer.js +41 -39
- package/lib/code/CodeFragment.d.ts +8 -16
- package/lib/code/CodeFragment.js +36 -36
- package/lib/code/CodeHighlighter.d.ts +59 -59
- package/lib/code/CodeHighlighter.js +1 -1
- package/lib/code/CodeMetrics.d.ts +8 -12
- package/lib/code/CodeMetrics.js +24 -26
- package/lib/code/CodeRange.d.ts +5 -21
- package/lib/code/CodeRange.js +124 -131
- package/lib/code/CodeScope.d.ts +8 -18
- package/lib/code/CodeSelection.d.ts +4 -9
- package/lib/code/CodeSelection.js +8 -8
- package/lib/code/CodeSignal.d.ts +47 -74
- package/lib/code/CodeTokenizer.d.ts +1 -1
- package/lib/code/CodeTokenizer.js +41 -41
- package/lib/code/DefaultHighlightStyle.d.ts +2 -2
- package/lib/code/DefaultHighlightStyle.js +96 -96
- package/lib/code/LezerHighlighter.d.ts +19 -21
- package/lib/code/diff.d.ts +9 -12
- package/lib/code/diff.js +205 -218
- package/lib/code/extractRange.d.ts +4 -7
- package/lib/code/extractRange.js +71 -79
- package/lib/code/index.d.ts +1 -1
- package/lib/code/index.js +1 -1
- package/lib/components/Audio.d.ts +11 -11
- package/lib/components/Bezier.d.ts +18 -18
- package/lib/components/Circle.d.ts +90 -95
- package/lib/components/Code.d.ts +211 -244
- package/lib/components/CubicBezier.d.ts +36 -36
- package/lib/components/Curve.d.ts +198 -208
- package/lib/components/Grid.d.ts +42 -47
- package/lib/components/Icon.d.ts +50 -55
- package/lib/components/Img.d.ts +79 -86
- package/lib/components/Knot.d.ts +78 -97
- package/lib/components/Latex.d.ts +12 -12
- package/lib/components/Layout.d.ts +413 -455
- package/lib/components/Line.d.ts +49 -61
- package/lib/components/Media.d.ts +36 -36
- package/lib/components/Polygon.d.ts +55 -60
- package/lib/components/QuadBezier.d.ts +29 -29
- package/lib/components/Ray.d.ts +28 -28
- package/lib/components/Rect.d.ts +108 -115
- package/lib/components/Spline.d.ts +40 -46
- package/lib/components/Txt.d.ts +44 -55
- package/lib/components/TxtLeaf.d.ts +16 -20
- package/lib/components/View2D.d.ts +22 -22
- package/lib/components/index.d.ts +1 -1
- package/lib/components/types.d.ts +9 -22
- package/lib/curves/ArcSegment.d.ts +24 -36
- package/lib/curves/CircleSegment.d.ts +16 -26
- package/lib/curves/CubicBezierSegment.d.ts +13 -18
- package/lib/curves/CurveDrawingInfo.d.ts +9 -9
- package/lib/curves/CurvePoint.d.ts +13 -13
- package/lib/curves/CurveProfile.d.ts +5 -5
- package/lib/curves/CurveProfile.js +1 -1
- package/lib/curves/KnotInfo.d.ts +8 -8
- package/lib/curves/LineSegment.d.ts +14 -19
- package/lib/curves/Polynomial.d.ts +110 -110
- package/lib/curves/Polynomial2D.d.ts +20 -20
- package/lib/curves/PolynomialSegment.d.ts +37 -42
- package/lib/curves/QuadBezierSegment.d.ts +12 -12
- package/lib/curves/Segment.d.ts +7 -12
- package/lib/curves/UniformPolynomialCurveSampler.d.ts +34 -34
- package/lib/curves/createCurveProfileLerp.d.ts +6 -17
- package/lib/curves/getBezierSplineProfile.d.ts +4 -8
- package/lib/curves/getCircleProfile.d.ts +4 -10
- package/lib/curves/getPathProfile.d.ts +2 -2
- package/lib/curves/getPointAtDistance.d.ts +4 -7
- package/lib/curves/getPolylineProfile.d.ts +4 -8
- package/lib/curves/getRectProfile.d.ts +4 -9
- package/lib/curves/index.d.ts +1 -1
- package/lib/curves/index.js +1 -1
- package/lib/decorators/canvasStyleSignal.d.ts +3 -3
- package/lib/decorators/colorSignal.d.ts +1 -1
- package/lib/decorators/compound.d.ts +2 -4
- package/lib/decorators/computed.d.ts +1 -1
- package/lib/decorators/defaultStyle.d.ts +2 -5
- package/lib/decorators/filtersSignal.d.ts +8 -28
- package/lib/decorators/index.d.ts +1 -1
- package/lib/decorators/index.js +1 -1
- package/lib/decorators/initializers.d.ts +2 -5
- package/lib/decorators/initializers.js +19 -18
- package/lib/decorators/nodeName.d.ts +1 -1
- package/lib/decorators/nodeName.js +4 -4
- package/lib/decorators/signal.d.ts +20 -40
- package/lib/decorators/spacingSignal.d.ts +1 -1
- package/lib/decorators/vector2Signal.d.ts +7 -13
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/jsx-dev-runtime.d.ts +3 -3
- package/lib/jsx-dev-runtime.js +3 -3
- package/lib/jsx-runtime.d.ts +9 -19
- package/lib/jsx-runtime.js +18 -18
- package/lib/partials/Filter.d.ts +16 -24
- package/lib/partials/Gradient.d.ts +24 -30
- package/lib/partials/Pattern.d.ts +9 -14
- package/lib/partials/ShaderConfig.d.ts +74 -81
- package/lib/partials/index.d.ts +1 -1
- package/lib/partials/index.js +1 -1
- package/lib/partials/types.d.ts +6 -19
- package/lib/scenes/Scene2D.d.ts +23 -42
- package/lib/scenes/index.d.ts +1 -1
- package/lib/scenes/index.js +1 -1
- package/lib/scenes/makeScene2D.d.ts +5 -7
- package/lib/scenes/useScene2D.d.ts +2 -2
- package/lib/tsconfig.build.tsbuildinfo +1 -1
- package/lib/utils/diff.d.ts +18 -25
- package/lib/utils/diff.js +87 -84
- package/lib/utils/index.d.ts +1 -1
- package/lib/utils/index.js +1 -1
- package/lib/utils/is.d.ts +2 -4
- package/lib/utils/is.js +2 -2
- package/lib/utils/makeSignalExtensions.d.ts +4 -11
- package/package.json +5 -5
|
@@ -1,28 +1,18 @@
|
|
|
1
|
-
import {Vector2} from '@revideo/core';
|
|
2
|
-
import {CurvePoint} from './CurvePoint';
|
|
3
|
-
import {Segment} from './Segment';
|
|
1
|
+
import { Vector2 } from '@revideo/core';
|
|
2
|
+
import { CurvePoint } from './CurvePoint';
|
|
3
|
+
import { Segment } from './Segment';
|
|
4
4
|
export declare class CircleSegment extends Segment {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
to: Vector2,
|
|
18
|
-
counter: boolean,
|
|
19
|
-
);
|
|
20
|
-
get arcLength(): number;
|
|
21
|
-
draw(
|
|
22
|
-
context: CanvasRenderingContext2D | Path2D,
|
|
23
|
-
from: number,
|
|
24
|
-
to: number,
|
|
25
|
-
): [CurvePoint, CurvePoint];
|
|
26
|
-
getPoint(distance: number): CurvePoint;
|
|
5
|
+
private center;
|
|
6
|
+
private radius;
|
|
7
|
+
private from;
|
|
8
|
+
private to;
|
|
9
|
+
private counter;
|
|
10
|
+
private readonly length;
|
|
11
|
+
private readonly angle;
|
|
12
|
+
readonly points: Vector2[];
|
|
13
|
+
constructor(center: Vector2, radius: number, from: Vector2, to: Vector2, counter: boolean);
|
|
14
|
+
get arcLength(): number;
|
|
15
|
+
draw(context: CanvasRenderingContext2D | Path2D, from: number, to: number): [CurvePoint, CurvePoint];
|
|
16
|
+
getPoint(distance: number): CurvePoint;
|
|
27
17
|
}
|
|
28
|
-
//# sourceMappingURL=CircleSegment.d.ts.map
|
|
18
|
+
//# sourceMappingURL=CircleSegment.d.ts.map
|
|
@@ -1,23 +1,18 @@
|
|
|
1
|
-
import {Vector2} from '@revideo/core';
|
|
2
|
-
import {PolynomialSegment} from './PolynomialSegment';
|
|
1
|
+
import { Vector2 } from '@revideo/core';
|
|
2
|
+
import { PolynomialSegment } from './PolynomialSegment';
|
|
3
3
|
/**
|
|
4
4
|
* A spline segment representing a cubic Bézier curve.
|
|
5
5
|
*/
|
|
6
6
|
export declare class CubicBezierSegment extends PolynomialSegment {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
p0: Vector2,
|
|
18
|
-
p1: Vector2,
|
|
19
|
-
p2: Vector2,
|
|
20
|
-
p3: Vector2,
|
|
21
|
-
): number;
|
|
7
|
+
readonly p0: Vector2;
|
|
8
|
+
readonly p1: Vector2;
|
|
9
|
+
readonly p2: Vector2;
|
|
10
|
+
readonly p3: Vector2;
|
|
11
|
+
private static el;
|
|
12
|
+
get points(): Vector2[];
|
|
13
|
+
constructor(p0: Vector2, p1: Vector2, p2: Vector2, p3: Vector2);
|
|
14
|
+
split(t: number): [PolynomialSegment, PolynomialSegment];
|
|
15
|
+
protected doDraw(context: CanvasRenderingContext2D | Path2D): void;
|
|
16
|
+
protected static getLength(p0: Vector2, p1: Vector2, p2: Vector2, p3: Vector2): number;
|
|
22
17
|
}
|
|
23
|
-
//# sourceMappingURL=CubicBezierSegment.d.ts.map
|
|
18
|
+
//# sourceMappingURL=CubicBezierSegment.d.ts.map
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {Vector2} from '@revideo/core';
|
|
1
|
+
import { Vector2 } from '@revideo/core';
|
|
2
2
|
export interface CurveDrawingInfo {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
3
|
+
path: Path2D;
|
|
4
|
+
arrowSize: number;
|
|
5
|
+
endPoint: Vector2;
|
|
6
|
+
endTangent: Vector2;
|
|
7
|
+
startPoint: Vector2;
|
|
8
|
+
startTangent: Vector2;
|
|
9
|
+
startOffset: number;
|
|
10
10
|
}
|
|
11
|
-
//# sourceMappingURL=CurveDrawingInfo.d.ts.map
|
|
11
|
+
//# sourceMappingURL=CurveDrawingInfo.d.ts.map
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import type {Vector2} from '@revideo/core';
|
|
1
|
+
import type { Vector2 } from '@revideo/core';
|
|
2
2
|
export interface CurvePoint {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
3
|
+
position: Vector2;
|
|
4
|
+
/**
|
|
5
|
+
* @deprecated
|
|
6
|
+
* The tangent is currently inconsistent for different types of curves and may
|
|
7
|
+
* sometimes return the normal of the point, instead. This will be fixed in
|
|
8
|
+
* the next major version but is kept as is for now for backwards
|
|
9
|
+
* compatibility reasons. To always get the real tangent of the point, you can
|
|
10
|
+
* use `normal.flipped.perpendicular`, instead.
|
|
11
|
+
*/
|
|
12
|
+
tangent: Vector2;
|
|
13
|
+
normal: Vector2;
|
|
14
14
|
}
|
|
15
|
-
//# sourceMappingURL=CurvePoint.d.ts.map
|
|
15
|
+
//# sourceMappingURL=CurvePoint.d.ts.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {Segment} from './Segment';
|
|
1
|
+
import { Segment } from './Segment';
|
|
2
2
|
export interface CurveProfile {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
arcLength: number;
|
|
4
|
+
segments: Segment[];
|
|
5
|
+
minSin: number;
|
|
6
6
|
}
|
|
7
|
-
//# sourceMappingURL=CurveProfile.d.ts.map
|
|
7
|
+
//# sourceMappingURL=CurveProfile.d.ts.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ3VydmVQcm9maWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpYi9jdXJ2ZXMvQ3VydmVQcm9maWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ3VydmVQcm9maWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpYi9jdXJ2ZXMvQ3VydmVQcm9maWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
|
package/lib/curves/KnotInfo.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import {Vector2} from '@revideo/core';
|
|
1
|
+
import { Vector2 } from '@revideo/core';
|
|
2
2
|
export type KnotAutoHandles = {
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
start: number;
|
|
4
|
+
end: number;
|
|
5
5
|
};
|
|
6
6
|
export interface KnotInfo {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
7
|
+
position: Vector2;
|
|
8
|
+
startHandle: Vector2;
|
|
9
|
+
endHandle: Vector2;
|
|
10
|
+
auto: KnotAutoHandles;
|
|
11
11
|
}
|
|
12
|
-
//# sourceMappingURL=KnotInfo.d.ts.map
|
|
12
|
+
//# sourceMappingURL=KnotInfo.d.ts.map
|
|
@@ -1,21 +1,16 @@
|
|
|
1
|
-
import {Vector2} from '@revideo/core';
|
|
2
|
-
import {CurvePoint} from './CurvePoint';
|
|
3
|
-
import {Segment} from './Segment';
|
|
1
|
+
import { Vector2 } from '@revideo/core';
|
|
2
|
+
import { CurvePoint } from './CurvePoint';
|
|
3
|
+
import { Segment } from './Segment';
|
|
4
4
|
export declare class LineSegment extends Segment {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
start?: number,
|
|
16
|
-
end?: number,
|
|
17
|
-
move?: boolean,
|
|
18
|
-
): [CurvePoint, CurvePoint];
|
|
19
|
-
getPoint(distance: number): CurvePoint;
|
|
5
|
+
readonly from: Vector2;
|
|
6
|
+
readonly to: Vector2;
|
|
7
|
+
private readonly length;
|
|
8
|
+
private readonly vector;
|
|
9
|
+
private readonly normal;
|
|
10
|
+
readonly points: Vector2[];
|
|
11
|
+
constructor(from: Vector2, to: Vector2);
|
|
12
|
+
get arcLength(): number;
|
|
13
|
+
draw(context: CanvasRenderingContext2D | Path2D, start?: number, end?: number, move?: boolean): [CurvePoint, CurvePoint];
|
|
14
|
+
getPoint(distance: number): CurvePoint;
|
|
20
15
|
}
|
|
21
|
-
//# sourceMappingURL=LineSegment.d.ts.map
|
|
16
|
+
//# sourceMappingURL=LineSegment.d.ts.map
|
|
@@ -5,114 +5,114 @@
|
|
|
5
5
|
* https://github.com/FreyaHolmer/Mathfs/blob/master/Runtime/Curves/Polynomial.cs
|
|
6
6
|
*/
|
|
7
7
|
export declare class Polynomial {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
8
|
+
readonly c0: number;
|
|
9
|
+
readonly c1: number;
|
|
10
|
+
readonly c2: number;
|
|
11
|
+
readonly c3: number;
|
|
12
|
+
/**
|
|
13
|
+
* Constructs a constant polynomial
|
|
14
|
+
*
|
|
15
|
+
* @param c0 - The constant coefficient
|
|
16
|
+
*/
|
|
17
|
+
static constant(c0: number): Polynomial;
|
|
18
|
+
/**
|
|
19
|
+
* Constructs a linear polynomial
|
|
20
|
+
*
|
|
21
|
+
* @param c0 - The constant coefficient
|
|
22
|
+
* @param c1 - The linear coefficient
|
|
23
|
+
*/
|
|
24
|
+
static linear(c0: number, c1: number): Polynomial;
|
|
25
|
+
/**
|
|
26
|
+
* Constructs a quadratic polynomial
|
|
27
|
+
*
|
|
28
|
+
* @param c0 - The constant coefficient
|
|
29
|
+
* @param c1 - The linear coefficient
|
|
30
|
+
* @param c2 - The quadratic coefficient
|
|
31
|
+
*/
|
|
32
|
+
static quadratic(c0: number, c1: number, c2: number): Polynomial;
|
|
33
|
+
/**
|
|
34
|
+
* Constructs a cubic polynomial
|
|
35
|
+
*
|
|
36
|
+
* @param c0 - The constant coefficient
|
|
37
|
+
* @param c1 - The linear coefficient
|
|
38
|
+
* @param c2 - The quadratic coefficient
|
|
39
|
+
* @param c3 - The cubic coefficient
|
|
40
|
+
*/
|
|
41
|
+
static cubic(c0: number, c1: number, c2: number, c3: number): Polynomial;
|
|
42
|
+
/**
|
|
43
|
+
* The degree of the polynomial
|
|
44
|
+
*/
|
|
45
|
+
get degree(): number;
|
|
46
|
+
/**
|
|
47
|
+
* @param c0 - The constant coefficient
|
|
48
|
+
*/
|
|
49
|
+
constructor(c0: number);
|
|
50
|
+
/**
|
|
51
|
+
* @param c0 - The constant coefficient
|
|
52
|
+
* @param c1 - The linear coefficient
|
|
53
|
+
*/
|
|
54
|
+
constructor(c0: number, c1: number);
|
|
55
|
+
/**
|
|
56
|
+
* @param c0 - The constant coefficient
|
|
57
|
+
* @param c1 - The linear coefficient
|
|
58
|
+
* @param c2 - The quadratic coefficient
|
|
59
|
+
*/
|
|
60
|
+
constructor(c0: number, c1: number, c2: number);
|
|
61
|
+
/**
|
|
62
|
+
* @param c0 - The constant coefficient
|
|
63
|
+
* @param c1 - The linear coefficient
|
|
64
|
+
* @param c2 - The quadratic coefficient
|
|
65
|
+
* @param c3 - The cubic coefficient
|
|
66
|
+
*/
|
|
67
|
+
constructor(c0: number, c1: number, c2: number, c3: number);
|
|
68
|
+
/**
|
|
69
|
+
* Return the nth derivative of the polynomial.
|
|
70
|
+
*
|
|
71
|
+
* @param n - The number of times to differentiate the polynomial.
|
|
72
|
+
*/
|
|
73
|
+
differentiate(n?: number): Polynomial;
|
|
74
|
+
/**
|
|
75
|
+
* Evaluate the polynomial at the given value t.
|
|
76
|
+
*
|
|
77
|
+
* @param t - The value to sample at
|
|
78
|
+
*/
|
|
79
|
+
eval(t: number): number;
|
|
80
|
+
/**
|
|
81
|
+
* Evaluate the nth derivative of the polynomial at the given value t.
|
|
82
|
+
*
|
|
83
|
+
* @param t - The value to sample at
|
|
84
|
+
* @param derivative - The derivative of the polynomial to sample from
|
|
85
|
+
*/
|
|
86
|
+
eval(t: number, derivative: number): number;
|
|
87
|
+
/**
|
|
88
|
+
* Split the polynomial into two polynomials of the same overall shape.
|
|
89
|
+
*
|
|
90
|
+
* @param u - The point at which to split the polynomial.
|
|
91
|
+
*/
|
|
92
|
+
split(u: number): [Polynomial, Polynomial];
|
|
93
|
+
/**
|
|
94
|
+
* Calculate the roots (values where this polynomial = 0).
|
|
95
|
+
*
|
|
96
|
+
* @remarks
|
|
97
|
+
* Depending on the degree of the polynomial, returns between 0 and 3 results.
|
|
98
|
+
*/
|
|
99
|
+
roots(): number[];
|
|
100
|
+
/**
|
|
101
|
+
* Calculate the local extrema of the polynomial.
|
|
102
|
+
*/
|
|
103
|
+
localExtrema(): number[];
|
|
104
|
+
/**
|
|
105
|
+
* Calculate the local extrema of the polynomial in the unit interval.
|
|
106
|
+
*/
|
|
107
|
+
localExtrema01(): number[];
|
|
108
|
+
/**
|
|
109
|
+
* Return the output value range within the unit interval.
|
|
110
|
+
*/
|
|
111
|
+
outputRange01(): number[];
|
|
112
|
+
private solveCubicRoots;
|
|
113
|
+
private solveDepressedCubicRoots;
|
|
114
|
+
private solveQuadraticRoots;
|
|
115
|
+
private solveLinearRoot;
|
|
116
|
+
private almostZero;
|
|
117
117
|
}
|
|
118
|
-
//# sourceMappingURL=Polynomial.d.ts.map
|
|
118
|
+
//# sourceMappingURL=Polynomial.d.ts.map
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import {BBox, Vector2} from '@revideo/core';
|
|
2
|
-
import {Polynomial} from './Polynomial';
|
|
1
|
+
import { BBox, Vector2 } from '@revideo/core';
|
|
2
|
+
import { Polynomial } from './Polynomial';
|
|
3
3
|
export declare class Polynomial2D {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
4
|
+
readonly c0: Vector2 | Polynomial;
|
|
5
|
+
readonly c1: Vector2 | Polynomial;
|
|
6
|
+
readonly c2?: Vector2 | undefined;
|
|
7
|
+
readonly c3?: Vector2 | undefined;
|
|
8
|
+
readonly x: Polynomial;
|
|
9
|
+
readonly y: Polynomial;
|
|
10
|
+
constructor(c0: Vector2, c1: Vector2, c2: Vector2, c3: Vector2);
|
|
11
|
+
constructor(c0: Vector2, c1: Vector2, c2: Vector2);
|
|
12
|
+
constructor(x: Polynomial, y: Polynomial);
|
|
13
|
+
eval(t: number, derivative?: number): Vector2;
|
|
14
|
+
split(u: number): [Polynomial2D, Polynomial2D];
|
|
15
|
+
differentiate(n?: number): Polynomial2D;
|
|
16
|
+
evalDerivative(t: number): Vector2;
|
|
17
|
+
/**
|
|
18
|
+
* Calculate the tight axis-aligned bounds of the curve in the unit interval.
|
|
19
|
+
*/
|
|
20
|
+
getBounds(): BBox;
|
|
21
21
|
}
|
|
22
|
-
//# sourceMappingURL=Polynomial2D.d.ts.map
|
|
22
|
+
//# sourceMappingURL=Polynomial2D.d.ts.map
|
|
@@ -1,44 +1,39 @@
|
|
|
1
|
-
import {BBox, Vector2} from '@revideo/core';
|
|
2
|
-
import {CurvePoint} from './CurvePoint';
|
|
3
|
-
import {Polynomial2D} from './Polynomial2D';
|
|
4
|
-
import {Segment} from './Segment';
|
|
5
|
-
import {UniformPolynomialCurveSampler} from './UniformPolynomialCurveSampler';
|
|
1
|
+
import { BBox, Vector2 } from '@revideo/core';
|
|
2
|
+
import { CurvePoint } from './CurvePoint';
|
|
3
|
+
import { Polynomial2D } from './Polynomial2D';
|
|
4
|
+
import { Segment } from './Segment';
|
|
5
|
+
import { UniformPolynomialCurveSampler } from './UniformPolynomialCurveSampler';
|
|
6
6
|
export declare abstract class PolynomialSegment extends Segment {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
context: CanvasRenderingContext2D | Path2D
|
|
38
|
-
start?: number,
|
|
39
|
-
end?: number,
|
|
40
|
-
move?: boolean,
|
|
41
|
-
): [CurvePoint, CurvePoint];
|
|
42
|
-
protected abstract doDraw(context: CanvasRenderingContext2D | Path2D): void;
|
|
7
|
+
protected readonly curve: Polynomial2D;
|
|
8
|
+
protected readonly length: number;
|
|
9
|
+
protected readonly pointSampler: UniformPolynomialCurveSampler;
|
|
10
|
+
get arcLength(): number;
|
|
11
|
+
abstract get points(): Vector2[];
|
|
12
|
+
protected constructor(curve: Polynomial2D, length: number);
|
|
13
|
+
getBBox(): BBox;
|
|
14
|
+
/**
|
|
15
|
+
* Evaluate the polynomial at the given t value.
|
|
16
|
+
*
|
|
17
|
+
* @param t - The t value at which to evaluate the curve.
|
|
18
|
+
*/
|
|
19
|
+
eval(t: number): CurvePoint;
|
|
20
|
+
/**
|
|
21
|
+
* Split the curve into two separate polynomials at the given t value. The two
|
|
22
|
+
* resulting curves form the same overall shape as the original curve.
|
|
23
|
+
*
|
|
24
|
+
* @param t - The t value at which to split the curve.
|
|
25
|
+
*/
|
|
26
|
+
abstract split(t: number): [PolynomialSegment, PolynomialSegment];
|
|
27
|
+
getPoint(distance: number): CurvePoint;
|
|
28
|
+
transformPoints(matrix: DOMMatrix): Vector2[];
|
|
29
|
+
/**
|
|
30
|
+
* Return the tangent of the point that sits at the provided t value on the
|
|
31
|
+
* curve.
|
|
32
|
+
*
|
|
33
|
+
* @param t - The t value at which to evaluate the curve.
|
|
34
|
+
*/
|
|
35
|
+
tangent(t: number): Vector2;
|
|
36
|
+
draw(context: CanvasRenderingContext2D | Path2D, start?: number, end?: number, move?: boolean): [CurvePoint, CurvePoint];
|
|
37
|
+
protected abstract doDraw(context: CanvasRenderingContext2D | Path2D): void;
|
|
43
38
|
}
|
|
44
|
-
//# sourceMappingURL=PolynomialSegment.d.ts.map
|
|
39
|
+
//# sourceMappingURL=PolynomialSegment.d.ts.map
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import {Vector2} from '@revideo/core';
|
|
2
|
-
import {PolynomialSegment} from './PolynomialSegment';
|
|
1
|
+
import { Vector2 } from '@revideo/core';
|
|
2
|
+
import { PolynomialSegment } from './PolynomialSegment';
|
|
3
3
|
/**
|
|
4
4
|
* A spline segment representing a quadratic Bézier curve.
|
|
5
5
|
*/
|
|
6
6
|
export declare class QuadBezierSegment extends PolynomialSegment {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
7
|
+
readonly p0: Vector2;
|
|
8
|
+
readonly p1: Vector2;
|
|
9
|
+
readonly p2: Vector2;
|
|
10
|
+
private static el;
|
|
11
|
+
get points(): Vector2[];
|
|
12
|
+
constructor(p0: Vector2, p1: Vector2, p2: Vector2);
|
|
13
|
+
split(t: number): [PolynomialSegment, PolynomialSegment];
|
|
14
|
+
protected static getLength(p0: Vector2, p1: Vector2, p2: Vector2): number;
|
|
15
|
+
protected doDraw(context: CanvasRenderingContext2D | Path2D): void;
|
|
16
16
|
}
|
|
17
|
-
//# sourceMappingURL=QuadBezierSegment.d.ts.map
|
|
17
|
+
//# sourceMappingURL=QuadBezierSegment.d.ts.map
|
package/lib/curves/Segment.d.ts
CHANGED
|
@@ -1,14 +1,9 @@
|
|
|
1
|
-
import {Vector2} from '@revideo/core';
|
|
2
|
-
import {CurvePoint} from './CurvePoint';
|
|
1
|
+
import { Vector2 } from '@revideo/core';
|
|
2
|
+
import { CurvePoint } from './CurvePoint';
|
|
3
3
|
export declare abstract class Segment {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
end: number,
|
|
9
|
-
move: boolean,
|
|
10
|
-
): [CurvePoint, CurvePoint];
|
|
11
|
-
abstract getPoint(distance: number): CurvePoint;
|
|
12
|
-
abstract get arcLength(): number;
|
|
4
|
+
abstract readonly points: Vector2[];
|
|
5
|
+
abstract draw(context: CanvasRenderingContext2D | Path2D, start: number, end: number, move: boolean): [CurvePoint, CurvePoint];
|
|
6
|
+
abstract getPoint(distance: number): CurvePoint;
|
|
7
|
+
abstract get arcLength(): number;
|
|
13
8
|
}
|
|
14
|
-
//# sourceMappingURL=Segment.d.ts.map
|
|
9
|
+
//# sourceMappingURL=Segment.d.ts.map
|