@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.
Files changed (149) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +13 -0
  3. package/dist/geometry-engine.js +10186 -0
  4. package/dist/geometry-engine.umd.cjs +4 -0
  5. package/lib/geometry/AcGeArea2d.d.ts +61 -0
  6. package/lib/geometry/AcGeArea2d.d.ts.map +1 -0
  7. package/lib/geometry/AcGeArea2d.js +174 -0
  8. package/lib/geometry/AcGeArea2d.js.map +1 -0
  9. package/lib/geometry/AcGeCircArc2d.d.ts +108 -0
  10. package/lib/geometry/AcGeCircArc2d.d.ts.map +1 -0
  11. package/lib/geometry/AcGeCircArc2d.js +412 -0
  12. package/lib/geometry/AcGeCircArc2d.js.map +1 -0
  13. package/lib/geometry/AcGeCircArc3d.d.ts +138 -0
  14. package/lib/geometry/AcGeCircArc3d.d.ts.map +1 -0
  15. package/lib/geometry/AcGeCircArc3d.js +447 -0
  16. package/lib/geometry/AcGeCircArc3d.js.map +1 -0
  17. package/lib/geometry/AcGeCurve2d.d.ts +85 -0
  18. package/lib/geometry/AcGeCurve2d.d.ts.map +1 -0
  19. package/lib/geometry/AcGeCurve2d.js +213 -0
  20. package/lib/geometry/AcGeCurve2d.js.map +1 -0
  21. package/lib/geometry/AcGeCurve3d.d.ts +27 -0
  22. package/lib/geometry/AcGeCurve3d.d.ts.map +1 -0
  23. package/lib/geometry/AcGeCurve3d.js +29 -0
  24. package/lib/geometry/AcGeCurve3d.js.map +1 -0
  25. package/lib/geometry/AcGeEllipseArc2d.d.ts +105 -0
  26. package/lib/geometry/AcGeEllipseArc2d.d.ts.map +1 -0
  27. package/lib/geometry/AcGeEllipseArc2d.js +292 -0
  28. package/lib/geometry/AcGeEllipseArc2d.js.map +1 -0
  29. package/lib/geometry/AcGeEllipseArc3d.d.ts +141 -0
  30. package/lib/geometry/AcGeEllipseArc3d.d.ts.map +1 -0
  31. package/lib/geometry/AcGeEllipseArc3d.js +442 -0
  32. package/lib/geometry/AcGeEllipseArc3d.js.map +1 -0
  33. package/lib/geometry/AcGeLine2d.d.ts +56 -0
  34. package/lib/geometry/AcGeLine2d.d.ts.map +1 -0
  35. package/lib/geometry/AcGeLine2d.js +125 -0
  36. package/lib/geometry/AcGeLine2d.js.map +1 -0
  37. package/lib/geometry/AcGeLine3d.d.ts +134 -0
  38. package/lib/geometry/AcGeLine3d.d.ts.map +1 -0
  39. package/lib/geometry/AcGeLine3d.js +291 -0
  40. package/lib/geometry/AcGeLine3d.js.map +1 -0
  41. package/lib/geometry/AcGeLoop2d.d.ts +59 -0
  42. package/lib/geometry/AcGeLoop2d.d.ts.map +1 -0
  43. package/lib/geometry/AcGeLoop2d.js +141 -0
  44. package/lib/geometry/AcGeLoop2d.js.map +1 -0
  45. package/lib/geometry/AcGePolyline2d.d.ts +90 -0
  46. package/lib/geometry/AcGePolyline2d.d.ts.map +1 -0
  47. package/lib/geometry/AcGePolyline2d.js +224 -0
  48. package/lib/geometry/AcGePolyline2d.js.map +1 -0
  49. package/lib/geometry/AcGeShape.d.ts +12 -0
  50. package/lib/geometry/AcGeShape.d.ts.map +1 -0
  51. package/lib/geometry/AcGeShape.js +22 -0
  52. package/lib/geometry/AcGeShape.js.map +1 -0
  53. package/lib/geometry/AcGeShape2d.d.ts +31 -0
  54. package/lib/geometry/AcGeShape2d.d.ts.map +1 -0
  55. package/lib/geometry/AcGeShape2d.js +51 -0
  56. package/lib/geometry/AcGeShape2d.js.map +1 -0
  57. package/lib/geometry/AcGeShape3d.d.ts +33 -0
  58. package/lib/geometry/AcGeShape3d.d.ts.map +1 -0
  59. package/lib/geometry/AcGeShape3d.js +52 -0
  60. package/lib/geometry/AcGeShape3d.js.map +1 -0
  61. package/lib/geometry/AcGeSpline3d.d.ts +77 -0
  62. package/lib/geometry/AcGeSpline3d.d.ts.map +1 -0
  63. package/lib/geometry/AcGeSpline3d.js +221 -0
  64. package/lib/geometry/AcGeSpline3d.js.map +1 -0
  65. package/lib/geometry/index.d.ts +13 -0
  66. package/lib/geometry/index.d.ts.map +1 -0
  67. package/lib/geometry/index.js +13 -0
  68. package/lib/geometry/index.js.map +1 -0
  69. package/lib/index.d.ts +4 -0
  70. package/lib/index.d.ts.map +1 -0
  71. package/lib/index.js +4 -0
  72. package/lib/index.js.map +1 -0
  73. package/lib/math/AcGeBox2d.d.ts +173 -0
  74. package/lib/math/AcGeBox2d.d.ts.map +1 -0
  75. package/lib/math/AcGeBox2d.js +289 -0
  76. package/lib/math/AcGeBox2d.js.map +1 -0
  77. package/lib/math/AcGeBox3d.d.ts +195 -0
  78. package/lib/math/AcGeBox3d.d.ts.map +1 -0
  79. package/lib/math/AcGeBox3d.js +378 -0
  80. package/lib/math/AcGeBox3d.js.map +1 -0
  81. package/lib/math/AcGeEuler.d.ts +133 -0
  82. package/lib/math/AcGeEuler.d.ts.map +1 -0
  83. package/lib/math/AcGeEuler.js +358 -0
  84. package/lib/math/AcGeEuler.js.map +1 -0
  85. package/lib/math/AcGeMatrix2d.d.ts +203 -0
  86. package/lib/math/AcGeMatrix2d.d.ts.map +1 -0
  87. package/lib/math/AcGeMatrix2d.js +393 -0
  88. package/lib/math/AcGeMatrix2d.js.map +1 -0
  89. package/lib/math/AcGeMatrix3d.d.ts +279 -0
  90. package/lib/math/AcGeMatrix3d.d.ts.map +1 -0
  91. package/lib/math/AcGeMatrix3d.js +1037 -0
  92. package/lib/math/AcGeMatrix3d.js.map +1 -0
  93. package/lib/math/AcGePlane.d.ts +131 -0
  94. package/lib/math/AcGePlane.d.ts.map +1 -0
  95. package/lib/math/AcGePlane.js +218 -0
  96. package/lib/math/AcGePlane.js.map +1 -0
  97. package/lib/math/AcGePoint.d.ts +4 -0
  98. package/lib/math/AcGePoint.d.ts.map +1 -0
  99. package/lib/math/AcGePoint.js +2 -0
  100. package/lib/math/AcGePoint.js.map +1 -0
  101. package/lib/math/AcGePoint2d.d.ts +17 -0
  102. package/lib/math/AcGePoint2d.d.ts.map +1 -0
  103. package/lib/math/AcGePoint2d.js +40 -0
  104. package/lib/math/AcGePoint2d.js.map +1 -0
  105. package/lib/math/AcGePoint3d.d.ts +18 -0
  106. package/lib/math/AcGePoint3d.d.ts.map +1 -0
  107. package/lib/math/AcGePoint3d.js +43 -0
  108. package/lib/math/AcGePoint3d.js.map +1 -0
  109. package/lib/math/AcGeQuaternion.d.ts +230 -0
  110. package/lib/math/AcGeQuaternion.d.ts.map +1 -0
  111. package/lib/math/AcGeQuaternion.js +666 -0
  112. package/lib/math/AcGeQuaternion.js.map +1 -0
  113. package/lib/math/AcGeVector.d.ts +9 -0
  114. package/lib/math/AcGeVector.d.ts.map +1 -0
  115. package/lib/math/AcGeVector.js +2 -0
  116. package/lib/math/AcGeVector.js.map +1 -0
  117. package/lib/math/AcGeVector2d.d.ts +361 -0
  118. package/lib/math/AcGeVector2d.d.ts.map +1 -0
  119. package/lib/math/AcGeVector2d.js +622 -0
  120. package/lib/math/AcGeVector2d.js.map +1 -0
  121. package/lib/math/AcGeVector3d.d.ts +493 -0
  122. package/lib/math/AcGeVector3d.d.ts.map +1 -0
  123. package/lib/math/AcGeVector3d.js +868 -0
  124. package/lib/math/AcGeVector3d.js.map +1 -0
  125. package/lib/math/index.d.ts +14 -0
  126. package/lib/math/index.d.ts.map +1 -0
  127. package/lib/math/index.js +14 -0
  128. package/lib/math/index.js.map +1 -0
  129. package/lib/util/AcGeConstants.d.ts +19 -0
  130. package/lib/util/AcGeConstants.d.ts.map +1 -0
  131. package/lib/util/AcGeConstants.js +25 -0
  132. package/lib/util/AcGeConstants.js.map +1 -0
  133. package/lib/util/AcGeGeometryUtil.d.ts +16 -0
  134. package/lib/util/AcGeGeometryUtil.d.ts.map +1 -0
  135. package/lib/util/AcGeGeometryUtil.js +56 -0
  136. package/lib/util/AcGeGeometryUtil.js.map +1 -0
  137. package/lib/util/AcGeMathUtil.d.ts +203 -0
  138. package/lib/util/AcGeMathUtil.d.ts.map +1 -0
  139. package/lib/util/AcGeMathUtil.js +585 -0
  140. package/lib/util/AcGeMathUtil.js.map +1 -0
  141. package/lib/util/AcGeTol.d.ts +91 -0
  142. package/lib/util/AcGeTol.d.ts.map +1 -0
  143. package/lib/util/AcGeTol.js +83 -0
  144. package/lib/util/AcGeTol.js.map +1 -0
  145. package/lib/util/index.d.ts +5 -0
  146. package/lib/util/index.d.ts.map +1 -0
  147. package/lib/util/index.js +5 -0
  148. package/lib/util/index.js.map +1 -0
  149. package/package.json +42 -0
@@ -0,0 +1,279 @@
1
+ import { AcGeMatrix2d } from './AcGeMatrix2d';
2
+ import { AcGeQuaternion } from './AcGeQuaternion';
3
+ import { AcGeVector3d, AcGeVector3dLike } from './AcGeVector3d';
4
+ /**
5
+ * The class representing a 4x4 matrix.
6
+ */
7
+ export declare class AcGeMatrix3d {
8
+ /**
9
+ * Identity matrix.
10
+ */
11
+ static IDENTITY: Readonly<AcGeMatrix3d>;
12
+ /**
13
+ * A column-major list of matrix values.
14
+ */
15
+ elements: number[];
16
+ /**
17
+ * Create a 4x4 matrix with the given arguments in row-major order. If no arguments are provided,
18
+ * the constructor initializes the Matrix4 to the 4x4 identity matrix.
19
+ *
20
+ * @param n11 Input element in the first row and the first column
21
+ * @param n12 Input element in the first row and the second column
22
+ * @param n13 Input element in the first row and the third column
23
+ * @param n14 Input element in the first row and the forth column
24
+ * @param n21 Input element in the second row and the first column
25
+ * @param n22 Input element in the second row and the second column
26
+ * @param n23 Input element in the second row and the third column
27
+ * @param n24 Input element in the second row and the forth column
28
+ * @param n31 Input element in the third row and the first column
29
+ * @param n32 Input element in the third row and the second column
30
+ * @param n33 Input element in the third row and the third column
31
+ * @param n34 Input element in the third row and the forth column
32
+ * @param n41 Input element in the forth row and the first column
33
+ * @param n42 Input element in the forth row and the second column
34
+ * @param n43 Input element in the forth row and the third column
35
+ * @param n44 Input element in the forth row and the forth column
36
+ */
37
+ constructor(n11?: number, n12?: number, n13?: number, n14?: number, n21?: number, n22?: number, n23?: number, n24?: number, n31?: number, n32?: number, n33?: number, n34?: number, n41?: number, n42?: number, n43?: number, n44?: number);
38
+ /**
39
+ * Set the elements of this matrix to the supplied row-major values n11, n12, ... n44.
40
+ *
41
+ * @param n11 Input element in the first row and the first column
42
+ * @param n12 Input element in the first row and the second column
43
+ * @param n13 Input element in the first row and the third column
44
+ * @param n14 Input element in the first row and the forth column
45
+ * @param n21 Input element in the second row and the first column
46
+ * @param n22 Input element in the second row and the second column
47
+ * @param n23 Input element in the second row and the third column
48
+ * @param n24 Input element in the second row and the forth column
49
+ * @param n31 Input element in the third row and the first column
50
+ * @param n32 Input element in the third row and the second column
51
+ * @param n33 Input element in the third row and the third column
52
+ * @param n34 Input element in the third row and the forth column
53
+ * @param n41 Input element in the forth row and the first column
54
+ * @param n42 Input element in the forth row and the second column
55
+ * @param n43 Input element in the forth row and the third column
56
+ * @param n44 Input element in the forth row and the forth column
57
+ * @returns Return this matrix
58
+ */
59
+ set(n11: number, n12: number, n13: number, n14: number, n21: number, n22: number, n23: number, n24: number, n31: number, n32: number, n33: number, n34: number, n41: number, n42: number, n43: number, n44: number): this;
60
+ /**
61
+ * Reset this matrix to the identity matrix.
62
+ * @returns Return this matrix
63
+ */
64
+ identity(): this;
65
+ clone(): AcGeMatrix3d;
66
+ /**
67
+ * Copy the elements of matrix m into this matrix.
68
+ * @param m Input one matrix copied from
69
+ * @returns Return this matrix
70
+ */
71
+ copy(m: AcGeMatrix3d): this;
72
+ /**
73
+ * Copy the translation component of the supplied matrix m into this matrix's translation component.
74
+ * @param m Input the matrix copied from
75
+ * @returns Return this matrix
76
+ */
77
+ copyPosition(m: AcGeMatrix3d): this;
78
+ /**
79
+ * Set the upper 3x3 elements of this matrix to the values of the 3x3 matrix m.
80
+ * @param m Input one 3x3 matrix
81
+ * @returns Return this matrix
82
+ */
83
+ setFromMatrix3(m: AcGeMatrix2d): this;
84
+ /**
85
+ * Create transform matrix according to the given the normalized extrusion vector
86
+ * @param extrusion Input the normalized extrusion vector
87
+ * @returns Return this matrix
88
+ */
89
+ setFromExtrusionDirection(extrusion: AcGeVector3d): this;
90
+ /**
91
+ * Extracts the basis of this matrix into the three axis vectors provided.
92
+ * @param xAxis Input X axis vector
93
+ * @param yAxis Input Y axis vector
94
+ * @param zAxis Input Z axis vector
95
+ * @returns Return this matrix
96
+ */
97
+ extractBasis(xAxis: AcGeVector3d, yAxis: AcGeVector3d, zAxis: AcGeVector3d): this;
98
+ /**
99
+ * Set this to the basis matrix consisting of the three provided basis vectors:
100
+ * @param xAxis Input X axis vector
101
+ * @param yAxis Input Y axis vector
102
+ * @param zAxis Input Z axis vector
103
+ * @returns Return this matrix
104
+ */
105
+ makeBasis(xAxis: AcGeVector3dLike, yAxis: AcGeVector3dLike, zAxis: AcGeVector3dLike): this;
106
+ /**
107
+ * Extracts the rotation component of the supplied matrix m into this matrix's rotation component.
108
+ * @param m Input one 4x4 matrix
109
+ * @returns Return this matrix
110
+ */
111
+ extractRotation(m: AcGeMatrix3d): this;
112
+ /**
113
+ * Set the rotation component of this matrix to the rotation specified by q
114
+ * @param q Input one uaternion
115
+ * @returns Return this matrix
116
+ */
117
+ makeRotationFromQuaternion(q: AcGeQuaternion): this;
118
+ /**
119
+ * Construct a rotation matrix, looking from eye towards target oriented by the up vector.
120
+ * @param eye Input eye vector
121
+ * @param target Input target vector
122
+ * @param up Input up vector
123
+ * @returns Return this matrix
124
+ */
125
+ lookAt(eye: AcGeVector3d, target: AcGeVector3d, up: AcGeVector3d): this;
126
+ /**
127
+ * Post-multiply this matrix by m.
128
+ * @param m Input one 4x4 matrix
129
+ * @returns Return this matrix
130
+ */
131
+ multiply(m: AcGeMatrix3d): this;
132
+ /**
133
+ * Pre-multiply this matrix by m.
134
+ * @param m Input one 4x4 matrix
135
+ * @returns Return this matrix
136
+ */
137
+ premultiply(m: AcGeMatrix3d): this;
138
+ /**
139
+ * Set this matrix to a x b.
140
+ * @param a Input one 4x4 matrix
141
+ * @param b Input one 4x4 matrix
142
+ * @returns Return this matrix
143
+ */
144
+ multiplyMatrices(a: AcGeMatrix3d, b: AcGeMatrix3d): this;
145
+ /**
146
+ * Multiply every component of the matrix by a scalar value s.
147
+ * @param s Input one scalar value
148
+ * @returns Return this matrix
149
+ */
150
+ multiplyScalar(s: number): this;
151
+ /**
152
+ * Compute and return the determinant of this matrix.
153
+ * @returns Return the determinant of this matrix.
154
+ */
155
+ determinant(): number;
156
+ /**
157
+ * Transposes this matrix.
158
+ * @returns Return this matrix
159
+ */
160
+ transpose(): this;
161
+ /**
162
+ * Set the position component for this matrix from vector v, without affecting the rest of the matrix.
163
+ * @param x Input one number or one vector
164
+ * @param y Input one number
165
+ * @param z Input one number
166
+ * @returns Return this matrix
167
+ */
168
+ setPosition(x: number | AcGeVector3d, y: number, z: number): this;
169
+ /**
170
+ * Invert this matrix, using the analytic method. You can not invert with a determinant of zero.
171
+ * If you attempt this, the method produces a zero matrix instead.
172
+ * @returns Return this matrix
173
+ */
174
+ invert(): this;
175
+ /**
176
+ * Multiply the columns of this matrix by vector v.
177
+ * @param v Input one vector
178
+ * @returns Return this matrix
179
+ */
180
+ scale(v: AcGeVector3d): this;
181
+ /**
182
+ * Get the maximum scale value of the 3 axes.
183
+ * @returns Return the maximum scale value of the 3 axes.
184
+ */
185
+ getMaxScaleOnAxis(): number;
186
+ /**
187
+ * Set this matrix as a translation transform from vector v, or numbers x, y and z.
188
+ * @param x Input one vector or one number
189
+ * @param y Input one number
190
+ * @param z Input one number
191
+ * @returns Return this matrix
192
+ */
193
+ makeTranslation(x: number | AcGeVector3d, y?: number, z?: number): this;
194
+ /**
195
+ * Set this matrix as a rotational transformation around the X axis by theta (θ) radians.
196
+ * @param theta Input rotation angle in radians.
197
+ * @returns Return this matrix
198
+ */
199
+ makeRotationX(theta: number): this;
200
+ /**
201
+ * Set this matrix as a rotational transformation around the Y axis by theta (θ) radians.
202
+ * @param theta Input rotation angle in radians.
203
+ * @returns Return this matrix
204
+ */
205
+ makeRotationY(theta: number): this;
206
+ /**
207
+ * Set this matrix as a rotational transformation around the Z axis by theta (θ) radians.
208
+ * @param theta Input rotation angle in radians.
209
+ * @returns Return this matrix
210
+ */
211
+ makeRotationZ(theta: number): this;
212
+ /**
213
+ * Set this matrix as rotation transform around axis by theta radians.
214
+ * @param axis Input rotation axis, should be normalized.
215
+ * @param angle Input rotation angle in radians.
216
+ * @returns Return this matrix
217
+ */
218
+ makeRotationAxis(axis: AcGeVector3d, angle: number): this;
219
+ /**
220
+ * Set this matrix as scale transform.
221
+ * @param x Input x scale
222
+ * @param y Input y scale
223
+ * @param z Input z scale
224
+ * @returns Return this matrix
225
+ */
226
+ makeScale(x: number, y: number, z: number): this;
227
+ /**
228
+ * Set this matrix as a shear transform.
229
+ * @param xy Input the amount to shear X by Y.
230
+ * @param xz Input the amount to shear X by Z.
231
+ * @param yx Input the amount to shear Y by X.
232
+ * @param yz Input the amount to shear Y by Z.
233
+ * @param zx Input the amount to shear Z by X.
234
+ * @param zy Input the amount to shear Z by Y.
235
+ * @returns Return this matrix
236
+ */
237
+ makeShear(xy: number, xz: number, yx: number, yz: number, zx: number, zy: number): this;
238
+ /**
239
+ * Set this matrix to the transformation composed of position, quaternion and scale.
240
+ * @param position Input position
241
+ * @param quaternion Input quaternion
242
+ * @param scale Input scale
243
+ * @returns Return this matrix
244
+ */
245
+ compose(position: AcGeVector3d, quaternion: AcGeQuaternion, scale: AcGeVector3d): this;
246
+ /**
247
+ * Decompose this matrix into its position, quaternion and scale components.
248
+ *
249
+ * Note: Not all matrices are decomposable in this way. For example, if an object has a non-uniformly
250
+ * scaled parent, then the object's world matrix may not be decomposable, and this method may not be
251
+ * appropriate.
252
+ * @param position Input position to output
253
+ * @param quaternion Input quaternion to output
254
+ * @param scale Input scale to output
255
+ * @returns Return this matrix
256
+ */
257
+ decompose(position: AcGeVector3d, quaternion: AcGeQuaternion, scale: AcGeVector3d): this;
258
+ /**
259
+ * Return true if this matrix and m are equal.
260
+ * @param matrix Input one matrix to compare
261
+ * @returns Return true if this matrix and m are equal.
262
+ */
263
+ equals(matrix: AcGeMatrix3d): boolean;
264
+ /**
265
+ * Set the elements of this matrix based on an array in column-major format.
266
+ * @param array Input the array to read the elements from.
267
+ * @param offset Input (optional) offset into the array. Default is 0.
268
+ * @returns
269
+ */
270
+ fromArray(array: number[], offset?: number): this;
271
+ /**
272
+ * Write the elements of this matrix to an array in column-major format.
273
+ * @param array Input (optional) array to store the resulting vector in.
274
+ * @param offset Input (optional) offset in the array at which to put the result.
275
+ * @returns Return an array in column-major format by writing the elements of this matrix to it
276
+ */
277
+ toArray(array?: number[], offset?: number): number[];
278
+ }
279
+ //# sourceMappingURL=AcGeMatrix3d.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcGeMatrix3d.d.ts","sourceRoot":"","sources":["../../src/math/AcGeMatrix3d.ts"],"names":[],"mappings":"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"}