figureone 0.15.10 → 1.0.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/figureone.min.js +1 -1
- package/index.js +79167 -0
- package/package.json +15 -1
- package/types/index.d.ts +132 -0
- package/types/js/figure/Animation/Animation.d.ts +36 -0
- package/types/js/figure/Animation/AnimationBuilder.d.ts +173 -0
- package/types/js/figure/Animation/AnimationManager.d.ts +392 -0
- package/types/js/figure/Animation/AnimationStep/CustomStep.d.ts +99 -0
- package/types/js/figure/Animation/AnimationStep/DelayStep.d.ts +24 -0
- package/types/js/figure/Animation/AnimationStep/ElementAnimationStep/ColorAnimationStep.d.ts +203 -0
- package/types/js/figure/Animation/AnimationStep/ElementAnimationStep/OpacityAnimationStep.d.ts +220 -0
- package/types/js/figure/Animation/AnimationStep/ElementAnimationStep/PositionAnimationStep.d.ts +124 -0
- package/types/js/figure/Animation/AnimationStep/ElementAnimationStep/PulseAnimationStep.d.ts +137 -0
- package/types/js/figure/Animation/AnimationStep/ElementAnimationStep/PulseTransformAnimationStep.d.ts +52 -0
- package/types/js/figure/Animation/AnimationStep/ElementAnimationStep/RotationAnimationStep.d.ts +119 -0
- package/types/js/figure/Animation/AnimationStep/ElementAnimationStep/ScaleAnimationStep.d.ts +93 -0
- package/types/js/figure/Animation/AnimationStep/ElementAnimationStep/ScenarioAnimationStep.d.ts +204 -0
- package/types/js/figure/Animation/AnimationStep/ElementAnimationStep/TransformAnimationStep.d.ts +163 -0
- package/types/js/figure/Animation/AnimationStep/ElementAnimationStep.d.ts +56 -0
- package/types/js/figure/Animation/AnimationStep/ParallelAnimationStep.d.ts +70 -0
- package/types/js/figure/Animation/AnimationStep/SerialAnimationStep.d.ts +84 -0
- package/types/js/figure/Animation/AnimationStep/TriggerStep.d.ts +106 -0
- package/types/js/figure/Animation/AnimationStep.d.ts +110 -0
- package/types/js/figure/DrawContext2D.d.ts +9 -0
- package/types/js/figure/DrawingObjects/DrawingObject.d.ts +45 -0
- package/types/js/figure/DrawingObjects/GLObject/GLObject.d.ts +146 -0
- package/types/js/figure/DrawingObjects/HTMLObject/HTMLObject.d.ts +29 -0
- package/types/js/figure/DrawingObjects/TextObject/TextObject.d.ts +94 -0
- package/types/js/figure/DrawingObjects/TextObject/glyphMeasures.d.ts +7 -0
- package/types/js/figure/DrawingObjects/VertexObject/VertexGeneric.d.ts +21 -0
- package/types/js/figure/DrawingObjects/VertexObject/VertexObject.d.ts +0 -0
- package/types/js/figure/DrawingObjects/VertexObject/VertexText.d.ts +34 -0
- package/types/js/figure/Element.d.ts +1212 -0
- package/types/js/figure/Equation/Elements/BaseAnnotationFunction.d.ts +118 -0
- package/types/js/figure/Equation/Elements/BaseEquationFunction.d.ts +20 -0
- package/types/js/figure/Equation/Elements/Bounds.d.ts +49 -0
- package/types/js/figure/Equation/Elements/Color.d.ts +7 -0
- package/types/js/figure/Equation/Elements/Container.d.ts +5 -0
- package/types/js/figure/Equation/Elements/Element.d.ts +95 -0
- package/types/js/figure/Equation/Elements/Fraction.d.ts +5 -0
- package/types/js/figure/Equation/Elements/Lines.d.ts +5 -0
- package/types/js/figure/Equation/Elements/Matrix.d.ts +5 -0
- package/types/js/figure/Equation/Elements/Offset.d.ts +5 -0
- package/types/js/figure/Equation/Elements/Scale.d.ts +5 -0
- package/types/js/figure/Equation/Equation.d.ts +984 -0
- package/types/js/figure/Equation/EquationForm.d.ts +139 -0
- package/types/js/figure/Equation/EquationFunctions.d.ts +3367 -0
- package/types/js/figure/Equation/EquationSymbols.d.ts +1646 -0
- package/types/js/figure/Equation/HTMLEquation.d.ts +56 -0
- package/types/js/figure/Equation/Symbols/AngleBracket.d.ts +6 -0
- package/types/js/figure/Equation/Symbols/Arrow.d.ts +17 -0
- package/types/js/figure/Equation/Symbols/Bar.d.ts +6 -0
- package/types/js/figure/Equation/Symbols/Box.d.ts +11 -0
- package/types/js/figure/Equation/Symbols/Brace.d.ts +6 -0
- package/types/js/figure/Equation/Symbols/Bracket.d.ts +8 -0
- package/types/js/figure/Equation/Symbols/Division.d.ts +8 -0
- package/types/js/figure/Equation/Symbols/Integral.d.ts +7 -0
- package/types/js/figure/Equation/Symbols/Line.d.ts +5 -0
- package/types/js/figure/Equation/Symbols/Product.d.ts +6 -0
- package/types/js/figure/Equation/Symbols/Radical.d.ts +9 -0
- package/types/js/figure/Equation/Symbols/SquareBracket.d.ts +6 -0
- package/types/js/figure/Equation/Symbols/Strike.d.ts +8 -0
- package/types/js/figure/Equation/Symbols/Sum.d.ts +6 -0
- package/types/js/figure/Equation/Symbols/SymbolNew.d.ts +15 -0
- package/types/js/figure/Equation/Symbols/Vinculum.d.ts +6 -0
- package/types/js/figure/Figure.d.ts +711 -0
- package/types/js/figure/FigureCollections/Angle.d.ts +766 -0
- package/types/js/figure/FigureCollections/Axis.d.ts +517 -0
- package/types/js/figure/FigureCollections/Axis3.d.ts +118 -0
- package/types/js/figure/FigureCollections/Button.d.ts +195 -0
- package/types/js/figure/FigureCollections/EquationLabel.d.ts +77 -0
- package/types/js/figure/FigureCollections/FigureCollections.d.ts +122 -0
- package/types/js/figure/FigureCollections/Legend.d.ts +270 -0
- package/types/js/figure/FigureCollections/Line.d.ts +587 -0
- package/types/js/figure/FigureCollections/Plot.d.ts +558 -0
- package/types/js/figure/FigureCollections/PolyLine.d.ts +487 -0
- package/types/js/figure/FigureCollections/Rectangle.d.ts +235 -0
- package/types/js/figure/FigureCollections/SlideNavigator.d.ts +255 -0
- package/types/js/figure/FigureCollections/Slider.d.ts +155 -0
- package/types/js/figure/FigureCollections/Text.d.ts +307 -0
- package/types/js/figure/FigureCollections/Toggle.d.ts +185 -0
- package/types/js/figure/FigureCollections/Trace.d.ts +237 -0
- package/types/js/figure/FigurePrimitives/FigureElementPrimitive2DText.d.ts +119 -0
- package/types/js/figure/FigurePrimitives/FigureElementPrimitiveGLText.d.ts +94 -0
- package/types/js/figure/FigurePrimitives/FigureElementPrimitiveGesture.d.ts +536 -0
- package/types/js/figure/FigurePrimitives/FigureElementPrimitiveMorph.d.ts +175 -0
- package/types/js/figure/FigurePrimitives/FigurePrimitiveTypes.d.ts +788 -0
- package/types/js/figure/FigurePrimitives/FigurePrimitiveTypes2D.d.ts +1324 -0
- package/types/js/figure/FigurePrimitives/FigurePrimitiveTypes3D.d.ts +1105 -0
- package/types/js/figure/FigurePrimitives/FigurePrimitives.d.ts +173 -0
- package/types/js/figure/FigurePrimitives/Generic.d.ts +5 -0
- package/types/js/figure/FigurePrimitives/Text.d.ts +17 -0
- package/types/js/figure/FontManager.d.ts +113 -0
- package/types/js/figure/Gesture.d.ts +39 -0
- package/types/js/figure/Recorder/Recorder.d.ts +291 -0
- package/types/js/figure/Recorder/parseState.d.ts +3 -0
- package/types/js/figure/Recorder/recorder.worker.d.ts +1 -0
- package/types/js/figure/Recorder/state.d.ts +7 -0
- package/types/js/figure/SlideNavigator.d.ts +606 -0
- package/types/js/figure/TimeKeeper.d.ts +174 -0
- package/types/js/figure/geometries/arc.d.ts +18 -0
- package/types/js/figure/geometries/arrow.d.ts +215 -0
- package/types/js/figure/geometries/buffer.d.ts +4 -0
- package/types/js/figure/geometries/copy/copy.d.ts +178 -0
- package/types/js/figure/geometries/ellipse.d.ts +17 -0
- package/types/js/figure/geometries/line.d.ts +13 -0
- package/types/js/figure/geometries/lines/corners.d.ts +7 -0
- package/types/js/figure/geometries/lines/dashes.d.ts +23 -0
- package/types/js/figure/geometries/lines/lines.d.ts +31 -0
- package/types/js/figure/geometries/polygon/polygon.d.ts +12 -0
- package/types/js/figure/geometries/rectangle.d.ts +19 -0
- package/types/js/figure/geometries/triangle.d.ts +27 -0
- package/types/js/figure/webgl/Atlas.d.ts +42 -0
- package/types/js/figure/webgl/shaders.d.ts +143 -0
- package/types/js/figure/webgl/target.d.ts +9 -0
- package/types/js/figure/webgl/webgl.d.ts +54 -0
- package/types/js/tools/FunctionMap.d.ts +69 -0
- package/types/js/tools/color.d.ts +11 -0
- package/types/js/tools/colorNames.d.ts +2 -0
- package/types/js/tools/d2/polygon.d.ts +60 -0
- package/types/js/tools/d2/triangles.d.ts +0 -0
- package/types/js/tools/d3/cone.d.ts +57 -0
- package/types/js/tools/d3/cube.d.ts +26 -0
- package/types/js/tools/d3/cylinder.d.ts +45 -0
- package/types/js/tools/d3/line3.d.ts +55 -0
- package/types/js/tools/d3/prism.d.ts +49 -0
- package/types/js/tools/d3/revolve.d.ts +87 -0
- package/types/js/tools/d3/sphere.d.ts +33 -0
- package/types/js/tools/d3/surface.d.ts +47 -0
- package/types/js/tools/g2.d.ts +242 -0
- package/types/js/tools/geometry/Bounds.d.ts +446 -0
- package/types/js/tools/geometry/Line.d.ts +314 -0
- package/types/js/tools/geometry/Path.d.ts +67 -0
- package/types/js/tools/geometry/Plane.d.ts +201 -0
- package/types/js/tools/geometry/Point.d.ts +359 -0
- package/types/js/tools/geometry/Rect.d.ts +115 -0
- package/types/js/tools/geometry/Transform.d.ts +623 -0
- package/types/js/tools/geometry/angle.d.ts +105 -0
- package/types/js/tools/geometry/common.d.ts +9 -0
- package/types/js/tools/geometry/coordinates.d.ts +30 -0
- package/types/js/tools/geometry/deceleration.d.ts +13 -0
- package/types/js/tools/geometry/polygon.d.ts +4 -0
- package/types/js/tools/geometry/quaternion.d.ts +15 -0
- package/types/js/tools/geometry/scene.d.ts +282 -0
- package/types/js/tools/geometry/tools.d.ts +8 -0
- package/types/js/tools/geometry/types.d.ts +2 -0
- package/types/js/tools/getCssColors.d.ts +1 -0
- package/types/js/tools/getCssVariables.d.ts +4 -0
- package/types/js/tools/getImageData.d.ts +1 -0
- package/types/js/tools/getScssColors.d.ts +2 -0
- package/types/js/tools/htmlGenerator.d.ts +85 -0
- package/types/js/tools/m2.d.ts +24 -0
- package/types/js/tools/m3.d.ts +71 -0
- package/types/js/tools/math.d.ts +112 -0
- package/types/js/tools/morph.d.ts +651 -0
- package/types/js/tools/styleSheets.d.ts +3 -0
- package/types/js/tools/tools.d.ts +281 -0
- package/types/js/tools/types.d.ts +305 -0
- package/figureone.worker.js +0 -1
|
@@ -0,0 +1,623 @@
|
|
|
1
|
+
import { Point } from './Point';
|
|
2
|
+
import type { Type3DMatrix } from '../m3';
|
|
3
|
+
import type { TypeParsablePoint } from './Point';
|
|
4
|
+
import type { OBJ_TranslationPath } from './Path';
|
|
5
|
+
/**
|
|
6
|
+
* Orthonormal basis definition. Use either (i, j, k), (x, y, z) or
|
|
7
|
+
* (right, top, normal). They are identical, but different terminology may
|
|
8
|
+
* be useful for different contexts.
|
|
9
|
+
* @property {TypeParsablePoint} [i]
|
|
10
|
+
* @property {TypeParsablePoint} [j]
|
|
11
|
+
* @property {TypeParsablePoint} [k]
|
|
12
|
+
* @property {TypeParsablePoint} [x]
|
|
13
|
+
* @property {TypeParsablePoint} [y]
|
|
14
|
+
* @property {TypeParsablePoint} [z]
|
|
15
|
+
* @property {TypeParsablePoint} [right]
|
|
16
|
+
* @property {TypeParsablePoint} [top]
|
|
17
|
+
* @property {TypeParsablePoint} [normal]
|
|
18
|
+
* @interface
|
|
19
|
+
* @group Misc Geometry
|
|
20
|
+
*/
|
|
21
|
+
export type TypeBasisObjectDefinition = {
|
|
22
|
+
i?: TypeParsablePoint;
|
|
23
|
+
j?: TypeParsablePoint;
|
|
24
|
+
k?: TypeParsablePoint;
|
|
25
|
+
x?: TypeParsablePoint;
|
|
26
|
+
y?: TypeParsablePoint;
|
|
27
|
+
z?: TypeParsablePoint;
|
|
28
|
+
right?: TypeParsablePoint;
|
|
29
|
+
top?: TypeParsablePoint;
|
|
30
|
+
normal?: TypeParsablePoint;
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* Rotation transform component definition. First number is the rotation value
|
|
34
|
+
* an the next three numbers define the x, y, and z components of the axis
|
|
35
|
+
* vector.
|
|
36
|
+
*
|
|
37
|
+
* `['r', number, number, number, number]`
|
|
38
|
+
* @group Misc Geometry
|
|
39
|
+
*/
|
|
40
|
+
export type TypeTransformRotation = ['r', number, number, number, number];
|
|
41
|
+
/**
|
|
42
|
+
* Direction transform component. The numbers are the xyz components of the
|
|
43
|
+
* vector to direct to.
|
|
44
|
+
*
|
|
45
|
+
* This is equivalent to an axis rotation where the axis is the normal
|
|
46
|
+
* to the plane formed by [1, 0, 0] and `d`
|
|
47
|
+
*
|
|
48
|
+
* `['d', number, number, number]`
|
|
49
|
+
* @group Misc Geometry
|
|
50
|
+
*/
|
|
51
|
+
export type TypeTransformDirection = ['d', number, number, number];
|
|
52
|
+
/**
|
|
53
|
+
* Translation transform component. The numbers are the xy(z) components of the
|
|
54
|
+
* translation.
|
|
55
|
+
*
|
|
56
|
+
* `['t', number, number, number]`
|
|
57
|
+
* @group Misc Geometry
|
|
58
|
+
*/
|
|
59
|
+
export type TypeTransformTranslation = ['t', number, number, number];
|
|
60
|
+
/**
|
|
61
|
+
* Scale transform component. Using just a single number scales xyz components
|
|
62
|
+
* equally. Using two numbers scales the xy components and sets z to 1. Using
|
|
63
|
+
* three numbers defines each xyz component.
|
|
64
|
+
*
|
|
65
|
+
* `['s', number, number, number] | ['s', number, number] | ['s', number]`
|
|
66
|
+
* @group Misc Geometry
|
|
67
|
+
*/
|
|
68
|
+
export type TypeTransformScale = ['s', number, number, number];
|
|
69
|
+
/**
|
|
70
|
+
* Custom transform component defined by a 4x4 matrix.
|
|
71
|
+
*
|
|
72
|
+
* `['c', number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number]`
|
|
73
|
+
* @group Misc Geometry
|
|
74
|
+
*/
|
|
75
|
+
export type TypeTransformCustom = ['c', number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number];
|
|
76
|
+
/**
|
|
77
|
+
* Change of basis transform component definition. This is a change of basis
|
|
78
|
+
* from the standard basis: i: (1, 0, 0), j: (0, 1, 0), k: (0, 0, 1).
|
|
79
|
+
*
|
|
80
|
+
* `['b', number, number, number, number, number, number, number, number, number]`
|
|
81
|
+
* @group Misc Geometry
|
|
82
|
+
*/
|
|
83
|
+
export type TypeTransformBasis = ['b', number, number, number, number, number, number, number, number, number];
|
|
84
|
+
/**
|
|
85
|
+
* Change of basis transform component definition relative to a specified
|
|
86
|
+
* initial basis.
|
|
87
|
+
*
|
|
88
|
+
* `['bb', number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number]`
|
|
89
|
+
* @group Misc Geometry
|
|
90
|
+
*/
|
|
91
|
+
export type TypeTransformBasisToBasis = ['bb', number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number];
|
|
92
|
+
/**
|
|
93
|
+
* Change of basis transform component definition. This is a change of basis
|
|
94
|
+
* from the standard basis: i: (1, 0, 0), j: (0, 1, 0), k: (0, 0, 1).
|
|
95
|
+
*
|
|
96
|
+
* A basis can be defined with either the definition object
|
|
97
|
+
* {@link TypeBasisObjectDefinition} where only two vectors need to be defined
|
|
98
|
+
* (the third will be automatically calculated), or with 9 numbers where all
|
|
99
|
+
* three vectors need to be defined in (ix, iy, iz, jx, jy, jz, kx, ky, kz)
|
|
100
|
+
* order.
|
|
101
|
+
*
|
|
102
|
+
* ` ['b', `{@link TypeBasisObjectDefinition}`] | ` {@link TypeTransformBasis}
|
|
103
|
+
* @group Misc Geometry
|
|
104
|
+
*/
|
|
105
|
+
export type TypeTransformBasisUserDefinition = ['b', TypeBasisObjectDefinition] | TypeTransformBasis;
|
|
106
|
+
/**
|
|
107
|
+
* Change of basis transform component definition relative to a specified
|
|
108
|
+
* initial basis.
|
|
109
|
+
*
|
|
110
|
+
* A basis can be defined with either the definition object
|
|
111
|
+
* {@link TypeBasisObjectDefinition} where only two vectors need to be defined
|
|
112
|
+
* (the third will be automatically calculated), or with 9 numbers where all
|
|
113
|
+
* three vectors need to be defined in (ix, iy, iz, jx, jy, jz, kx, ky, kz)
|
|
114
|
+
* order.
|
|
115
|
+
*
|
|
116
|
+
* In either case, the first object or nine numbers define the initial basis
|
|
117
|
+
* and the second object or nin numbers define the basis to move to.
|
|
118
|
+
*
|
|
119
|
+
* ` ['bb', `{@link TypeBasisObjectDefinition}`, `{@link TypeBasisObjectDefinition}`] | ` {@link TypeTransformBasisToBasis}
|
|
120
|
+
* @group Misc Geometry
|
|
121
|
+
*/
|
|
122
|
+
export type TypeTransformBasisToBasisUserDefinition = ['bb', TypeBasisObjectDefinition, TypeBasisObjectDefinition] | TypeTransformBasisToBasis;
|
|
123
|
+
/**
|
|
124
|
+
* Transform Component.
|
|
125
|
+
*
|
|
126
|
+
* {@link TypeTransformRotation} | {@link TypeTransformDirection} | {@link TypeTransformTranslation} | {@link TypeTransformScale} | {@link TypeTransformCustom} | {@link TypeTransformBasis} | {@link TypeTransformBasisToBasis}
|
|
127
|
+
* @group Misc Geometry
|
|
128
|
+
*/
|
|
129
|
+
export type TypeTransformComponent = TypeTransformRotation | TypeTransformDirection | TypeTransformTranslation | TypeTransformScale | TypeTransformCustom | TypeTransformBasis | TypeTransformBasisToBasis;
|
|
130
|
+
/**
|
|
131
|
+
* Transform component defined by a user.
|
|
132
|
+
*
|
|
133
|
+
* {@link TypeTransformRotation} | {@link TypeTransformDirection} | {@link TypeTransformTranslation} | {@link TypeTransformScale} | {@link TypeTransformCustom} | {@link TypeTransformBasisUserDefinition} | {@link TypeTransformBasisToBasisUserDefinition}
|
|
134
|
+
* @group Misc Geometry
|
|
135
|
+
*/
|
|
136
|
+
export type TypeTransformComponentUserDefinition = TypeTransformRotation | TypeTransformDirection | TypeTransformTranslation | TypeTransformScale | TypeTransformCustom | TypeTransformBasisUserDefinition | TypeTransformBasisToBasisUserDefinition | ['r', number] | ['t', number, number] | ['s', number] | ['s', number, number];
|
|
137
|
+
/**
|
|
138
|
+
* Transform array definition.
|
|
139
|
+
*
|
|
140
|
+
*
|
|
141
|
+
*
|
|
142
|
+
* `Array<`{@link TypeTransformComponent}`>`
|
|
143
|
+
* @group Misc Geometry
|
|
144
|
+
*/
|
|
145
|
+
export type TypeTransformDefinition = Array<TypeTransformComponent>;
|
|
146
|
+
/**
|
|
147
|
+
* Transform array user definition.
|
|
148
|
+
*
|
|
149
|
+
* `Array<`{@link TypeTransformComponent}` | `{@link TypeTransformBasisUserDefinition}` | `{@link TypeTransformBasisToBasisUserDefinition}`>`
|
|
150
|
+
* @group Misc Geometry
|
|
151
|
+
*/
|
|
152
|
+
export type TypeTransformUserDefinition = Array<TypeTransformComponentUserDefinition>;
|
|
153
|
+
/**
|
|
154
|
+
* Transform state definition of a {@link Transform} that represents an array
|
|
155
|
+
* of transform components.
|
|
156
|
+
*
|
|
157
|
+
* ```
|
|
158
|
+
* {
|
|
159
|
+
* f1Type: 'pl',
|
|
160
|
+
* state: TypeTransformDefinition
|
|
161
|
+
* }
|
|
162
|
+
* ```
|
|
163
|
+
* @see {@link TypeTransformDefinition}
|
|
164
|
+
* @group Misc Geometry
|
|
165
|
+
*/
|
|
166
|
+
export type TypeF1DefTransform = {
|
|
167
|
+
f1Type: 'tf';
|
|
168
|
+
state: TypeTransformDefinition;
|
|
169
|
+
};
|
|
170
|
+
export type TypeTransformComponentName = 't' | 's' | 'b' | 'bb' | 'c' | 'd' | 'r';
|
|
171
|
+
/**
|
|
172
|
+
* A transform is defined with either:
|
|
173
|
+
* - an instantiated {@link Transform}
|
|
174
|
+
* - an array of transform components {@link TypeTransformUserDefinition}
|
|
175
|
+
* - a single transform component {@link TypeTransformComponentUserDefinition}
|
|
176
|
+
* - a recorder state definition {@link TypeF1DefTransform}
|
|
177
|
+
* - A string representation of all options except the first
|
|
178
|
+
*
|
|
179
|
+
* @example
|
|
180
|
+
* // t1, t2 and t3 are all equal transforms
|
|
181
|
+
* const t1 = new Fig.Transform().scale(2).rotate(Math.PI / 2).translate(1, 1);
|
|
182
|
+
* const t2 = new Fig.Transform([['s', 2], ['r', Math.PI / 2], ['t', 1, 1]]);
|
|
183
|
+
* const t3 = Fig.getTransform([['s', 2], ['r', Math.PI / 2], ['t', 1, 1]]);
|
|
184
|
+
*
|
|
185
|
+
* @see See {@link Transform} for a summary of transfom components available.
|
|
186
|
+
* @group Geometry
|
|
187
|
+
*/
|
|
188
|
+
export type TypeParsableTransform = TypeTransformUserDefinition | TypeTransformComponentUserDefinition | Transform | TypeF1DefTransform;
|
|
189
|
+
export type TypeTransformValue = number | Array<number> | {
|
|
190
|
+
scale?: number;
|
|
191
|
+
position?: number;
|
|
192
|
+
translation?: number;
|
|
193
|
+
rotation?: number;
|
|
194
|
+
custom?: number;
|
|
195
|
+
};
|
|
196
|
+
/**
|
|
197
|
+
* A Transform is a chain or cascade of transform components, such as rotations
|
|
198
|
+
* and translations.
|
|
199
|
+
*
|
|
200
|
+
* The transform components cascade to form a single 3D transform matrix in
|
|
201
|
+
* homogenous coordinates - meaning the result is a 4x4 matrix. This matrix can
|
|
202
|
+
* be used to transform a point in space.
|
|
203
|
+
*
|
|
204
|
+
* There are several built in transform components:
|
|
205
|
+
*
|
|
206
|
+
* - Translation
|
|
207
|
+
* - Scale
|
|
208
|
+
* - Rotation
|
|
209
|
+
* - Direction transform
|
|
210
|
+
* - Custom (where a specific matrix can be defined)
|
|
211
|
+
* - Change of basis from standard basis
|
|
212
|
+
* - Change of basis from an initial basis
|
|
213
|
+
*
|
|
214
|
+
* Matrix multiplication is not commutative, and so chaining transforms is not
|
|
215
|
+
* commutative. This means the order of components is important.
|
|
216
|
+
*
|
|
217
|
+
* For example, if a point (1, 0) is first translated by (1, 0) and then
|
|
218
|
+
* rotated by π / 2, then it will start at (1, 0), then move to (2, 0), then
|
|
219
|
+
* rotate to (0, 2).
|
|
220
|
+
*
|
|
221
|
+
* In comparison if the same point is first rotated by π / 2 then translated by
|
|
222
|
+
* (1, 0) it will start at (1, 0), then rotate to (0, 1), then move to (1, 1).
|
|
223
|
+
*
|
|
224
|
+
* In this Transform object, the order that components are defined, is the order
|
|
225
|
+
* the resulting transform will represent.
|
|
226
|
+
*
|
|
227
|
+
* A transform can be created by either chaining transform component methods on
|
|
228
|
+
* an instantiated Transform object, or using an array definition of
|
|
229
|
+
* components. For example the following two transforms are the same:
|
|
230
|
+
* ```
|
|
231
|
+
* const t1 = new Transform().scale(1).translate(1, 0);
|
|
232
|
+
* const t2 = new Transform([['s', 1], ['t', 1, 0]]);
|
|
233
|
+
* ```
|
|
234
|
+
*
|
|
235
|
+
* @see See {@link TypeParsableTransform} for the different ways to define a transform.
|
|
236
|
+
* @group Geometry
|
|
237
|
+
*/
|
|
238
|
+
declare class Transform {
|
|
239
|
+
def: TypeTransformDefinition;
|
|
240
|
+
mat: Type3DMatrix;
|
|
241
|
+
translationIndex: number;
|
|
242
|
+
_type: 'transform';
|
|
243
|
+
/**
|
|
244
|
+
* @param {TypeParsableTransform} chain chain of transform components.
|
|
245
|
+
*/
|
|
246
|
+
constructor(chain?: TypeParsableTransform);
|
|
247
|
+
_state(options?: {
|
|
248
|
+
precision: number;
|
|
249
|
+
}): {
|
|
250
|
+
f1Type: string;
|
|
251
|
+
state: TypeTransformDefinition;
|
|
252
|
+
};
|
|
253
|
+
/**
|
|
254
|
+
* Query if transform has a specific component.
|
|
255
|
+
* @param {TypeTransformComponentName} componentName
|
|
256
|
+
* @return {boolean} `true` if component name exists
|
|
257
|
+
*/
|
|
258
|
+
hasComponent(componentName: TypeTransformComponentName): boolean;
|
|
259
|
+
/**
|
|
260
|
+
* Set a component at a speicific index of the transform definition.
|
|
261
|
+
*
|
|
262
|
+
* @param {number} index index to set component
|
|
263
|
+
* @param {TypeTransformComponent} def component definition
|
|
264
|
+
*
|
|
265
|
+
* @return {Transform} this transform
|
|
266
|
+
*/
|
|
267
|
+
setComponent(index: number, def: TypeTransformComponent): this;
|
|
268
|
+
/**
|
|
269
|
+
* Add a transform component to the chain
|
|
270
|
+
*
|
|
271
|
+
* @param {TypeTransformComponent} def component definition
|
|
272
|
+
* @return {Transform} this transform
|
|
273
|
+
*/
|
|
274
|
+
addComponent(def: TypeTransformComponent): this;
|
|
275
|
+
/**
|
|
276
|
+
* Return a duplicate transform with an added translation component.
|
|
277
|
+
*
|
|
278
|
+
* The translation can either be defined as:
|
|
279
|
+
*
|
|
280
|
+
* * A point
|
|
281
|
+
* * x, y values (z will be automatically set to 0)
|
|
282
|
+
* * x, y, and z values
|
|
283
|
+
*
|
|
284
|
+
* @param {number | TypeParsablePoint} xOrTranslation
|
|
285
|
+
* @param {number} y
|
|
286
|
+
* @param {number} z
|
|
287
|
+
*
|
|
288
|
+
* @return {Transform}
|
|
289
|
+
*/
|
|
290
|
+
translate(xOrTranslation?: number | TypeParsablePoint, y?: number, z?: number): this;
|
|
291
|
+
/**
|
|
292
|
+
* Return a duplicate transform with an added rotation component.
|
|
293
|
+
* @param {number} rotation
|
|
294
|
+
* @param {number | TypeParsablePoint | 'x' | 'y' | 'z'} axisOrX (`z`)
|
|
295
|
+
* @param {number} y (`0`)
|
|
296
|
+
* @param {number} z (`0`)
|
|
297
|
+
* @return {Transform}
|
|
298
|
+
*/
|
|
299
|
+
rotate(rotation: number, axisOrX?: number | TypeParsablePoint | 'x' | 'y' | 'z', y?: number, z?: number): this;
|
|
300
|
+
/**
|
|
301
|
+
* Return a duplicate transform with an added direction transform component.
|
|
302
|
+
*
|
|
303
|
+
* @param {number | TypeParsablePoint} xOrDirection
|
|
304
|
+
* @param {number} y
|
|
305
|
+
* @param {number} z
|
|
306
|
+
* @return {Transform}
|
|
307
|
+
*/
|
|
308
|
+
direction(xOrDirection: number | TypeParsablePoint, y?: number, z?: number): this;
|
|
309
|
+
/**
|
|
310
|
+
* Return a duplicate transform with an added change of basis from the
|
|
311
|
+
* standard basis transform component.
|
|
312
|
+
*
|
|
313
|
+
* @param {TypeBasisObjectDefinition} toBasis
|
|
314
|
+
* @return {Transform}
|
|
315
|
+
*/
|
|
316
|
+
basis(toBasis: TypeBasisObjectDefinition): this;
|
|
317
|
+
/**
|
|
318
|
+
* Return a duplicate transform with an added change of basis transform
|
|
319
|
+
* component.
|
|
320
|
+
*
|
|
321
|
+
* @param {TypeBasisObjectDefinition} fromeBasis
|
|
322
|
+
* @param {TypeBasisObjectDefinition} toBasis
|
|
323
|
+
* @return {Transform}
|
|
324
|
+
*/
|
|
325
|
+
basisToBasis(fromBasis: TypeBasisObjectDefinition, toBasis: TypeBasisObjectDefinition): this;
|
|
326
|
+
/**
|
|
327
|
+
* Return a duplicate transform with an added custom transform
|
|
328
|
+
* component.
|
|
329
|
+
*
|
|
330
|
+
* @param {Type3DMatrix} matrix
|
|
331
|
+
* @return {Transform}
|
|
332
|
+
*/
|
|
333
|
+
custom(matrix: Type3DMatrix): this;
|
|
334
|
+
/**
|
|
335
|
+
* Return a duplicate transform with an added scale transform component
|
|
336
|
+
* @param {number | TypeParsablePoint} sOrSxOrPoint
|
|
337
|
+
* @param {number} sy
|
|
338
|
+
* @param {number} sz
|
|
339
|
+
* @return {Transform}
|
|
340
|
+
*/
|
|
341
|
+
scale(sOrSxOrPoint: number | TypeParsablePoint, sy?: number | null, sz?: number): this;
|
|
342
|
+
calcMatrix(defStart?: number, defEnd?: number): Type3DMatrix;
|
|
343
|
+
calcAndSetMatrix(): void;
|
|
344
|
+
/**
|
|
345
|
+
* Get the nth transform component index of `type`.
|
|
346
|
+
* @param {TypeTransformComponentName} type
|
|
347
|
+
* @param {number} n (`0`)
|
|
348
|
+
* @return {number} index of component
|
|
349
|
+
*/
|
|
350
|
+
getComponentIndex(type: TypeTransformComponentName | Array<TypeTransformComponentName>, n?: number): number;
|
|
351
|
+
/**
|
|
352
|
+
* Clip all rotation (2D, axis, x, y, z rotations) transform components
|
|
353
|
+
* within this transform chain angles between 0º-360º, -180º-180º, or not at
|
|
354
|
+
* all (`null`)
|
|
355
|
+
*
|
|
356
|
+
* Only angle values are clipped. The axis values of the axis rotation is not
|
|
357
|
+
* changed.
|
|
358
|
+
*
|
|
359
|
+
* @param {'0to360' | '-180to180' | null} clipTo
|
|
360
|
+
*/
|
|
361
|
+
clipRotation(clipTo: '0to360' | '-180to180' | null): void;
|
|
362
|
+
/**
|
|
363
|
+
* Update the nth translation transform component with a new translation.
|
|
364
|
+
* @param {TypeParsablePoint} translation
|
|
365
|
+
* @param {number} n
|
|
366
|
+
* @return {Transform}
|
|
367
|
+
*/
|
|
368
|
+
updateTranslation(translation: TypeParsablePoint, n?: number): this;
|
|
369
|
+
updateComponent(def: TypeTransformComponent, n: number): this;
|
|
370
|
+
/**
|
|
371
|
+
* Return a linearly interpolated transform between this transform and
|
|
372
|
+
* `delta` at some `percent` between the two.
|
|
373
|
+
*
|
|
374
|
+
* For translation transform components, interpolation can either be
|
|
375
|
+
* `'linear'` or '`curved'`.
|
|
376
|
+
* @param {Transform} delta delta transform
|
|
377
|
+
* @param {number} percent percent to interpolate where 0 is this transform
|
|
378
|
+
* and 1 is delta transform
|
|
379
|
+
* @param {'linear' | 'curved' | 'curve' = 'linear'} translationStyle
|
|
380
|
+
* translation style for translation components only
|
|
381
|
+
* @param {OBJ_TranslationPath = {}} translationOptions
|
|
382
|
+
* translation options for translation components only
|
|
383
|
+
* @return {Transform}
|
|
384
|
+
*/
|
|
385
|
+
toDelta(delta: Transform, percent: number, translationStyle?: 'linear' | 'curved' | 'curve', translationOptions?: OBJ_TranslationPath): Transform;
|
|
386
|
+
/**
|
|
387
|
+
* Retrieve the nth translation transform component.
|
|
388
|
+
* @param {number} n (`0`)
|
|
389
|
+
* @return {Point}
|
|
390
|
+
*/
|
|
391
|
+
t(n?: number): Point | null;
|
|
392
|
+
/**
|
|
393
|
+
* Retrieve the nth scale transform component.
|
|
394
|
+
* @param {number} n (`0`)
|
|
395
|
+
* @return {Point}
|
|
396
|
+
*/
|
|
397
|
+
s(n?: number): Point | null;
|
|
398
|
+
/**
|
|
399
|
+
* Retrieve the nth rotation transform component rotation value.
|
|
400
|
+
*
|
|
401
|
+
* @param {number} n (`0`)
|
|
402
|
+
* @return {Point}
|
|
403
|
+
*/
|
|
404
|
+
r(n?: number): number;
|
|
405
|
+
/**
|
|
406
|
+
* Retrieve the nth rotation transform component axis.
|
|
407
|
+
*
|
|
408
|
+
* @param {number} n (`0`)
|
|
409
|
+
* @return {Point}
|
|
410
|
+
*/
|
|
411
|
+
ra(n?: number): Point;
|
|
412
|
+
/**
|
|
413
|
+
* Retrieve the nth direction transform component.
|
|
414
|
+
* @param {number} n (`0`)
|
|
415
|
+
* @return {Point}
|
|
416
|
+
*/
|
|
417
|
+
d(n?: number): (number | "r")[] | (number | "d")[] | (number | "t")[] | (number | "s")[] | (number | "c")[] | (number | "b")[] | (number | "bb")[];
|
|
418
|
+
/**
|
|
419
|
+
* Retrieve the nth custom transform component.
|
|
420
|
+
* @param {number} n (`0`)
|
|
421
|
+
* @return {Point}
|
|
422
|
+
*/
|
|
423
|
+
c(n?: number): (number | "r")[] | (number | "d")[] | (number | "t")[] | (number | "s")[] | (number | "c")[] | (number | "b")[] | (number | "bb")[];
|
|
424
|
+
/**
|
|
425
|
+
* Retrieve the nth change of basis from standard basis transform component.
|
|
426
|
+
* @param {number} n (`0`)
|
|
427
|
+
* @return {Point}
|
|
428
|
+
*/
|
|
429
|
+
b(n?: number): (number | "r")[] | (number | "d")[] | (number | "t")[] | (number | "s")[] | (number | "c")[] | (number | "b")[] | (number | "bb")[];
|
|
430
|
+
/**
|
|
431
|
+
* Retrieve the nth change of basis transform component.
|
|
432
|
+
* @param {number} n (`0`)
|
|
433
|
+
* @return {Point}
|
|
434
|
+
*/
|
|
435
|
+
bb(n?: number): (number | "r")[] | (number | "d")[] | (number | "t")[] | (number | "s")[] | (number | "c")[] | (number | "b")[] | (number | "bb")[];
|
|
436
|
+
/**
|
|
437
|
+
* Update the nth scale transform component with a new scale.
|
|
438
|
+
* @param {TypeParsablePoint} scale
|
|
439
|
+
* @param {number} n
|
|
440
|
+
* @return {Transform}
|
|
441
|
+
*/
|
|
442
|
+
updateScale(scale: number | TypeParsablePoint, n?: number): this;
|
|
443
|
+
/**
|
|
444
|
+
* Update the nth rotation transform component.
|
|
445
|
+
* @param {number} r
|
|
446
|
+
* @param {TypeParsablePoint} axis
|
|
447
|
+
* @param {number} n
|
|
448
|
+
* @return {Transform}
|
|
449
|
+
*/
|
|
450
|
+
updateRotation(r: number, axis?: TypeParsablePoint | null, n?: number): this;
|
|
451
|
+
/**
|
|
452
|
+
* Update the nth direction transform component.
|
|
453
|
+
* @param {number} d
|
|
454
|
+
* @param {number} n
|
|
455
|
+
* @return {Transform}
|
|
456
|
+
*/
|
|
457
|
+
updateDirection(d: TypeParsablePoint, n?: number): this;
|
|
458
|
+
/**
|
|
459
|
+
* Update the nth custom transform component.
|
|
460
|
+
* @param {Type3DMatrix} c
|
|
461
|
+
* @param {number} n
|
|
462
|
+
* @return {Transform}
|
|
463
|
+
*/
|
|
464
|
+
updateCustom(c: Type3DMatrix, n?: number): this;
|
|
465
|
+
/**
|
|
466
|
+
* Update the nth change of basis from the standard basis transform component.
|
|
467
|
+
* @param {TypeBasisObjectDefinition} b
|
|
468
|
+
* @param {number} n
|
|
469
|
+
* @return {Transform}
|
|
470
|
+
*/
|
|
471
|
+
updateBasis(b: TypeBasisObjectDefinition, n?: number): this;
|
|
472
|
+
/**
|
|
473
|
+
* Update the nth change of basis transform component.
|
|
474
|
+
* @param {TypeBasisObjectDefinition} fromBasis
|
|
475
|
+
* @param {TypeBasisObjectDefinition} toBasis
|
|
476
|
+
* @param {number} n
|
|
477
|
+
* @return {Transform}
|
|
478
|
+
*/
|
|
479
|
+
updateBasisToBasis(fromBasis: TypeBasisObjectDefinition, toBasis: TypeBasisObjectDefinition, n?: number): this;
|
|
480
|
+
/**
|
|
481
|
+
* Return the matrix that respresents the cascaded transform chain
|
|
482
|
+
* @return {Type3DMatrix}
|
|
483
|
+
*/
|
|
484
|
+
m(): Type3DMatrix;
|
|
485
|
+
/**
|
|
486
|
+
* Return the matrix that respresents the cascaded transform chain
|
|
487
|
+
* @param {number | null} precision round the matrix to some precision or
|
|
488
|
+
* `null` for no rounding (`null`)
|
|
489
|
+
* @return {Type3DMatrix}
|
|
490
|
+
*/
|
|
491
|
+
matrix(precision?: number | null): Type3DMatrix;
|
|
492
|
+
/**
|
|
493
|
+
* `true` if `transformToCompare` has the same order of transform components.
|
|
494
|
+
* @param {TypeParsableTransform} transformToCompare
|
|
495
|
+
* @return {boolean}
|
|
496
|
+
*/
|
|
497
|
+
isEqualShapeTo(transformToCompare: TypeParsableTransform): boolean;
|
|
498
|
+
/**
|
|
499
|
+
* `true` if `transformToCompare` is equal to this transform within some
|
|
500
|
+
* `precision`.
|
|
501
|
+
* @param {TypeParsableTransform} transformToCompare
|
|
502
|
+
* @return {boolean}
|
|
503
|
+
*/
|
|
504
|
+
isEqualTo(transformToCompare: TypeParsableTransform, precision?: number): boolean;
|
|
505
|
+
/**
|
|
506
|
+
* `true` if `transformToCompare` is wihtin some `delta` of this transform.
|
|
507
|
+
* `isEqualTo` rounds the values to some precision to compare values. In
|
|
508
|
+
* comparison this will directly compare the delta between values. This may
|
|
509
|
+
* be more useful than rounding when values are close to rounding thresholds.
|
|
510
|
+
* @param {TypeParsableTransform} transformToCompare
|
|
511
|
+
* @return {boolean}
|
|
512
|
+
*/
|
|
513
|
+
isWithinDelta(transformToCompare: TypeParsableTransform, delta?: number): boolean;
|
|
514
|
+
/**
|
|
515
|
+
* Subtract each corresponding transform component. Both transforms must
|
|
516
|
+
* have the same shape.
|
|
517
|
+
*
|
|
518
|
+
* @param {TypeParsableTransform} transformToSubtract
|
|
519
|
+
* @see <a href="#transformisequalshapeto">Transform.isEqualShapeTo</a>
|
|
520
|
+
*/
|
|
521
|
+
sub(transformToSubtract?: TypeParsableTransform): Transform;
|
|
522
|
+
/**
|
|
523
|
+
* Subtract each corresponding transform component. Both transforms must
|
|
524
|
+
* have the same shape.
|
|
525
|
+
*
|
|
526
|
+
* @param {TypeParsableTransform} transformToAdd
|
|
527
|
+
* @see <a href="#transformisequalshapeto">Transform.isEqualShapeTo</a>
|
|
528
|
+
*/
|
|
529
|
+
add(transformToAdd?: TypeParsableTransform): Transform;
|
|
530
|
+
/**
|
|
531
|
+
* Multiply each corresponding transform component. Both transforms must
|
|
532
|
+
* have the same shape.
|
|
533
|
+
*
|
|
534
|
+
* @param {TypeParsableTransform} transformToMultiply
|
|
535
|
+
* @see <a href="#transformisequalshapeto">Transform.isEqualShapeTo</a>
|
|
536
|
+
*/
|
|
537
|
+
mul(transformToMultiply?: TypeParsableTransform): Transform;
|
|
538
|
+
/**
|
|
539
|
+
* Cascade two transforms together such that this transform transforms
|
|
540
|
+
* the input transform. In other words, the transform components of the
|
|
541
|
+
* input transform will performed first before this transform.
|
|
542
|
+
*
|
|
543
|
+
* @param {TypeParsableTransform} transform
|
|
544
|
+
* @return {Transform}
|
|
545
|
+
*/
|
|
546
|
+
transform(transform: TypeParsableTransform): Transform;
|
|
547
|
+
/**
|
|
548
|
+
* Cascade two transforms together such that this transform is transformed
|
|
549
|
+
* by the input transform. In other words, the this transform's components
|
|
550
|
+
* of will performed first before the input transform transform.
|
|
551
|
+
*
|
|
552
|
+
* @param {TypeParsableTransform} transform
|
|
553
|
+
* @return {Transform}
|
|
554
|
+
*/
|
|
555
|
+
transformBy(transform: TypeParsableTransform): Transform;
|
|
556
|
+
/**
|
|
557
|
+
* Return a duplicate transform with all values rounded to some precision.
|
|
558
|
+
*
|
|
559
|
+
* @param {number} precision (`8`)
|
|
560
|
+
* @return Transform
|
|
561
|
+
*/
|
|
562
|
+
round(precision?: number): Transform;
|
|
563
|
+
clipMag(zeroThresholdTransform: TypeTransformValue, maxTransform: TypeTransformValue, vector?: boolean): Transform;
|
|
564
|
+
constant(constant?: number): Transform;
|
|
565
|
+
zero(): Transform;
|
|
566
|
+
/**
|
|
567
|
+
* `true` if all transforms within the transform chain are below the
|
|
568
|
+
* `zeroThreshold`
|
|
569
|
+
*
|
|
570
|
+
* @param {number} zeroThreshold (`0`)
|
|
571
|
+
* @return {boolean}
|
|
572
|
+
*/
|
|
573
|
+
isZero(zeroThreshold?: number): boolean;
|
|
574
|
+
/**
|
|
575
|
+
* Return a duplicate transform.
|
|
576
|
+
* @return {Transform}
|
|
577
|
+
*/
|
|
578
|
+
_dup(): Transform;
|
|
579
|
+
velocity(previousTransform: Transform, deltaTime: number, zeroThreshold: TypeTransformValue, maxTransform: TypeTransformValue): Transform;
|
|
580
|
+
/**
|
|
581
|
+
* Return a duplicate transform chain where all transform components are
|
|
582
|
+
* the same component type but with identity values.
|
|
583
|
+
* @return {Transform}
|
|
584
|
+
*/
|
|
585
|
+
identity(): Transform;
|
|
586
|
+
}
|
|
587
|
+
/**
|
|
588
|
+
* Test if a value can be parsed to create a transform.
|
|
589
|
+
*
|
|
590
|
+
* @see {@link TypeParsableTransform}
|
|
591
|
+
* @param {any} value
|
|
592
|
+
* @return {boolean}
|
|
593
|
+
* @group Misc Geometry
|
|
594
|
+
*/
|
|
595
|
+
declare function isParsableTransform(value: any): boolean;
|
|
596
|
+
declare function getMatrix(matrixOrTransform: TypeParsableTransform | Type3DMatrix): Type3DMatrix;
|
|
597
|
+
/**
|
|
598
|
+
* Convert a parsable transform definition to a Transform.
|
|
599
|
+
* @param {TypeParsableTransform} t
|
|
600
|
+
* @return {Transform}
|
|
601
|
+
* @group Misc Geometry
|
|
602
|
+
*/
|
|
603
|
+
declare function getTransform(t: TypeParsableTransform): Transform;
|
|
604
|
+
declare function transformValueToArray(transformValue: TypeTransformValue, transform: Transform): Array<number>;
|
|
605
|
+
declare function directionToAxisAngle(direction: TypeParsablePoint | TypeTransformDirection, axisIfCollinear?: TypeParsablePoint): {
|
|
606
|
+
angle: number;
|
|
607
|
+
axis: Point;
|
|
608
|
+
};
|
|
609
|
+
/**
|
|
610
|
+
* Calculate the rotation axis and angle required to move from one
|
|
611
|
+
* vector to another.
|
|
612
|
+
*
|
|
613
|
+
* @param {TypeParsablePoint} fromVector
|
|
614
|
+
* @param {TypeParsablePoint} toVector
|
|
615
|
+
* @param {TypeParsablePoint | null} axisIfCollinear
|
|
616
|
+
* @return {{axis: Point, angle: number}}
|
|
617
|
+
* @group Misc Geometry
|
|
618
|
+
*/
|
|
619
|
+
declare function angleFromVectors(fromVector: TypeParsablePoint | TypeTransformDirection, toVector: TypeParsablePoint | TypeTransformDirection, axisIfCollinear?: TypeParsablePoint | null): {
|
|
620
|
+
angle: number;
|
|
621
|
+
axis: Point;
|
|
622
|
+
};
|
|
623
|
+
export { getTransform, Transform, isParsableTransform, transformValueToArray, getMatrix, angleFromVectors, directionToAxisAngle, };
|