@mlightcad/geometry-engine 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/LICENSE +21 -0
- package/README.md +13 -0
- package/dist/geometry-engine.js +10186 -0
- package/dist/geometry-engine.umd.cjs +4 -0
- package/lib/geometry/AcGeArea2d.d.ts +61 -0
- package/lib/geometry/AcGeArea2d.d.ts.map +1 -0
- package/lib/geometry/AcGeArea2d.js +174 -0
- package/lib/geometry/AcGeArea2d.js.map +1 -0
- package/lib/geometry/AcGeCircArc2d.d.ts +108 -0
- package/lib/geometry/AcGeCircArc2d.d.ts.map +1 -0
- package/lib/geometry/AcGeCircArc2d.js +412 -0
- package/lib/geometry/AcGeCircArc2d.js.map +1 -0
- package/lib/geometry/AcGeCircArc3d.d.ts +138 -0
- package/lib/geometry/AcGeCircArc3d.d.ts.map +1 -0
- package/lib/geometry/AcGeCircArc3d.js +447 -0
- package/lib/geometry/AcGeCircArc3d.js.map +1 -0
- package/lib/geometry/AcGeCurve2d.d.ts +85 -0
- package/lib/geometry/AcGeCurve2d.d.ts.map +1 -0
- package/lib/geometry/AcGeCurve2d.js +213 -0
- package/lib/geometry/AcGeCurve2d.js.map +1 -0
- package/lib/geometry/AcGeCurve3d.d.ts +27 -0
- package/lib/geometry/AcGeCurve3d.d.ts.map +1 -0
- package/lib/geometry/AcGeCurve3d.js +29 -0
- package/lib/geometry/AcGeCurve3d.js.map +1 -0
- package/lib/geometry/AcGeEllipseArc2d.d.ts +105 -0
- package/lib/geometry/AcGeEllipseArc2d.d.ts.map +1 -0
- package/lib/geometry/AcGeEllipseArc2d.js +292 -0
- package/lib/geometry/AcGeEllipseArc2d.js.map +1 -0
- package/lib/geometry/AcGeEllipseArc3d.d.ts +141 -0
- package/lib/geometry/AcGeEllipseArc3d.d.ts.map +1 -0
- package/lib/geometry/AcGeEllipseArc3d.js +442 -0
- package/lib/geometry/AcGeEllipseArc3d.js.map +1 -0
- package/lib/geometry/AcGeLine2d.d.ts +56 -0
- package/lib/geometry/AcGeLine2d.d.ts.map +1 -0
- package/lib/geometry/AcGeLine2d.js +125 -0
- package/lib/geometry/AcGeLine2d.js.map +1 -0
- package/lib/geometry/AcGeLine3d.d.ts +134 -0
- package/lib/geometry/AcGeLine3d.d.ts.map +1 -0
- package/lib/geometry/AcGeLine3d.js +291 -0
- package/lib/geometry/AcGeLine3d.js.map +1 -0
- package/lib/geometry/AcGeLoop2d.d.ts +59 -0
- package/lib/geometry/AcGeLoop2d.d.ts.map +1 -0
- package/lib/geometry/AcGeLoop2d.js +141 -0
- package/lib/geometry/AcGeLoop2d.js.map +1 -0
- package/lib/geometry/AcGePolyline2d.d.ts +90 -0
- package/lib/geometry/AcGePolyline2d.d.ts.map +1 -0
- package/lib/geometry/AcGePolyline2d.js +224 -0
- package/lib/geometry/AcGePolyline2d.js.map +1 -0
- package/lib/geometry/AcGeShape.d.ts +12 -0
- package/lib/geometry/AcGeShape.d.ts.map +1 -0
- package/lib/geometry/AcGeShape.js +22 -0
- package/lib/geometry/AcGeShape.js.map +1 -0
- package/lib/geometry/AcGeShape2d.d.ts +31 -0
- package/lib/geometry/AcGeShape2d.d.ts.map +1 -0
- package/lib/geometry/AcGeShape2d.js +51 -0
- package/lib/geometry/AcGeShape2d.js.map +1 -0
- package/lib/geometry/AcGeShape3d.d.ts +33 -0
- package/lib/geometry/AcGeShape3d.d.ts.map +1 -0
- package/lib/geometry/AcGeShape3d.js +52 -0
- package/lib/geometry/AcGeShape3d.js.map +1 -0
- package/lib/geometry/AcGeSpline3d.d.ts +77 -0
- package/lib/geometry/AcGeSpline3d.d.ts.map +1 -0
- package/lib/geometry/AcGeSpline3d.js +221 -0
- package/lib/geometry/AcGeSpline3d.js.map +1 -0
- package/lib/geometry/index.d.ts +13 -0
- package/lib/geometry/index.d.ts.map +1 -0
- package/lib/geometry/index.js +13 -0
- package/lib/geometry/index.js.map +1 -0
- package/lib/index.d.ts +4 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +4 -0
- package/lib/index.js.map +1 -0
- package/lib/math/AcGeBox2d.d.ts +173 -0
- package/lib/math/AcGeBox2d.d.ts.map +1 -0
- package/lib/math/AcGeBox2d.js +289 -0
- package/lib/math/AcGeBox2d.js.map +1 -0
- package/lib/math/AcGeBox3d.d.ts +195 -0
- package/lib/math/AcGeBox3d.d.ts.map +1 -0
- package/lib/math/AcGeBox3d.js +378 -0
- package/lib/math/AcGeBox3d.js.map +1 -0
- package/lib/math/AcGeEuler.d.ts +133 -0
- package/lib/math/AcGeEuler.d.ts.map +1 -0
- package/lib/math/AcGeEuler.js +358 -0
- package/lib/math/AcGeEuler.js.map +1 -0
- package/lib/math/AcGeMatrix2d.d.ts +203 -0
- package/lib/math/AcGeMatrix2d.d.ts.map +1 -0
- package/lib/math/AcGeMatrix2d.js +393 -0
- package/lib/math/AcGeMatrix2d.js.map +1 -0
- package/lib/math/AcGeMatrix3d.d.ts +279 -0
- package/lib/math/AcGeMatrix3d.d.ts.map +1 -0
- package/lib/math/AcGeMatrix3d.js +1037 -0
- package/lib/math/AcGeMatrix3d.js.map +1 -0
- package/lib/math/AcGePlane.d.ts +131 -0
- package/lib/math/AcGePlane.d.ts.map +1 -0
- package/lib/math/AcGePlane.js +218 -0
- package/lib/math/AcGePlane.js.map +1 -0
- package/lib/math/AcGePoint.d.ts +4 -0
- package/lib/math/AcGePoint.d.ts.map +1 -0
- package/lib/math/AcGePoint.js +2 -0
- package/lib/math/AcGePoint.js.map +1 -0
- package/lib/math/AcGePoint2d.d.ts +17 -0
- package/lib/math/AcGePoint2d.d.ts.map +1 -0
- package/lib/math/AcGePoint2d.js +40 -0
- package/lib/math/AcGePoint2d.js.map +1 -0
- package/lib/math/AcGePoint3d.d.ts +18 -0
- package/lib/math/AcGePoint3d.d.ts.map +1 -0
- package/lib/math/AcGePoint3d.js +43 -0
- package/lib/math/AcGePoint3d.js.map +1 -0
- package/lib/math/AcGeQuaternion.d.ts +230 -0
- package/lib/math/AcGeQuaternion.d.ts.map +1 -0
- package/lib/math/AcGeQuaternion.js +666 -0
- package/lib/math/AcGeQuaternion.js.map +1 -0
- package/lib/math/AcGeVector.d.ts +9 -0
- package/lib/math/AcGeVector.d.ts.map +1 -0
- package/lib/math/AcGeVector.js +2 -0
- package/lib/math/AcGeVector.js.map +1 -0
- package/lib/math/AcGeVector2d.d.ts +361 -0
- package/lib/math/AcGeVector2d.d.ts.map +1 -0
- package/lib/math/AcGeVector2d.js +622 -0
- package/lib/math/AcGeVector2d.js.map +1 -0
- package/lib/math/AcGeVector3d.d.ts +493 -0
- package/lib/math/AcGeVector3d.d.ts.map +1 -0
- package/lib/math/AcGeVector3d.js +868 -0
- package/lib/math/AcGeVector3d.js.map +1 -0
- package/lib/math/index.d.ts +14 -0
- package/lib/math/index.d.ts.map +1 -0
- package/lib/math/index.js +14 -0
- package/lib/math/index.js.map +1 -0
- package/lib/util/AcGeConstants.d.ts +19 -0
- package/lib/util/AcGeConstants.d.ts.map +1 -0
- package/lib/util/AcGeConstants.js +25 -0
- package/lib/util/AcGeConstants.js.map +1 -0
- package/lib/util/AcGeGeometryUtil.d.ts +16 -0
- package/lib/util/AcGeGeometryUtil.d.ts.map +1 -0
- package/lib/util/AcGeGeometryUtil.js +56 -0
- package/lib/util/AcGeGeometryUtil.js.map +1 -0
- package/lib/util/AcGeMathUtil.d.ts +203 -0
- package/lib/util/AcGeMathUtil.d.ts.map +1 -0
- package/lib/util/AcGeMathUtil.js +585 -0
- package/lib/util/AcGeMathUtil.js.map +1 -0
- package/lib/util/AcGeTol.d.ts +91 -0
- package/lib/util/AcGeTol.d.ts.map +1 -0
- package/lib/util/AcGeTol.js +83 -0
- package/lib/util/AcGeTol.js.map +1 -0
- package/lib/util/index.d.ts +5 -0
- package/lib/util/index.d.ts.map +1 -0
- package/lib/util/index.js +5 -0
- package/lib/util/index.js.map +1 -0
- package/package.json +42 -0
@@ -0,0 +1,230 @@
|
|
1
|
+
import { AcGeEuler } from './AcGeEuler';
|
2
|
+
import { AcGeMatrix3d } from './AcGeMatrix3d';
|
3
|
+
import { AcGeVector3d, AcGeVector3dLike } from './AcGeVector3d';
|
4
|
+
export declare class AcGeQuaternion {
|
5
|
+
private _x;
|
6
|
+
private _y;
|
7
|
+
private _z;
|
8
|
+
private _w;
|
9
|
+
/**
|
10
|
+
* Create one instance of this class
|
11
|
+
* @param x Input x coordinate
|
12
|
+
* @param y Input y coordinate
|
13
|
+
* @param z Input z coordinate
|
14
|
+
* @param w Input w coordinate
|
15
|
+
*/
|
16
|
+
constructor(x?: number, y?: number, z?: number, w?: number);
|
17
|
+
/**
|
18
|
+
* This SLERP implementation assumes the quaternion data are managed in flat arrays.
|
19
|
+
* @param dst Input the output array
|
20
|
+
* @param dstOffset Input an offset into the output array
|
21
|
+
* @param src0 Input the source array of the starting quaternion.
|
22
|
+
* @param srcOffset0 Input an offset into the array src0.
|
23
|
+
* @param src1 Input the source array of the target quaternion.
|
24
|
+
* @param srcOffset1 Input an offset into the array src1.
|
25
|
+
* @param t Input normalized interpolation factor (between 0 and 1).
|
26
|
+
*/
|
27
|
+
static slerpFlat(dst: number[], dstOffset: number, src0: number[], srcOffset0: number, src1: number[], srcOffset1: number, t: number): void;
|
28
|
+
/**
|
29
|
+
* This multiplication implementation assumes the quaternion data are managed in flat arrays.
|
30
|
+
* @param dst Input the output array.
|
31
|
+
* @param dstOffset Input an offset into the output array.
|
32
|
+
* @param src0 Input the source array of the starting quaternion.
|
33
|
+
* @param srcOffset0 Input an offset into the array src0.
|
34
|
+
* @param src1 Input the source array of the target quaternion.
|
35
|
+
* @param srcOffset1 Input an offset into the array src1.
|
36
|
+
* @returns Return an array
|
37
|
+
*/
|
38
|
+
static multiplyQuaternionsFlat(dst: number[], dstOffset: number, src0: number[], srcOffset0: number, src1: number[], srcOffset1: number): number[];
|
39
|
+
/**
|
40
|
+
* X cooridinate
|
41
|
+
*/
|
42
|
+
get x(): number;
|
43
|
+
set x(value: number);
|
44
|
+
/**
|
45
|
+
* Y cooridinate
|
46
|
+
*/
|
47
|
+
get y(): number;
|
48
|
+
set y(value: number);
|
49
|
+
/**
|
50
|
+
* Z cooridinate
|
51
|
+
*/
|
52
|
+
get z(): number;
|
53
|
+
set z(value: number);
|
54
|
+
/**
|
55
|
+
* W cooridinate
|
56
|
+
*/
|
57
|
+
get w(): number;
|
58
|
+
set w(value: number);
|
59
|
+
/**
|
60
|
+
* Set x, y, z, w properties of this quaternion.
|
61
|
+
* @param x Input x coordinate
|
62
|
+
* @param y Input y coordinate
|
63
|
+
* @param z Input z coordinate
|
64
|
+
* @param w Input w coordinate
|
65
|
+
* @returns Return this quaternion
|
66
|
+
*/
|
67
|
+
set(x: number, y: number, z: number, w: number): this;
|
68
|
+
/**
|
69
|
+
* Create a new quaternion with identical x, y, z and w properties to this one.
|
70
|
+
* @returns Return cloned instance
|
71
|
+
*/
|
72
|
+
clone(): AcGeQuaternion;
|
73
|
+
/**
|
74
|
+
* Copy the x, y, z and w properties of q into this quaternion.
|
75
|
+
* @param quaternion Input the quaternion copied from
|
76
|
+
* @returns Return this quaternion
|
77
|
+
*/
|
78
|
+
copy(quaternion: AcGeQuaternion): this;
|
79
|
+
/**
|
80
|
+
* Sets this quaternion from the rotation specified by euler angle.
|
81
|
+
* @param euler Input one euler angle
|
82
|
+
* @param update Input one flag whether to trigger change callback function
|
83
|
+
* @returns Return this quaternion
|
84
|
+
*/
|
85
|
+
setFromEuler(euler: AcGeEuler, update?: boolean): this;
|
86
|
+
/**
|
87
|
+
* Set this quaternion from rotation specified by axis and angle. Axis is assumed to be normalized,
|
88
|
+
* angle is in radians.
|
89
|
+
* @param axis Input one normalized axis
|
90
|
+
* @param angle Input one angle in radians
|
91
|
+
* @returns Return this quaternion
|
92
|
+
*/
|
93
|
+
setFromAxisAngle(axis: AcGeVector3dLike, angle: number): this;
|
94
|
+
/**
|
95
|
+
* Set this quaternion from rotation component of the specified matrix.
|
96
|
+
* @param m Input a Matrix4 of which the upper 3x3 of matrix is a pure rotation matrix (i.e. unscaled).
|
97
|
+
* @returns Return this quaternion
|
98
|
+
*/
|
99
|
+
setFromRotationMatrix(m: AcGeMatrix3d): this;
|
100
|
+
/**
|
101
|
+
* Set this quaternion to the rotation required to rotate direction vector vFrom to direction vector vTo.
|
102
|
+
* @param vFrom Input one normalized direction vector
|
103
|
+
* @param vTo Input one normalized direction vector
|
104
|
+
* @returns Return this quaternion
|
105
|
+
*/
|
106
|
+
setFromUnitVectors(vFrom: AcGeVector3d, vTo: AcGeVector3d): this;
|
107
|
+
/**
|
108
|
+
* Return the angle between this quaternion and quaternion q in radians.
|
109
|
+
* @param q Input one quaternion
|
110
|
+
* @returns Return the angle between this quaternion and quaternion q in radians.
|
111
|
+
*/
|
112
|
+
angleTo(q: AcGeQuaternion): number;
|
113
|
+
/**
|
114
|
+
* Rotate this quaternion by a given angular step to the defined quaternion q. The method ensures
|
115
|
+
* that the final quaternion will not overshoot q.
|
116
|
+
* @param q Input the target quaternion.
|
117
|
+
* @param step Input the angular step in radians.
|
118
|
+
* @returns Return this quaternion
|
119
|
+
*/
|
120
|
+
rotateTowards(q: AcGeQuaternion, step: number): this;
|
121
|
+
/**
|
122
|
+
* Set this quaternion to the identity quaternion; that is, to the quaternion that represents
|
123
|
+
* "no rotation".
|
124
|
+
* @returns Return this quaternion.
|
125
|
+
*/
|
126
|
+
identity(): this;
|
127
|
+
/**
|
128
|
+
* Invert this quaternion - calculates the conjugate. The quaternion is assumed to have unit length.
|
129
|
+
* @returns Return this quaternion.
|
130
|
+
*/
|
131
|
+
invert(): this;
|
132
|
+
/**
|
133
|
+
* Return the rotational conjugate of this quaternion. The conjugate of a quaternion represents the
|
134
|
+
* same rotation in the opposite direction about the rotational axis.
|
135
|
+
* @returns Return this quaternion
|
136
|
+
*/
|
137
|
+
conjugate(): this;
|
138
|
+
/**
|
139
|
+
* Calculate the dot product of quaternions v and this one.
|
140
|
+
* @param v Input one quaternion
|
141
|
+
* @returns Return the dot product of quaternions v and this one
|
142
|
+
*/
|
143
|
+
dot(v: AcGeQuaternion): number;
|
144
|
+
/**
|
145
|
+
* Compute the squared Euclidean length (straight-line length) of this quaternion, considered as a
|
146
|
+
* 4 dimensional vector. This can be useful if you are comparing the lengths of two quaternions, as
|
147
|
+
* this is a slightly more efficient calculation than length().
|
148
|
+
* @returns Return the squared Euclidean length (straight-line length) of this quaternion
|
149
|
+
*/
|
150
|
+
lengthSq(): number;
|
151
|
+
/**
|
152
|
+
* Compute the Euclidean length (straight-line length) of this quaternion, considered as a 4 dimensional
|
153
|
+
* vector.
|
154
|
+
* @returns Return the Euclidean length (straight-line length) of this quaternion.
|
155
|
+
*/
|
156
|
+
length(): number;
|
157
|
+
/**
|
158
|
+
* Normalize this quaternion - that is, calculated the quaternion that performs the same rotation as
|
159
|
+
* this one, but has length equal to 1.
|
160
|
+
* @returns Return this quaternion
|
161
|
+
*/
|
162
|
+
normalize(): this;
|
163
|
+
/**
|
164
|
+
* Multiply this quaternion by q.
|
165
|
+
* @param q Input one quaternion to multiply
|
166
|
+
* @returns Return this quaternion
|
167
|
+
*/
|
168
|
+
multiply(q: AcGeQuaternion): this;
|
169
|
+
/**
|
170
|
+
* Pre-multiply this quaternion by q.
|
171
|
+
* @param q Input one quaternion
|
172
|
+
* @returns Return this quaternion
|
173
|
+
*/
|
174
|
+
premultiply(q: AcGeQuaternion): this;
|
175
|
+
/**
|
176
|
+
* Sets this quaternion to a x b.
|
177
|
+
* @param a Input one quaternion
|
178
|
+
* @param b Input one quaternion
|
179
|
+
* @returns Return this quaternion
|
180
|
+
*/
|
181
|
+
multiplyQuaternions(a: AcGeQuaternion, b: AcGeQuaternion): this;
|
182
|
+
/**
|
183
|
+
* Handles the spherical linear interpolation between quaternions. t represents the amount of rotation
|
184
|
+
* between this quaternion (where t is 0) and qb (where t is 1).
|
185
|
+
* @param qb Input the other quaternion rotation
|
186
|
+
* @param t Input interpolation factor in the closed interval [0, 1].
|
187
|
+
* @returns Return this quaternion
|
188
|
+
*/
|
189
|
+
slerp(qb: AcGeQuaternion, t: number): this;
|
190
|
+
/**
|
191
|
+
* Perform a spherical linear interpolation between the given quaternions and stores the result in
|
192
|
+
* this quaternion.
|
193
|
+
* @param qa Input one quaternion rotation
|
194
|
+
* @param qb Input the other quaternion rotation
|
195
|
+
* @param t Input interpolation factor in the closed interval [0, 1].
|
196
|
+
* @returns Return this quaternion
|
197
|
+
*/
|
198
|
+
slerpQuaternions(qa: AcGeQuaternion, qb: AcGeQuaternion, t: number): this;
|
199
|
+
/**
|
200
|
+
* Set this quaternion to a uniformly random, normalized quaternion.
|
201
|
+
* @returns Return this quaternion
|
202
|
+
*/
|
203
|
+
random(): this;
|
204
|
+
/**
|
205
|
+
* Compare the x, y, z and w properties of v to the equivalent properties of this quaternion to
|
206
|
+
* determine if they represent the same rotation.
|
207
|
+
* @param quaternion Input quaternion that this quaternion will be compared to.
|
208
|
+
* @returns Return true if the specified quaternion and this quaternion represent the same rotation.
|
209
|
+
*/
|
210
|
+
equals(quaternion: AcGeQuaternion): boolean;
|
211
|
+
/**
|
212
|
+
* Set this quaternion's x, y, z and w properties from an array.
|
213
|
+
* @param array Input an array of format (x, y, z, w) used to construct the quaternion.
|
214
|
+
* @param offset Input an optional offset into the array
|
215
|
+
* @returns Return this quaternion
|
216
|
+
*/
|
217
|
+
fromArray(array: number[], offset?: number): this;
|
218
|
+
/**
|
219
|
+
* Return the numerical elements of this quaternion in an array of format [x, y, z, w].
|
220
|
+
* @param array Input an optional array to store the quaternion. If not specified, a new array will be created.
|
221
|
+
* @param offset (optional) if specified, the result will be copied into this Array.
|
222
|
+
* @returns Return an array
|
223
|
+
*/
|
224
|
+
toArray(array?: number[], offset?: number): number[];
|
225
|
+
toJSON(): number[];
|
226
|
+
_onChange(callback: () => void): this;
|
227
|
+
_onChangeCallback(): void;
|
228
|
+
[Symbol.iterator](): Generator<number, void, unknown>;
|
229
|
+
}
|
230
|
+
//# sourceMappingURL=AcGeQuaternion.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"AcGeQuaternion.d.ts","sourceRoot":"","sources":["../../src/math/AcGeQuaternion.ts"],"names":[],"mappings":"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"}
|