@math.gl/core 3.6.3 → 4.0.0-alpha.2

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 (210) hide show
  1. package/dist/classes/base/math-array.d.ts +5 -4
  2. package/dist/classes/base/math-array.d.ts.map +1 -1
  3. package/dist/{esm/classes → classes}/base/math-array.js +8 -3
  4. package/dist/classes/base/math-array.js.map +1 -0
  5. package/dist/classes/base/matrix.d.ts +2 -2
  6. package/dist/classes/base/matrix.d.ts.map +1 -1
  7. package/dist/{esm/classes → classes}/base/matrix.js +4 -4
  8. package/dist/classes/base/matrix.js.map +1 -0
  9. package/dist/classes/base/vector.d.ts +2 -2
  10. package/dist/classes/base/vector.d.ts.map +1 -1
  11. package/dist/{esm/classes → classes}/base/vector.js +4 -4
  12. package/dist/classes/base/vector.js.map +1 -0
  13. package/dist/classes/euler.d.ts +4 -4
  14. package/dist/classes/euler.d.ts.map +1 -1
  15. package/dist/{esm/classes → classes}/euler.js +6 -6
  16. package/dist/classes/euler.js.map +1 -0
  17. package/dist/classes/matrix3.d.ts +5 -2
  18. package/dist/classes/matrix3.d.ts.map +1 -1
  19. package/dist/{esm/classes → classes}/matrix3.js +20 -20
  20. package/dist/classes/matrix3.js.map +1 -0
  21. package/dist/classes/matrix4.d.ts +2 -2
  22. package/dist/classes/matrix4.d.ts.map +1 -1
  23. package/dist/{esm/classes → classes}/matrix4.js +27 -27
  24. package/dist/classes/matrix4.js.map +1 -0
  25. package/dist/classes/pose.d.ts +4 -4
  26. package/dist/classes/pose.d.ts.map +1 -1
  27. package/dist/{esm/classes → classes}/pose.js +4 -4
  28. package/dist/classes/pose.js.map +1 -0
  29. package/dist/classes/quaternion.d.ts +2 -2
  30. package/dist/classes/quaternion.d.ts.map +1 -1
  31. package/dist/{esm/classes → classes}/quaternion.js +26 -26
  32. package/dist/classes/quaternion.js.map +1 -0
  33. package/dist/classes/spherical-coordinates.d.ts +2 -2
  34. package/dist/classes/spherical-coordinates.d.ts.map +1 -1
  35. package/dist/{esm/classes → classes}/spherical-coordinates.js +5 -5
  36. package/dist/classes/spherical-coordinates.js.map +1 -0
  37. package/dist/classes/vector2.d.ts +2 -2
  38. package/dist/classes/vector2.d.ts.map +1 -1
  39. package/dist/{esm/classes → classes}/vector2.js +10 -10
  40. package/dist/classes/vector2.js.map +1 -0
  41. package/dist/classes/vector3.d.ts +2 -2
  42. package/dist/classes/vector3.d.ts.map +1 -1
  43. package/dist/{esm/classes → classes}/vector3.js +14 -14
  44. package/dist/classes/vector3.js.map +1 -0
  45. package/dist/classes/vector4.d.ts +3 -3
  46. package/dist/classes/vector4.d.ts.map +1 -1
  47. package/dist/{esm/classes → classes}/vector4.js +8 -8
  48. package/dist/classes/vector4.js.map +1 -0
  49. package/dist/gl-matrix/common.d.ts +38 -0
  50. package/dist/gl-matrix/common.d.ts.map +1 -0
  51. package/dist/gl-matrix/common.js +19 -0
  52. package/dist/gl-matrix/common.js.map +1 -0
  53. package/dist/gl-matrix/mat3.d.ts +295 -0
  54. package/dist/gl-matrix/mat3.d.ts.map +1 -0
  55. package/dist/gl-matrix/mat3.js +489 -0
  56. package/dist/gl-matrix/mat3.js.map +1 -0
  57. package/dist/gl-matrix/mat4.d.ts +577 -0
  58. package/dist/gl-matrix/mat4.d.ts.map +1 -0
  59. package/dist/gl-matrix/mat4.js +1455 -0
  60. package/dist/gl-matrix/mat4.js.map +1 -0
  61. package/dist/gl-matrix/quat.d.ts +357 -0
  62. package/dist/gl-matrix/quat.d.ts.map +1 -0
  63. package/dist/gl-matrix/quat.js +315 -0
  64. package/dist/gl-matrix/quat.js.map +1 -0
  65. package/dist/gl-matrix/vec2.d.ts +373 -0
  66. package/dist/gl-matrix/vec2.d.ts.map +1 -0
  67. package/dist/gl-matrix/vec2.js +257 -0
  68. package/dist/gl-matrix/vec2.js.map +1 -0
  69. package/dist/gl-matrix/vec3.d.ts +416 -0
  70. package/dist/gl-matrix/vec3.d.ts.map +1 -0
  71. package/dist/gl-matrix/vec3.js +384 -0
  72. package/dist/gl-matrix/vec3.js.map +1 -0
  73. package/dist/gl-matrix/vec4.d.ts +340 -0
  74. package/dist/gl-matrix/vec4.d.ts.map +1 -0
  75. package/dist/gl-matrix/vec4.js +334 -0
  76. package/dist/gl-matrix/vec4.js.map +1 -0
  77. package/dist/gl-matrix/wip/index.d.ts +5 -0
  78. package/dist/gl-matrix/wip/index.d.ts.map +1 -0
  79. package/dist/gl-matrix/wip/index.js +12 -0
  80. package/dist/gl-matrix/wip/index.js.map +1 -0
  81. package/dist/gl-matrix/wip/mat2.d.ts +229 -0
  82. package/dist/gl-matrix/wip/mat2.d.ts.map +1 -0
  83. package/dist/gl-matrix/wip/mat2.js +208 -0
  84. package/dist/gl-matrix/wip/mat2.js.map +1 -0
  85. package/dist/gl-matrix/wip/mat2d.d.ts +244 -0
  86. package/dist/gl-matrix/wip/mat2d.d.ts.map +1 -0
  87. package/dist/gl-matrix/wip/mat2d.js +251 -0
  88. package/dist/gl-matrix/wip/mat2d.js.map +1 -0
  89. package/dist/gl-matrix/wip/quat2.d.ts +352 -0
  90. package/dist/gl-matrix/wip/quat2.d.ts.map +1 -0
  91. package/dist/gl-matrix/wip/quat2.js +482 -0
  92. package/dist/gl-matrix/wip/quat2.js.map +1 -0
  93. package/dist/gl-matrix/wip/types.d.js +2 -0
  94. package/dist/{esm/lib/gl-matrix.d.js.map → gl-matrix/wip/types.d.js.map} +1 -1
  95. package/dist/index.cjs +3788 -0
  96. package/dist/index.d.ts +15 -14
  97. package/dist/index.d.ts.map +1 -1
  98. package/dist/index.js +17 -0
  99. package/dist/index.js.map +1 -0
  100. package/dist/lib/assert.d.ts +1 -1
  101. package/dist/lib/assert.d.ts.map +1 -1
  102. package/dist/lib/assert.js +6 -0
  103. package/dist/lib/assert.js.map +1 -0
  104. package/dist/lib/common.d.ts +10 -5
  105. package/dist/lib/common.d.ts.map +1 -1
  106. package/dist/{esm/lib → lib}/common.js +11 -9
  107. package/dist/lib/common.js.map +1 -0
  108. package/dist/lib/gl-matrix-extras.js.map +1 -0
  109. package/dist/lib/math-utils.d.ts +24 -27
  110. package/dist/lib/math-utils.d.ts.map +1 -1
  111. package/dist/lib/math-utils.js +25 -0
  112. package/dist/lib/math-utils.js.map +1 -0
  113. package/dist/lib/validators.d.ts +1 -1
  114. package/dist/lib/validators.d.ts.map +1 -1
  115. package/dist/{esm/lib → lib}/validators.js +2 -2
  116. package/dist/lib/validators.js.map +1 -0
  117. package/package.json +6 -6
  118. package/src/classes/base/math-array.ts +16 -8
  119. package/src/classes/base/matrix.ts +7 -4
  120. package/src/classes/base/vector.ts +4 -4
  121. package/src/classes/euler.ts +9 -8
  122. package/src/classes/matrix3.ts +37 -24
  123. package/src/classes/matrix4.ts +48 -29
  124. package/src/classes/pose.ts +4 -4
  125. package/src/classes/quaternion.ts +54 -32
  126. package/src/classes/spherical-coordinates.ts +5 -4
  127. package/src/classes/vector2.ts +13 -9
  128. package/src/classes/vector3.ts +26 -12
  129. package/src/classes/vector4.ts +14 -10
  130. package/src/gl-matrix/common.js +58 -0
  131. package/src/gl-matrix/mat3.js +842 -0
  132. package/src/gl-matrix/mat4.js +2169 -0
  133. package/src/gl-matrix/quat.ts +789 -0
  134. package/src/gl-matrix/vec2.js +629 -0
  135. package/src/gl-matrix/vec3.js +827 -0
  136. package/src/gl-matrix/vec4.js +675 -0
  137. package/src/gl-matrix/wip/index.js +15 -0
  138. package/src/gl-matrix/wip/mat2.js +442 -0
  139. package/src/gl-matrix/wip/mat2d.js +505 -0
  140. package/src/gl-matrix/wip/quat2.ts +886 -0
  141. package/src/gl-matrix/wip/types.d.ts +93 -0
  142. package/src/index.ts +16 -14
  143. package/src/lib/assert.ts +1 -1
  144. package/src/lib/common.ts +31 -19
  145. package/src/lib/math-utils.ts +24 -26
  146. package/src/lib/validators.ts +3 -3
  147. package/dist/es5/classes/base/math-array.js +0 -348
  148. package/dist/es5/classes/base/math-array.js.map +0 -1
  149. package/dist/es5/classes/base/matrix.js +0 -108
  150. package/dist/es5/classes/base/matrix.js.map +0 -1
  151. package/dist/es5/classes/base/vector.js +0 -210
  152. package/dist/es5/classes/base/vector.js.map +0 -1
  153. package/dist/es5/classes/euler.js +0 -654
  154. package/dist/es5/classes/euler.js.map +0 -1
  155. package/dist/es5/classes/matrix3.js +0 -284
  156. package/dist/es5/classes/matrix3.js.map +0 -1
  157. package/dist/es5/classes/matrix4.js +0 -574
  158. package/dist/es5/classes/matrix4.js.map +0 -1
  159. package/dist/es5/classes/pose.js +0 -159
  160. package/dist/es5/classes/pose.js.map +0 -1
  161. package/dist/es5/classes/quaternion.js +0 -323
  162. package/dist/es5/classes/quaternion.js.map +0 -1
  163. package/dist/es5/classes/spherical-coordinates.js +0 -208
  164. package/dist/es5/classes/spherical-coordinates.js.map +0 -1
  165. package/dist/es5/classes/vector2.js +0 -156
  166. package/dist/es5/classes/vector2.js.map +0 -1
  167. package/dist/es5/classes/vector3.js +0 -213
  168. package/dist/es5/classes/vector3.js.map +0 -1
  169. package/dist/es5/classes/vector4.js +0 -185
  170. package/dist/es5/classes/vector4.js.map +0 -1
  171. package/dist/es5/docs/README.md +0 -0
  172. package/dist/es5/index.js +0 -236
  173. package/dist/es5/index.js.map +0 -1
  174. package/dist/es5/lib/assert.js +0 -13
  175. package/dist/es5/lib/assert.js.map +0 -1
  176. package/dist/es5/lib/common.js +0 -255
  177. package/dist/es5/lib/common.js.map +0 -1
  178. package/dist/es5/lib/gl-matrix-extras.js +0 -61
  179. package/dist/es5/lib/gl-matrix-extras.js.map +0 -1
  180. package/dist/es5/lib/gl-matrix.d.js +0 -2
  181. package/dist/es5/lib/math-utils.js +0 -34
  182. package/dist/es5/lib/math-utils.js.map +0 -1
  183. package/dist/es5/lib/validators.js +0 -53
  184. package/dist/es5/lib/validators.js.map +0 -1
  185. package/dist/esm/classes/base/math-array.js.map +0 -1
  186. package/dist/esm/classes/base/matrix.js.map +0 -1
  187. package/dist/esm/classes/base/vector.js.map +0 -1
  188. package/dist/esm/classes/euler.js.map +0 -1
  189. package/dist/esm/classes/matrix3.js.map +0 -1
  190. package/dist/esm/classes/matrix4.js.map +0 -1
  191. package/dist/esm/classes/pose.js.map +0 -1
  192. package/dist/esm/classes/quaternion.js.map +0 -1
  193. package/dist/esm/classes/spherical-coordinates.js.map +0 -1
  194. package/dist/esm/classes/vector2.js.map +0 -1
  195. package/dist/esm/classes/vector3.js.map +0 -1
  196. package/dist/esm/classes/vector4.js.map +0 -1
  197. package/dist/esm/docs/README.md +0 -0
  198. package/dist/esm/index.js +0 -16
  199. package/dist/esm/index.js.map +0 -1
  200. package/dist/esm/lib/assert.js +0 -6
  201. package/dist/esm/lib/assert.js.map +0 -1
  202. package/dist/esm/lib/common.js.map +0 -1
  203. package/dist/esm/lib/gl-matrix-extras.js.map +0 -1
  204. package/dist/esm/lib/math-utils.js +0 -27
  205. package/dist/esm/lib/math-utils.js.map +0 -1
  206. package/dist/esm/lib/validators.js.map +0 -1
  207. package/src/docs/README.md +0 -0
  208. /package/dist/{esm/lib → lib}/gl-matrix-extras.js +0 -0
  209. /package/dist/{esm/lib → lib}/gl-matrix.d.js +0 -0
  210. /package/dist/{es5/lib → lib}/gl-matrix.d.js.map +0 -0
@@ -0,0 +1,577 @@
1
+ /**
2
+ * 4x4 Matrix<br>Format: column-major, when typed out it looks like row-major<br>The matrices are being post multiplied.
3
+ * @module mat4
4
+ */
5
+ /**
6
+ * Creates a new identity mat4
7
+ *
8
+ * @returns a new 4x4 matrix
9
+ */
10
+ export function create(): any[] | Float32Array;
11
+ /**
12
+ * Creates a new mat4 initialized with values from an existing matrix
13
+ *
14
+ * @param {ReadonlyMat4} a matrix to clone
15
+ * @returns {mat4} a new 4x4 matrix
16
+ */
17
+ export function clone(a: ReadonlyMat4): mat4;
18
+ /**
19
+ * Copy the values from one mat4 to another
20
+ *
21
+ * @param {mat4} out the receiving matrix
22
+ * @param {ReadonlyMat4} a the source matrix
23
+ * @returns {mat4} out
24
+ */
25
+ export function copy(out: mat4, a: ReadonlyMat4): mat4;
26
+ /**
27
+ * Create a new mat4 with the given values
28
+ *
29
+ * @param {Number} m00 Component in column 0, row 0 position (index 0)
30
+ * @param {Number} m01 Component in column 0, row 1 position (index 1)
31
+ * @param {Number} m02 Component in column 0, row 2 position (index 2)
32
+ * @param {Number} m03 Component in column 0, row 3 position (index 3)
33
+ * @param {Number} m10 Component in column 1, row 0 position (index 4)
34
+ * @param {Number} m11 Component in column 1, row 1 position (index 5)
35
+ * @param {Number} m12 Component in column 1, row 2 position (index 6)
36
+ * @param {Number} m13 Component in column 1, row 3 position (index 7)
37
+ * @param {Number} m20 Component in column 2, row 0 position (index 8)
38
+ * @param {Number} m21 Component in column 2, row 1 position (index 9)
39
+ * @param {Number} m22 Component in column 2, row 2 position (index 10)
40
+ * @param {Number} m23 Component in column 2, row 3 position (index 11)
41
+ * @param {Number} m30 Component in column 3, row 0 position (index 12)
42
+ * @param {Number} m31 Component in column 3, row 1 position (index 13)
43
+ * @param {Number} m32 Component in column 3, row 2 position (index 14)
44
+ * @param {Number} m33 Component in column 3, row 3 position (index 15)
45
+ * @returns {mat4} A new mat4
46
+ */
47
+ export function fromValues(m00: number, m01: number, m02: number, m03: number, m10: number, m11: number, m12: number, m13: number, m20: number, m21: number, m22: number, m23: number, m30: number, m31: number, m32: number, m33: number): mat4;
48
+ /**
49
+ * Set the components of a mat4 to the given values
50
+ *
51
+ * @param {mat4} out the receiving matrix
52
+ * @param {Number} m00 Component in column 0, row 0 position (index 0)
53
+ * @param {Number} m01 Component in column 0, row 1 position (index 1)
54
+ * @param {Number} m02 Component in column 0, row 2 position (index 2)
55
+ * @param {Number} m03 Component in column 0, row 3 position (index 3)
56
+ * @param {Number} m10 Component in column 1, row 0 position (index 4)
57
+ * @param {Number} m11 Component in column 1, row 1 position (index 5)
58
+ * @param {Number} m12 Component in column 1, row 2 position (index 6)
59
+ * @param {Number} m13 Component in column 1, row 3 position (index 7)
60
+ * @param {Number} m20 Component in column 2, row 0 position (index 8)
61
+ * @param {Number} m21 Component in column 2, row 1 position (index 9)
62
+ * @param {Number} m22 Component in column 2, row 2 position (index 10)
63
+ * @param {Number} m23 Component in column 2, row 3 position (index 11)
64
+ * @param {Number} m30 Component in column 3, row 0 position (index 12)
65
+ * @param {Number} m31 Component in column 3, row 1 position (index 13)
66
+ * @param {Number} m32 Component in column 3, row 2 position (index 14)
67
+ * @param {Number} m33 Component in column 3, row 3 position (index 15)
68
+ * @returns {mat4} out
69
+ */
70
+ export function set(out: mat4, m00: number, m01: number, m02: number, m03: number, m10: number, m11: number, m12: number, m13: number, m20: number, m21: number, m22: number, m23: number, m30: number, m31: number, m32: number, m33: number): mat4;
71
+ /**
72
+ * Set a mat4 to the identity matrix
73
+ *
74
+ * @param {mat4} out the receiving matrix
75
+ * @returns {mat4} out
76
+ */
77
+ export function identity(out: mat4): mat4;
78
+ /**
79
+ * Transpose the values of a mat4
80
+ *
81
+ * @param {mat4} out the receiving matrix
82
+ * @param {ReadonlyMat4} a the source matrix
83
+ * @returns {mat4} out
84
+ */
85
+ export function transpose(out: mat4, a: ReadonlyMat4): mat4;
86
+ /**
87
+ * Inverts a mat4
88
+ *
89
+ * @param {mat4} out the receiving matrix
90
+ * @param {ReadonlyMat4} a the source matrix
91
+ * @returns {mat4} out
92
+ */
93
+ export function invert(out: mat4, a: ReadonlyMat4): mat4;
94
+ /**
95
+ * Calculates the adjugate of a mat4
96
+ *
97
+ * @param {mat4} out the receiving matrix
98
+ * @param {ReadonlyMat4} a the source matrix
99
+ * @returns {mat4} out
100
+ */
101
+ export function adjoint(out: mat4, a: ReadonlyMat4): mat4;
102
+ /**
103
+ * Calculates the determinant of a mat4
104
+ *
105
+ * @param {ReadonlyMat4} a the source matrix
106
+ * @returns {Number} determinant of a
107
+ */
108
+ export function determinant(a: ReadonlyMat4): number;
109
+ /**
110
+ * Multiplies two mat4s
111
+ *
112
+ * @param {mat4} out the receiving matrix
113
+ * @param {ReadonlyMat4} a the first operand
114
+ * @param {ReadonlyMat4} b the second operand
115
+ * @returns {mat4} out
116
+ */
117
+ export function multiply(out: mat4, a: ReadonlyMat4, b: ReadonlyMat4): mat4;
118
+ /**
119
+ * Translate a mat4 by the given vector
120
+ *
121
+ * @param {mat4} out the receiving matrix
122
+ * @param {ReadonlyMat4} a the matrix to translate
123
+ * @param {ReadonlyVec3} v vector to translate by
124
+ * @returns {mat4} out
125
+ */
126
+ export function translate(out: mat4, a: ReadonlyMat4, v: ReadonlyVec3): mat4;
127
+ /**
128
+ * Scales the mat4 by the dimensions in the given vec3 not using vectorization
129
+ *
130
+ * @param {mat4} out the receiving matrix
131
+ * @param {ReadonlyMat4} a the matrix to scale
132
+ * @param {ReadonlyVec3} v the vec3 to scale the matrix by
133
+ * @returns {mat4} out
134
+ **/
135
+ export function scale(out: mat4, a: ReadonlyMat4, v: ReadonlyVec3): mat4;
136
+ /**
137
+ * Rotates a mat4 by the given angle around the given axis
138
+ *
139
+ * @param {mat4} out the receiving matrix
140
+ * @param {ReadonlyMat4} a the matrix to rotate
141
+ * @param {Number} rad the angle to rotate the matrix by
142
+ * @param {ReadonlyVec3} axis the axis to rotate around
143
+ * @returns {mat4} out
144
+ */
145
+ export function rotate(out: mat4, a: ReadonlyMat4, rad: number, axis: ReadonlyVec3): mat4;
146
+ /**
147
+ * Rotates a matrix by the given angle around the X axis
148
+ *
149
+ * @param {mat4} out the receiving matrix
150
+ * @param {ReadonlyMat4} a the matrix to rotate
151
+ * @param {Number} rad the angle to rotate the matrix by
152
+ * @returns {mat4} out
153
+ */
154
+ export function rotateX(out: mat4, a: ReadonlyMat4, rad: number): mat4;
155
+ /**
156
+ * Rotates a matrix by the given angle around the Y axis
157
+ *
158
+ * @param {mat4} out the receiving matrix
159
+ * @param {ReadonlyMat4} a the matrix to rotate
160
+ * @param {Number} rad the angle to rotate the matrix by
161
+ * @returns {mat4} out
162
+ */
163
+ export function rotateY(out: mat4, a: ReadonlyMat4, rad: number): mat4;
164
+ /**
165
+ * Rotates a matrix by the given angle around the Z axis
166
+ *
167
+ * @param {mat4} out the receiving matrix
168
+ * @param {ReadonlyMat4} a the matrix to rotate
169
+ * @param {Number} rad the angle to rotate the matrix by
170
+ * @returns {mat4} out
171
+ */
172
+ export function rotateZ(out: mat4, a: ReadonlyMat4, rad: number): mat4;
173
+ /**
174
+ * Creates a matrix from a vector translation
175
+ * This is equivalent to (but much faster than):
176
+ *
177
+ * mat4.identity(dest);
178
+ * mat4.translate(dest, dest, vec);
179
+ *
180
+ * @param {mat4} out mat4 receiving operation result
181
+ * @param {ReadonlyVec3} v Translation vector
182
+ * @returns {mat4} out
183
+ */
184
+ export function fromTranslation(out: mat4, v: ReadonlyVec3): mat4;
185
+ /**
186
+ * Creates a matrix from a vector scaling
187
+ * This is equivalent to (but much faster than):
188
+ *
189
+ * mat4.identity(dest);
190
+ * mat4.scale(dest, dest, vec);
191
+ *
192
+ * @param {mat4} out mat4 receiving operation result
193
+ * @param {ReadonlyVec3} v Scaling vector
194
+ * @returns {mat4} out
195
+ */
196
+ export function fromScaling(out: mat4, v: ReadonlyVec3): mat4;
197
+ /**
198
+ * Creates a matrix from a given angle around a given axis
199
+ * This is equivalent to (but much faster than):
200
+ *
201
+ * mat4.identity(dest);
202
+ * mat4.rotate(dest, dest, rad, axis);
203
+ *
204
+ * @param {mat4} out mat4 receiving operation result
205
+ * @param {Number} rad the angle to rotate the matrix by
206
+ * @param {ReadonlyVec3} axis the axis to rotate around
207
+ * @returns {mat4} out
208
+ */
209
+ export function fromRotation(out: mat4, rad: number, axis: ReadonlyVec3): mat4;
210
+ /**
211
+ * Creates a matrix from the given angle around the X axis
212
+ * This is equivalent to (but much faster than):
213
+ *
214
+ * mat4.identity(dest);
215
+ * mat4.rotateX(dest, dest, rad);
216
+ *
217
+ * @param {mat4} out mat4 receiving operation result
218
+ * @param {Number} rad the angle to rotate the matrix by
219
+ * @returns {mat4} out
220
+ */
221
+ export function fromXRotation(out: mat4, rad: number): mat4;
222
+ /**
223
+ * Creates a matrix from the given angle around the Y axis
224
+ * This is equivalent to (but much faster than):
225
+ *
226
+ * mat4.identity(dest);
227
+ * mat4.rotateY(dest, dest, rad);
228
+ *
229
+ * @param {mat4} out mat4 receiving operation result
230
+ * @param {Number} rad the angle to rotate the matrix by
231
+ * @returns {mat4} out
232
+ */
233
+ export function fromYRotation(out: mat4, rad: number): mat4;
234
+ /**
235
+ * Creates a matrix from the given angle around the Z axis
236
+ * This is equivalent to (but much faster than):
237
+ *
238
+ * mat4.identity(dest);
239
+ * mat4.rotateZ(dest, dest, rad);
240
+ *
241
+ * @param {mat4} out mat4 receiving operation result
242
+ * @param {Number} rad the angle to rotate the matrix by
243
+ * @returns {mat4} out
244
+ */
245
+ export function fromZRotation(out: mat4, rad: number): mat4;
246
+ /**
247
+ * Creates a matrix from a quaternion rotation and vector translation
248
+ * This is equivalent to (but much faster than):
249
+ *
250
+ * mat4.identity(dest);
251
+ * mat4.translate(dest, vec);
252
+ * let quatMat = mat4.create();
253
+ * quat4.toMat4(quat, quatMat);
254
+ * mat4.multiply(dest, quatMat);
255
+ *
256
+ * @param {mat4} out mat4 receiving operation result
257
+ * @param {quat4} q Rotation quaternion
258
+ * @param {ReadonlyVec3} v Translation vector
259
+ * @returns {mat4} out
260
+ */
261
+ export function fromRotationTranslation(out: mat4, q: quat4, v: ReadonlyVec3): mat4;
262
+ /**
263
+ * Creates a new mat4 from a dual quat.
264
+ *
265
+ * @param {mat4} out Matrix
266
+ * @param {ReadonlyQuat2} a Dual Quaternion
267
+ * @returns {mat4} mat4 receiving operation result
268
+ */
269
+ export function fromQuat2(out: mat4, a: ReadonlyQuat2): mat4;
270
+ /**
271
+ * Returns the translation vector component of a transformation
272
+ * matrix. If a matrix is built with fromRotationTranslation,
273
+ * the returned vector will be the same as the translation vector
274
+ * originally supplied.
275
+ * @param {vec3} out Vector to receive translation component
276
+ * @param {ReadonlyMat4} mat Matrix to be decomposed (input)
277
+ * @return {vec3} out
278
+ */
279
+ export function getTranslation(out: vec3, mat: ReadonlyMat4): vec3;
280
+ /**
281
+ * Returns the scaling factor component of a transformation
282
+ * matrix. If a matrix is built with fromRotationTranslationScale
283
+ * with a normalized Quaternion paramter, the returned vector will be
284
+ * the same as the scaling vector
285
+ * originally supplied.
286
+ * @param {vec3} out Vector to receive scaling factor component
287
+ * @param {ReadonlyMat4} mat Matrix to be decomposed (input)
288
+ * @return {vec3} out
289
+ */
290
+ export function getScaling(out: vec3, mat: ReadonlyMat4): vec3;
291
+ /**
292
+ * Returns a quaternion representing the rotational component
293
+ * of a transformation matrix. If a matrix is built with
294
+ * fromRotationTranslation, the returned quaternion will be the
295
+ * same as the quaternion originally supplied.
296
+ * @param {quat} out Quaternion to receive the rotation component
297
+ * @param {ReadonlyMat4} mat Matrix to be decomposed (input)
298
+ * @return {quat} out
299
+ */
300
+ export function getRotation(out: quat, mat: ReadonlyMat4): quat;
301
+ /**
302
+ * Decomposes a transformation matrix into its rotation, translation
303
+ * and scale components. Returns only the rotation component
304
+ * @param {quat} out_r Quaternion to receive the rotation component
305
+ * @param {vec3} out_t Vector to receive the translation vector
306
+ * @param {vec3} out_s Vector to receive the scaling factor
307
+ * @param {ReadonlyMat4} mat Matrix to be decomposed (input)
308
+ * @returns {quat} out_r
309
+ */
310
+ export function decompose(out_r: quat, out_t: vec3, out_s: vec3, mat: ReadonlyMat4): quat;
311
+ /**
312
+ * Creates a matrix from a quaternion rotation, vector translation and vector scale
313
+ * This is equivalent to (but much faster than):
314
+ *
315
+ * mat4.identity(dest);
316
+ * mat4.translate(dest, vec);
317
+ * let quatMat = mat4.create();
318
+ * quat4.toMat4(quat, quatMat);
319
+ * mat4.multiply(dest, quatMat);
320
+ * mat4.scale(dest, scale)
321
+ *
322
+ * @param {mat4} out mat4 receiving operation result
323
+ * @param {quat4} q Rotation quaternion
324
+ * @param {ReadonlyVec3} v Translation vector
325
+ * @param {ReadonlyVec3} s Scaling vector
326
+ * @returns {mat4} out
327
+ */
328
+ export function fromRotationTranslationScale(out: mat4, q: quat4, v: ReadonlyVec3, s: ReadonlyVec3): mat4;
329
+ /**
330
+ * Creates a matrix from a quaternion rotation, vector translation and vector scale, rotating and scaling around the given origin
331
+ * This is equivalent to (but much faster than):
332
+ *
333
+ * mat4.identity(dest);
334
+ * mat4.translate(dest, vec);
335
+ * mat4.translate(dest, origin);
336
+ * let quatMat = mat4.create();
337
+ * quat4.toMat4(quat, quatMat);
338
+ * mat4.multiply(dest, quatMat);
339
+ * mat4.scale(dest, scale)
340
+ * mat4.translate(dest, negativeOrigin);
341
+ *
342
+ * @param {mat4} out mat4 receiving operation result
343
+ * @param {quat4} q Rotation quaternion
344
+ * @param {ReadonlyVec3} v Translation vector
345
+ * @param {ReadonlyVec3} s Scaling vector
346
+ * @param {ReadonlyVec3} o The origin vector around which to scale and rotate
347
+ * @returns {mat4} out
348
+ */
349
+ export function fromRotationTranslationScaleOrigin(out: mat4, q: quat4, v: ReadonlyVec3, s: ReadonlyVec3, o: ReadonlyVec3): mat4;
350
+ /**
351
+ * Calculates a 4x4 matrix from the given quaternion
352
+ *
353
+ * @param {mat4} out mat4 receiving operation result
354
+ * @param {ReadonlyQuat} q Quaternion to create matrix from
355
+ *
356
+ * @returns {mat4} out
357
+ */
358
+ export function fromQuat(out: mat4, q: ReadonlyQuat): mat4;
359
+ /**
360
+ * Generates a frustum matrix with the given bounds
361
+ *
362
+ * @param {mat4} out mat4 frustum matrix will be written into
363
+ * @param {Number} left Left bound of the frustum
364
+ * @param {Number} right Right bound of the frustum
365
+ * @param {Number} bottom Bottom bound of the frustum
366
+ * @param {Number} top Top bound of the frustum
367
+ * @param {Number} near Near bound of the frustum
368
+ * @param {Number} far Far bound of the frustum
369
+ * @returns {mat4} out
370
+ */
371
+ export function frustum(out: mat4, left: number, right: number, bottom: number, top: number, near: number, far: number): mat4;
372
+ /**
373
+ * Generates a perspective projection matrix with the given bounds.
374
+ * The near/far clip planes correspond to a normalized device coordinate Z range of [-1, 1],
375
+ * which matches WebGL/OpenGL's clip volume.
376
+ * Passing null/undefined/no value for far will generate infinite projection matrix.
377
+ *
378
+ * @param {mat4} out mat4 frustum matrix will be written into
379
+ * @param {number} fovy Vertical field of view in radians
380
+ * @param {number} aspect Aspect ratio. typically viewport width/height
381
+ * @param {number} near Near bound of the frustum
382
+ * @param {number} far Far bound of the frustum, can be null or Infinity
383
+ * @returns {mat4} out
384
+ */
385
+ export function perspectiveNO(out: mat4, fovy: number, aspect: number, near: number, far: number): mat4;
386
+ /**
387
+ * Generates a perspective projection matrix suitable for WebGPU with the given bounds.
388
+ * The near/far clip planes correspond to a normalized device coordinate Z range of [0, 1],
389
+ * which matches WebGPU/Vulkan/DirectX/Metal's clip volume.
390
+ * Passing null/undefined/no value for far will generate infinite projection matrix.
391
+ *
392
+ * @param {mat4} out mat4 frustum matrix will be written into
393
+ * @param {number} fovy Vertical field of view in radians
394
+ * @param {number} aspect Aspect ratio. typically viewport width/height
395
+ * @param {number} near Near bound of the frustum
396
+ * @param {number} far Far bound of the frustum, can be null or Infinity
397
+ * @returns {mat4} out
398
+ */
399
+ export function perspectiveZO(out: mat4, fovy: number, aspect: number, near: number, far: number): mat4;
400
+ /**
401
+ * Generates a perspective projection matrix with the given field of view.
402
+ * This is primarily useful for generating projection matrices to be used
403
+ * with the still experiemental WebVR API.
404
+ *
405
+ * @param {mat4} out mat4 frustum matrix will be written into
406
+ * @param {Object} fov Object containing the following values: upDegrees, downDegrees, leftDegrees, rightDegrees
407
+ * @param {number} near Near bound of the frustum
408
+ * @param {number} far Far bound of the frustum
409
+ * @returns {mat4} out
410
+ */
411
+ export function perspectiveFromFieldOfView(out: mat4, fov: any, near: number, far: number): mat4;
412
+ /**
413
+ * Generates a orthogonal projection matrix with the given bounds.
414
+ * The near/far clip planes correspond to a normalized device coordinate Z range of [-1, 1],
415
+ * which matches WebGL/OpenGL's clip volume.
416
+ *
417
+ * @param {mat4} out mat4 frustum matrix will be written into
418
+ * @param {number} left Left bound of the frustum
419
+ * @param {number} right Right bound of the frustum
420
+ * @param {number} bottom Bottom bound of the frustum
421
+ * @param {number} top Top bound of the frustum
422
+ * @param {number} near Near bound of the frustum
423
+ * @param {number} far Far bound of the frustum
424
+ * @returns {mat4} out
425
+ */
426
+ export function orthoNO(out: mat4, left: number, right: number, bottom: number, top: number, near: number, far: number): mat4;
427
+ /**
428
+ * Generates a orthogonal projection matrix with the given bounds.
429
+ * The near/far clip planes correspond to a normalized device coordinate Z range of [0, 1],
430
+ * which matches WebGPU/Vulkan/DirectX/Metal's clip volume.
431
+ *
432
+ * @param {mat4} out mat4 frustum matrix will be written into
433
+ * @param {number} left Left bound of the frustum
434
+ * @param {number} right Right bound of the frustum
435
+ * @param {number} bottom Bottom bound of the frustum
436
+ * @param {number} top Top bound of the frustum
437
+ * @param {number} near Near bound of the frustum
438
+ * @param {number} far Far bound of the frustum
439
+ * @returns {mat4} out
440
+ */
441
+ export function orthoZO(out: mat4, left: number, right: number, bottom: number, top: number, near: number, far: number): mat4;
442
+ /**
443
+ * Generates a look-at matrix with the given eye position, focal point, and up axis.
444
+ * If you want a matrix that actually makes an object look at another object, you should use targetTo instead.
445
+ *
446
+ * @param {mat4} out mat4 frustum matrix will be written into
447
+ * @param {ReadonlyVec3} eye Position of the viewer
448
+ * @param {ReadonlyVec3} center Point the viewer is looking at
449
+ * @param {ReadonlyVec3} up vec3 pointing up
450
+ * @returns {mat4} out
451
+ */
452
+ export function lookAt(out: mat4, eye: ReadonlyVec3, center: ReadonlyVec3, up: ReadonlyVec3): mat4;
453
+ /**
454
+ * Generates a matrix that makes something look at something else.
455
+ *
456
+ * @param {mat4} out mat4 frustum matrix will be written into
457
+ * @param {ReadonlyVec3} eye Position of the viewer
458
+ * @param {ReadonlyVec3} center Point the viewer is looking at
459
+ * @param {ReadonlyVec3} up vec3 pointing up
460
+ * @returns {mat4} out
461
+ */
462
+ export function targetTo(out: mat4, eye: ReadonlyVec3, target: any, up: ReadonlyVec3): mat4;
463
+ /**
464
+ * Returns a string representation of a mat4
465
+ *
466
+ * @param {ReadonlyMat4} a matrix to represent as a string
467
+ * @returns {String} string representation of the matrix
468
+ */
469
+ export function str(a: ReadonlyMat4): string;
470
+ /**
471
+ * Returns Frobenius norm of a mat4
472
+ *
473
+ * @param {ReadonlyMat4} a the matrix to calculate Frobenius norm of
474
+ * @returns {Number} Frobenius norm
475
+ */
476
+ export function frob(a: ReadonlyMat4): number;
477
+ /**
478
+ * Adds two mat4's
479
+ *
480
+ * @param {mat4} out the receiving matrix
481
+ * @param {ReadonlyMat4} a the first operand
482
+ * @param {ReadonlyMat4} b the second operand
483
+ * @returns {mat4} out
484
+ */
485
+ export function add(out: mat4, a: ReadonlyMat4, b: ReadonlyMat4): mat4;
486
+ /**
487
+ * Subtracts matrix b from matrix a
488
+ *
489
+ * @param {mat4} out the receiving matrix
490
+ * @param {ReadonlyMat4} a the first operand
491
+ * @param {ReadonlyMat4} b the second operand
492
+ * @returns {mat4} out
493
+ */
494
+ export function subtract(out: mat4, a: ReadonlyMat4, b: ReadonlyMat4): mat4;
495
+ /**
496
+ * Multiply each element of the matrix by a scalar.
497
+ *
498
+ * @param {mat4} out the receiving matrix
499
+ * @param {ReadonlyMat4} a the matrix to scale
500
+ * @param {Number} b amount to scale the matrix's elements by
501
+ * @returns {mat4} out
502
+ */
503
+ export function multiplyScalar(out: mat4, a: ReadonlyMat4, b: number): mat4;
504
+ /**
505
+ * Adds two mat4's after multiplying each element of the second operand by a scalar value.
506
+ *
507
+ * @param {mat4} out the receiving vector
508
+ * @param {ReadonlyMat4} a the first operand
509
+ * @param {ReadonlyMat4} b the second operand
510
+ * @param {Number} scale the amount to scale b's elements by before adding
511
+ * @returns {mat4} out
512
+ */
513
+ export function multiplyScalarAndAdd(out: mat4, a: ReadonlyMat4, b: ReadonlyMat4, scale: number): mat4;
514
+ /**
515
+ * Returns whether or not the matrices have exactly the same elements in the same position (when compared with ===)
516
+ *
517
+ * @param {ReadonlyMat4} a The first matrix.
518
+ * @param {ReadonlyMat4} b The second matrix.
519
+ * @returns {Boolean} True if the matrices are equal, false otherwise.
520
+ */
521
+ export function exactEquals(a: ReadonlyMat4, b: ReadonlyMat4): boolean;
522
+ /**
523
+ * Returns whether or not the matrices have approximately the same elements in the same position.
524
+ *
525
+ * @param {ReadonlyMat4} a The first matrix.
526
+ * @param {ReadonlyMat4} b The second matrix.
527
+ * @returns {Boolean} True if the matrices are equal, false otherwise.
528
+ */
529
+ export function equals(a: ReadonlyMat4, b: ReadonlyMat4): boolean;
530
+ /**
531
+ * Generates a perspective projection matrix with the given bounds.
532
+ * The near/far clip planes correspond to a normalized device coordinate Z range of [-1, 1],
533
+ * which matches WebGL/OpenGL's clip volume.
534
+ * Passing null/undefined/no value for far will generate infinite projection matrix.
535
+ *
536
+ * @param {mat4} out mat4 frustum matrix will be written into
537
+ * @param {number} fovy Vertical field of view in radians
538
+ * @param {number} aspect Aspect ratio. typically viewport width/height
539
+ * @param {number} near Near bound of the frustum
540
+ * @param {number} far Far bound of the frustum, can be null or Infinity
541
+ * @returns {mat4} out
542
+ */
543
+ export function perspective(out: mat4, fovy: number, aspect: number, near: number, far: number): mat4;
544
+ /**
545
+ * Generates a orthogonal projection matrix with the given bounds.
546
+ * The near/far clip planes correspond to a normalized device coordinate Z range of [-1, 1],
547
+ * which matches WebGL/OpenGL's clip volume.
548
+ *
549
+ * @param {mat4} out mat4 frustum matrix will be written into
550
+ * @param {number} left Left bound of the frustum
551
+ * @param {number} right Right bound of the frustum
552
+ * @param {number} bottom Bottom bound of the frustum
553
+ * @param {number} top Top bound of the frustum
554
+ * @param {number} near Near bound of the frustum
555
+ * @param {number} far Far bound of the frustum
556
+ * @returns {mat4} out
557
+ */
558
+ export function ortho(out: mat4, left: number, right: number, bottom: number, top: number, near: number, far: number): mat4;
559
+ /**
560
+ * Multiplies two mat4s
561
+ *
562
+ * @param {mat4} out the receiving matrix
563
+ * @param {ReadonlyMat4} a the first operand
564
+ * @param {ReadonlyMat4} b the second operand
565
+ * @returns {mat4} out
566
+ */
567
+ export function mul(out: mat4, a: ReadonlyMat4, b: ReadonlyMat4): mat4;
568
+ /**
569
+ * Subtracts matrix b from matrix a
570
+ *
571
+ * @param {mat4} out the receiving matrix
572
+ * @param {ReadonlyMat4} a the first operand
573
+ * @param {ReadonlyMat4} b the second operand
574
+ * @returns {mat4} out
575
+ */
576
+ export function sub(out: mat4, a: ReadonlyMat4, b: ReadonlyMat4): mat4;
577
+ //# sourceMappingURL=mat4.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mat4.d.ts","sourceRoot":"","sources":["../../src/gl-matrix/mat4.js"],"names":[],"mappings":"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"}