@pawells/math-extended 1.1.1 → 2.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 (97) hide show
  1. package/build/angles.d.ts +28 -18
  2. package/build/angles.d.ts.map +1 -1
  3. package/build/angles.js +28 -18
  4. package/build/angles.js.map +1 -1
  5. package/build/clamp.d.ts +5 -3
  6. package/build/clamp.d.ts.map +1 -1
  7. package/build/clamp.js +5 -3
  8. package/build/clamp.js.map +1 -1
  9. package/build/interpolation.d.ts +158 -96
  10. package/build/interpolation.d.ts.map +1 -1
  11. package/build/interpolation.js +158 -96
  12. package/build/interpolation.js.map +1 -1
  13. package/build/matrices/_exports.d.ts +13 -0
  14. package/build/matrices/_exports.d.ts.map +1 -0
  15. package/build/matrices/_exports.js +13 -0
  16. package/build/matrices/_exports.js.map +1 -0
  17. package/build/matrices/arithmetic.d.ts +170 -181
  18. package/build/matrices/arithmetic.d.ts.map +1 -1
  19. package/build/matrices/arithmetic.js +192 -202
  20. package/build/matrices/arithmetic.js.map +1 -1
  21. package/build/matrices/asserts.d.ts +240 -109
  22. package/build/matrices/asserts.d.ts.map +1 -1
  23. package/build/matrices/asserts.js +287 -87
  24. package/build/matrices/asserts.js.map +1 -1
  25. package/build/matrices/core.d.ts +29 -29
  26. package/build/matrices/core.js +1 -1
  27. package/build/matrices/decompositions.d.ts +102 -104
  28. package/build/matrices/decompositions.d.ts.map +1 -1
  29. package/build/matrices/decompositions.js +87 -89
  30. package/build/matrices/decompositions.js.map +1 -1
  31. package/build/matrices/index.d.ts +3 -2
  32. package/build/matrices/index.d.ts.map +1 -1
  33. package/build/matrices/index.js +5 -2
  34. package/build/matrices/index.js.map +1 -1
  35. package/build/matrices/linear-algebra.d.ts +12 -12
  36. package/build/matrices/linear-algebra.js +4 -4
  37. package/build/matrices/normalization.d.ts +8 -8
  38. package/build/matrices/transformations.d.ts +184 -165
  39. package/build/matrices/transformations.d.ts.map +1 -1
  40. package/build/matrices/transformations.js +99 -80
  41. package/build/matrices/transformations.js.map +1 -1
  42. package/build/matrices/types.d.ts +12 -12
  43. package/build/matrices/types.d.ts.map +1 -1
  44. package/build/quaternions/_exports.d.ts +11 -0
  45. package/build/quaternions/_exports.d.ts.map +1 -0
  46. package/build/quaternions/_exports.js +11 -0
  47. package/build/quaternions/_exports.js.map +1 -0
  48. package/build/quaternions/asserts.d.ts +115 -7
  49. package/build/quaternions/asserts.d.ts.map +1 -1
  50. package/build/quaternions/asserts.js +162 -8
  51. package/build/quaternions/asserts.js.map +1 -1
  52. package/build/quaternions/conversions.d.ts +31 -21
  53. package/build/quaternions/conversions.d.ts.map +1 -1
  54. package/build/quaternions/conversions.js +28 -18
  55. package/build/quaternions/conversions.js.map +1 -1
  56. package/build/quaternions/core.d.ts +67 -39
  57. package/build/quaternions/core.d.ts.map +1 -1
  58. package/build/quaternions/core.js +67 -39
  59. package/build/quaternions/core.js.map +1 -1
  60. package/build/quaternions/index.d.ts +3 -2
  61. package/build/quaternions/index.d.ts.map +1 -1
  62. package/build/quaternions/index.js +5 -2
  63. package/build/quaternions/index.js.map +1 -1
  64. package/build/quaternions/interpolation.d.ts +15 -9
  65. package/build/quaternions/interpolation.d.ts.map +1 -1
  66. package/build/quaternions/interpolation.js +15 -9
  67. package/build/quaternions/interpolation.js.map +1 -1
  68. package/build/quaternions/predefined.d.ts +9 -3
  69. package/build/quaternions/predefined.d.ts.map +1 -1
  70. package/build/quaternions/predefined.js +9 -3
  71. package/build/quaternions/predefined.js.map +1 -1
  72. package/build/quaternions/types.d.ts +3 -3
  73. package/build/vectors/_exports.d.ts +10 -0
  74. package/build/vectors/_exports.d.ts.map +1 -0
  75. package/build/vectors/_exports.js +10 -0
  76. package/build/vectors/_exports.js.map +1 -0
  77. package/build/vectors/asserts.d.ts +153 -49
  78. package/build/vectors/asserts.d.ts.map +1 -1
  79. package/build/vectors/asserts.js +202 -52
  80. package/build/vectors/asserts.js.map +1 -1
  81. package/build/vectors/core.d.ts +216 -137
  82. package/build/vectors/core.d.ts.map +1 -1
  83. package/build/vectors/core.js +212 -149
  84. package/build/vectors/core.js.map +1 -1
  85. package/build/vectors/index.d.ts +1 -0
  86. package/build/vectors/index.d.ts.map +1 -1
  87. package/build/vectors/index.js +3 -0
  88. package/build/vectors/index.js.map +1 -1
  89. package/build/vectors/interpolation.d.ts +39 -27
  90. package/build/vectors/interpolation.d.ts.map +1 -1
  91. package/build/vectors/interpolation.js +39 -27
  92. package/build/vectors/interpolation.js.map +1 -1
  93. package/build/vectors/predefined.d.ts +48 -24
  94. package/build/vectors/predefined.d.ts.map +1 -1
  95. package/build/vectors/predefined.js +38 -18
  96. package/build/vectors/predefined.js.map +1 -1
  97. package/package.json +3 -3
@@ -13,9 +13,11 @@ import { AssertVector, AssertVectors, AssertVectorValue, VectorError, AssertVect
13
13
  * @returns A new vector with identical components
14
14
  *
15
15
  * @example
16
- * const original = [1, 2, 3];
17
- * const copy = VectorClone(original);
18
- * copy[0] = 10; // original remains unchanged
16
+ * ```typescript
17
+ * const original = [1, 2, 3];
18
+ * const copy = VectorClone(original);
19
+ * copy[0] = 10; // original remains unchanged
20
+ * ```
19
21
  */
20
22
  export function VectorClone(vector) {
21
23
  AssertVector(vector);
@@ -32,10 +34,12 @@ export function VectorClone(vector) {
32
34
  * @returns True if vectors are equal within tolerance, false otherwise
33
35
  *
34
36
  * @example
35
- * const a = [1.0001, 2.0001];
36
- * const b = [1.0002, 2.0002];
37
- * const exactlyEqual = VectorEquals(a, b); // false
38
- * const approximatelyEqual = VectorEquals(a, b, 0.001); // true
37
+ * ```typescript
38
+ * const a = [1.0001, 2.0001];
39
+ * const b = [1.0002, 2.0002];
40
+ * const exactlyEqual = VectorEquals(a, b); // false
41
+ * const approximatelyEqual = VectorEquals(a, b, 0.001); // true
42
+ * ```
39
43
  */
40
44
  export function VectorEquals(a, b, tolerance = 0) {
41
45
  AssertVectors([a, b]);
@@ -64,9 +68,11 @@ export function VectorEquals(a, b, tolerance = 0) {
64
68
  * @returns String representation of the vector
65
69
  *
66
70
  * @example
67
- * const vec = [1, 2, 3];
68
- * const parens = VectorToString(vec, 'parens'); // "(1, 2, 3)"
69
- * const brackets = VectorToString(vec, 'brackets'); // "[1, 2, 3]"
71
+ * ```typescript
72
+ * const vec = [1, 2, 3];
73
+ * const parens = VectorToString(vec, 'parens'); // "(1, 2, 3)"
74
+ * const brackets = VectorToString(vec, 'brackets'); // "[1, 2, 3]"
75
+ * ```
70
76
  */
71
77
  export function VectorToString(vector, style = 'parens') {
72
78
  AssertVector(vector);
@@ -86,9 +92,11 @@ export function VectorToString(vector, style = 'parens') {
86
92
  * @returns New vector where each component is the sum of corresponding components
87
93
  *
88
94
  * @example
89
- * const position = [10, 20, 30];
90
- * const velocity = [1, -2, 0.5];
91
- * const newPosition = VectorAdd(position, velocity); // [11, 18, 30.5]
95
+ * ```typescript
96
+ * const position = [10, 20, 30];
97
+ * const velocity = [1, -2, 0.5];
98
+ * const newPosition = VectorAdd(position, velocity); // [11, 18, 30.5]
99
+ * ```
92
100
  */
93
101
  export function VectorAdd(a, b) {
94
102
  AssertVectors([a, b]);
@@ -112,9 +120,11 @@ export function VectorAdd(a, b) {
112
120
  * @returns New vector where each component is the difference of corresponding components
113
121
  *
114
122
  * @example
115
- * const target = [100, 50, 0];
116
- * const current = [80, 30, 0];
117
- * const direction = VectorSubtract(target, current); // [20, 20, 0]
123
+ * ```typescript
124
+ * const target = [100, 50, 0];
125
+ * const current = [80, 30, 0];
126
+ * const direction = VectorSubtract(target, current); // [20, 20, 0]
127
+ * ```
118
128
  */
119
129
  export function VectorSubtract(a, b) {
120
130
  AssertVectors([a, b]);
@@ -138,10 +148,12 @@ export function VectorSubtract(a, b) {
138
148
  * @returns New vector with multiplied components
139
149
  *
140
150
  * @example
141
- * const velocity = [10, 5, 0];
142
- * const scaled = VectorMultiply(velocity, 2); // [20, 10, 0] - scalar multiplication
143
- * const factors = [1, -1, 0.5];
144
- * const componentWise = VectorMultiply(velocity, factors); // [10, -5, 0] - component-wise
151
+ * ```typescript
152
+ * const velocity = [10, 5, 0];
153
+ * const scaled = VectorMultiply(velocity, 2); // [20, 10, 0] - scalar multiplication
154
+ * const factors = [1, -1, 0.5];
155
+ * const componentWise = VectorMultiply(velocity, factors); // [10, -5, 0] - component-wise
156
+ * ```
145
157
  */
146
158
  export function VectorMultiply(a, b) {
147
159
  const result = [];
@@ -175,9 +187,11 @@ export function VectorMultiply(a, b) {
175
187
  * @returns The straight-line distance between the two points represented by the vectors
176
188
  *
177
189
  * @example
178
- * const pointA = [0, 0, 0];
179
- * const pointB = [3, 4, 0];
180
- * const distance = VectorDistance(pointA, pointB); // 5.0 (3-4-5 triangle)
190
+ * ```typescript
191
+ * const pointA = [0, 0, 0];
192
+ * const pointB = [3, 4, 0];
193
+ * const distance = VectorDistance(pointA, pointB); // 5.0 (3-4-5 triangle)
194
+ * ```
181
195
  */
182
196
  export function VectorDistance(a, b) {
183
197
  return Math.sqrt(VectorDistanceSquared(a, b));
@@ -192,9 +206,11 @@ export function VectorDistance(a, b) {
192
206
  * @returns The squared distance between vectors
193
207
  *
194
208
  * @example
195
- * const pointA = [1, 1];
196
- * const pointB = [4, 5];
197
- * const distSq = VectorDistanceSquared(pointA, pointB); // 25 (faster than distance comparison)
209
+ * ```typescript
210
+ * const pointA = [1, 1];
211
+ * const pointB = [4, 5];
212
+ * const distSq = VectorDistanceSquared(pointA, pointB); // 25 (faster than distance comparison)
213
+ * ```
198
214
  */
199
215
  export function VectorDistanceSquared(a, b) {
200
216
  AssertVectors([a, b]);
@@ -219,12 +235,13 @@ export function VectorDistanceSquared(a, b) {
219
235
  * @returns The dot product (scalar value)
220
236
  *
221
237
  * @example
222
- * const forward = [0, 0, 1];
223
- * const direction = [0, 0, 2];
224
- * const dot = VectorDot(forward, direction); // 2 (same direction)
225
- *
226
- * const perpendicular = [1, 0, 0];
227
- * const dotPerp = VectorDot(forward, perpendicular); // 0 (perpendicular)
238
+ * ```typescript
239
+ * const forward = [0, 0, 1];
240
+ * const direction = [0, 0, 2];
241
+ * const dot = VectorDot(forward, direction); // 2 (same direction)
242
+ * const perpendicular = [1, 0, 0];
243
+ * const dotPerp = VectorDot(forward, perpendicular); // 0 (perpendicular)
244
+ * ```
228
245
  */
229
246
  export function VectorDot(a, b) {
230
247
  AssertVectors([a, b]);
@@ -249,11 +266,12 @@ export function VectorDot(a, b) {
249
266
  * @throws {VectorError} If the vector is zero or has infinite magnitude
250
267
  *
251
268
  * @example
252
- * const vector = [3, 4, 0];
253
- * const normalized = VectorNormalize(vector); // [0.6, 0.8, 0] (magnitude = 1)
254
- *
255
- * const direction = [10, 0, 0];
256
- * const unitDirection = VectorNormalize(direction); // [1, 0, 0]
269
+ * ```typescript
270
+ * const vector = [3, 4, 0];
271
+ * const normalized = VectorNormalize(vector); // [0.6, 0.8, 0] (magnitude = 1)
272
+ * const direction = [10, 0, 0];
273
+ * const unitDirection = VectorNormalize(direction); // [1, 0, 0]
274
+ * ```
257
275
  */
258
276
  export function VectorNormalize(a) {
259
277
  AssertVector(a);
@@ -278,11 +296,12 @@ export function VectorNormalize(a) {
278
296
  * @returns The magnitude (length) of the vector
279
297
  *
280
298
  * @example
281
- * const velocity = [3, 4, 0];
282
- * const speed = VectorMagnitude(velocity); // 5.0
283
- *
284
- * const unitVector = [1, 0, 0];
285
- * const unitLength = VectorMagnitude(unitVector); // 1.0
299
+ * ```typescript
300
+ * const velocity = [3, 4, 0];
301
+ * const speed = VectorMagnitude(velocity); // 5.0
302
+ * const unitVector = [1, 0, 0];
303
+ * const unitLength = VectorMagnitude(unitVector); // 1.0
304
+ * ```
286
305
  */
287
306
  export function VectorMagnitude(a) {
288
307
  AssertVector(a);
@@ -302,11 +321,12 @@ export function VectorMagnitude(a) {
302
321
  * @returns New vector with absolute values of all components
303
322
  *
304
323
  * @example
305
- * const vector = [-3, 4, -2];
306
- * const absolute = VectorAbs(vector); // [3, 4, 2]
307
- *
308
- * const mixed = [1.5, -2.7, 0];
309
- * const absValues = VectorAbs(mixed); // [1.5, 2.7, 0]
324
+ * ```typescript
325
+ * const vector = [-3, 4, -2];
326
+ * const absolute = VectorAbs(vector); // [3, 4, 2]
327
+ * const mixed = [1.5, -2.7, 0];
328
+ * const absValues = VectorAbs(mixed); // [1.5, 2.7, 0]
329
+ * ```
310
330
  */
311
331
  export function VectorAbs(a) {
312
332
  AssertVector(a);
@@ -325,11 +345,12 @@ export function VectorAbs(a) {
325
345
  * @returns True if all components are zero, false otherwise
326
346
  *
327
347
  * @example
328
- * const zero = [0, 0, 0];
329
- * const isZero = VectorIsZero(zero); // true
330
- *
331
- * const notZero = [0, 0.001, 0];
332
- * const isNotZero = VectorIsZero(notZero); // false
348
+ * ```typescript
349
+ * const zero = [0, 0, 0];
350
+ * const isZero = VectorIsZero(zero); // true
351
+ * const notZero = [0, 0.001, 0];
352
+ * const isNotZero = VectorIsZero(notZero); // false
353
+ * ```
333
354
  */
334
355
  export function VectorIsZero(vector) {
335
356
  return vector.every((v) => v === 0);
@@ -345,13 +366,14 @@ export function VectorIsZero(vector) {
345
366
  * @throws {VectorError} If either vector is zero
346
367
  *
347
368
  * @example
348
- * const right = [1, 0, 0];
349
- * const up = [0, 1, 0];
350
- * const angle = VectorAngle(right, up); // π/2 (90 degrees)
351
- *
352
- * const forward = [0, 0, 1];
353
- * const backward = [0, 0, -1];
354
- * const oppositeAngle = VectorAngle(forward, backward); // π (180 degrees)
369
+ * ```typescript
370
+ * const right = [1, 0, 0];
371
+ * const up = [0, 1, 0];
372
+ * const angle = VectorAngle(right, up); // π/2 (90 degrees)
373
+ * const forward = [0, 0, 1];
374
+ * const backward = [0, 0, -1];
375
+ * const oppositeAngle = VectorAngle(forward, backward); // π (180 degrees)
376
+ * ```
355
377
  */
356
378
  export function VectorAngle(a, b) {
357
379
  AssertVectors([a, b]);
@@ -371,9 +393,11 @@ export function VectorAngle(a, b) {
371
393
  * @returns New rotated 2D vector
372
394
  *
373
395
  * @example
374
- * const right = [1, 0];
375
- * const rotated90 = Vector2Rotate(right, Math.PI / 2); // [0, 1] (up)
376
- * const rotated180 = Vector2Rotate(right, Math.PI); // [-1, 0] (left)
396
+ * ```typescript
397
+ * const right = [1, 0];
398
+ * const rotated90 = Vector2Rotate(right, Math.PI / 2); // [0, 1] (up)
399
+ * const rotated180 = Vector2Rotate(right, Math.PI); // [-1, 0] (left)
400
+ * ```
377
401
  */
378
402
  export function Vector2Rotate(vector, radians) {
379
403
  AssertVector2(vector);
@@ -393,9 +417,11 @@ export function Vector2Rotate(vector, radians) {
393
417
  * @returns Unit vector pointing in the specified direction
394
418
  *
395
419
  * @example
396
- * const right = Vector2FromAngle(0); // [1, 0]
397
- * const up = Vector2FromAngle(Math.PI / 2); // [0, 1]
398
- * const diagonal = Vector2FromAngle(Math.PI / 4); // [0.707, 0.707]
420
+ * ```typescript
421
+ * const right = Vector2FromAngle(0); // [1, 0]
422
+ * const up = Vector2FromAngle(Math.PI / 2); // [0, 1]
423
+ * const diagonal = Vector2FromAngle(Math.PI / 4); // [0.707, 0.707]
424
+ * ```
399
425
  */
400
426
  export function Vector2FromAngle(radians) {
401
427
  return [Math.cos(radians), Math.sin(radians)];
@@ -410,10 +436,12 @@ export function Vector2FromAngle(radians) {
410
436
  * @returns Scalar cross product (positive = counterclockwise, negative = clockwise)
411
437
  *
412
438
  * @example
413
- * const right = [1, 0];
414
- * const up = [0, 1];
415
- * const cross = Vector2Cross(right, up); // 1 (counterclockwise)
416
- * const crossReverse = Vector2Cross(up, right); // -1 (clockwise)
439
+ * ```typescript
440
+ * const right = [1, 0];
441
+ * const up = [0, 1];
442
+ * const cross = Vector2Cross(right, up); // 1 (counterclockwise)
443
+ * const crossReverse = Vector2Cross(up, right); // -1 (clockwise)
444
+ * ```
417
445
  */
418
446
  export function Vector2Cross(a, b) {
419
447
  AssertVector2(a);
@@ -431,9 +459,11 @@ export function Vector2Cross(a, b) {
431
459
  * @throws {VectorError} If vector b is zero
432
460
  *
433
461
  * @example
434
- * const force = [5, 3, 0];
435
- * const surface = [1, 0, 0];
436
- * const perpendicular = Vector3Reject(force, surface); // [0, 3, 0]
462
+ * ```typescript
463
+ * const force = [5, 3, 0];
464
+ * const surface = [1, 0, 0];
465
+ * const perpendicular = Vector3Reject(force, surface); // [0, 3, 0]
466
+ * ```
437
467
  */
438
468
  export function Vector3Reject(a, b) {
439
469
  AssertVector3(a);
@@ -455,9 +485,11 @@ export function Vector3Reject(a, b) {
455
485
  * @throws {VectorError} If vector b is zero
456
486
  *
457
487
  * @example
458
- * const force = [5, 3, 0];
459
- * const surface = [1, 0, 0];
460
- * const parallel = VectorProject(force, surface); // [5, 0, 0]
488
+ * ```typescript
489
+ * const force = [5, 3, 0];
490
+ * const surface = [1, 0, 0];
491
+ * const parallel = VectorProject(force, surface); // [5, 0, 0]
492
+ * ```
461
493
  */
462
494
  export function VectorProject(a, b) {
463
495
  AssertVectors([a, b]);
@@ -484,9 +516,11 @@ export function VectorProject(a, b) {
484
516
  * @throws {VectorError} If the normal is a zero vector
485
517
  *
486
518
  * @example
487
- * const incoming = [1, -1, 0];
488
- * const normal = [0, 1, 0]; // surface normal (upward)
489
- * const reflected = Vector3Reflect(incoming, normal); // [1, 1, 0]
519
+ * ```typescript
520
+ * const incoming = [1, -1, 0];
521
+ * const normal = [0, 1, 0]; // surface normal (upward)
522
+ * const reflected = Vector3Reflect(incoming, normal); // [1, 1, 0]
523
+ * ```
490
524
  */
491
525
  export function Vector3Reflect(incident, normal) {
492
526
  AssertVector3(incident);
@@ -506,11 +540,12 @@ export function Vector3Reflect(incident, normal) {
506
540
  * @returns Vector perpendicular to both a and b (following right-hand rule)
507
541
  *
508
542
  * @example
509
- * const right = [1, 0, 0];
510
- * const forward = [0, 0, 1];
511
- * const up = Vector3Cross(right, forward); // [0, 1, 0]
512
- *
513
- * const normal = Vector3Cross([1, 0, 0], [0, 1, 0]); // [0, 0, 1]
543
+ * ```typescript
544
+ * const right = [1, 0, 0];
545
+ * const forward = [0, 0, 1];
546
+ * const up = Vector3Cross(right, forward); // [0, 1, 0]
547
+ * const normal = Vector3Cross([1, 0, 0], [0, 1, 0]); // [0, 0, 1]
548
+ * ```
514
549
  */
515
550
  export function Vector3Cross(a, b) {
516
551
  AssertVector3(a);
@@ -531,9 +566,11 @@ export function Vector3Cross(a, b) {
531
566
  * @returns Magnitude of the cross product
532
567
  *
533
568
  * @example
534
- * const side1 = [3, 0, 0];
535
- * const side2 = [0, 4, 0];
536
- * const area = VectorCrossMagnitude(side1, side2); // 12 (area of rectangle)
569
+ * ```typescript
570
+ * const side1 = [3, 0, 0];
571
+ * const side2 = [0, 4, 0];
572
+ * const area = VectorCrossMagnitude(side1, side2); // 12 (area of rectangle)
573
+ * ```
537
574
  */
538
575
  export function VectorCrossMagnitude(a, b) {
539
576
  AssertVector3(a);
@@ -552,10 +589,12 @@ export function VectorCrossMagnitude(a, b) {
552
589
  * @returns Signed volume (positive = right-handed orientation)
553
590
  *
554
591
  * @example
555
- * const x = [1, 0, 0];
556
- * const y = [0, 1, 0];
557
- * const z = [0, 0, 1];
558
- * const volume = Vector3ScalarTripleProduct(x, y, z); // 1 (unit cube)
592
+ * ```typescript
593
+ * const x = [1, 0, 0];
594
+ * const y = [0, 1, 0];
595
+ * const z = [0, 0, 1];
596
+ * const volume = Vector3ScalarTripleProduct(x, y, z); // 1 (unit cube)
597
+ * ```
559
598
  */
560
599
  export function Vector3ScalarTripleProduct(a, b, c) {
561
600
  AssertVector3(a);
@@ -575,10 +614,12 @@ export function Vector3ScalarTripleProduct(a, b, c) {
575
614
  * @returns Vector result of a × (b × c)
576
615
  *
577
616
  * @example
578
- * const a = [1, 0, 0];
579
- * const b = [0, 1, 0];
580
- * const c = [0, 0, 1];
581
- * const result = Vector3TripleProduct(a, b, c); // [0, 0, 0]
617
+ * ```typescript
618
+ * const a = [1, 0, 0];
619
+ * const b = [0, 1, 0];
620
+ * const c = [0, 0, 1];
621
+ * const result = Vector3TripleProduct(a, b, c); // [0, 0, 0]
622
+ * ```
582
623
  */
583
624
  export function Vector3TripleProduct(a, b, c) {
584
625
  AssertVector3(a);
@@ -598,9 +639,11 @@ export function Vector3TripleProduct(a, b, c) {
598
639
  * @returns The reflected vector
599
640
  *
600
641
  * @example
601
- * const incoming = [1, -1, 0];
602
- * const wall = [0, 1, 0]; // vertical wall normal
603
- * const bounced = VectorReflect(incoming, wall); // [1, 1, 0]
642
+ * ```typescript
643
+ * const incoming = [1, -1, 0];
644
+ * const wall = [0, 1, 0]; // vertical wall normal
645
+ * const bounced = VectorReflect(incoming, wall); // [1, 1, 0]
646
+ * ```
604
647
  */
605
648
  export function VectorReflect(incident, normal) {
606
649
  AssertVectors([incident, normal]);
@@ -626,11 +669,12 @@ export function VectorReflect(incident, normal) {
626
669
  * @returns Vector with all components negated
627
670
  *
628
671
  * @example
629
- * const forward = [0, 0, 1];
630
- * const backward = VectorNegate(forward); // [0, 0, -1]
631
- *
632
- * const velocity = [5, -3, 2];
633
- * const opposite = VectorNegate(velocity); // [-5, 3, -2]
672
+ * ```typescript
673
+ * const forward = [0, 0, 1];
674
+ * const backward = VectorNegate(forward); // [0, 0, -1]
675
+ * const velocity = [5, -3, 2];
676
+ * const opposite = VectorNegate(velocity); // [-5, 3, -2]
677
+ * ```
634
678
  */
635
679
  export function VectorNegate(a) {
636
680
  const result = [];
@@ -657,10 +701,12 @@ export function VectorNegate(a) {
657
701
  * @throws {VectorError} If any divisor component is zero
658
702
  *
659
703
  * @example
660
- * const velocity = [20, 10, 0];
661
- * const halved = VectorDivide(velocity, 2); // [10, 5, 0] - scalar division
662
- * const factors = [2, 5, 1];
663
- * const componentWise = VectorDivide(velocity, factors); // [10, 2, 0] - component-wise
704
+ * ```typescript
705
+ * const velocity = [20, 10, 0];
706
+ * const halved = VectorDivide(velocity, 2); // [10, 5, 0] - scalar division
707
+ * const factors = [2, 5, 1];
708
+ * const componentWise = VectorDivide(velocity, factors); // [10, 2, 0] - component-wise
709
+ * ```
664
710
  */
665
711
  export function VectorDivide(a, b) {
666
712
  const result = [];
@@ -701,12 +747,13 @@ export function VectorDivide(a, b) {
701
747
  * @returns New vector with each component clamped between min and max
702
748
  *
703
749
  * @example
704
- * const v = [5, -3, 12, 0];
705
- * VectorClamp(v, 0, 10); // [5, 0, 10, 0] - scalar bounds
706
- *
707
- * const mins = [0, -5, 0, -1];
708
- * const maxs = [10, 5, 8, 1];
709
- * VectorClamp(v, mins, maxs); // [5, -3, 8, 0] - per-component bounds
750
+ * ```typescript
751
+ * const v = [5, -3, 12, 0];
752
+ * VectorClamp(v, 0, 10); // [5, 0, 10, 0] - scalar bounds
753
+ * const mins = [0, -5, 0, -1];
754
+ * const maxs = [10, 5, 8, 1];
755
+ * VectorClamp(v, mins, maxs); // [5, -3, 8, 0] - per-component bounds
756
+ * ```
710
757
  */
711
758
  export function VectorClamp(a, min, max) {
712
759
  AssertVector(a);
@@ -732,44 +779,58 @@ export function VectorClamp(a, min, max) {
732
779
  * @throws {VectorError} If max is negative
733
780
  *
734
781
  * @example
735
- * const velocity = [15, 20, 0]; // magnitude ≈ 25
736
- * const limited = VectorLimit(velocity, 10); // magnitude = 10, same direction
737
- *
738
- * const small = [1, 1, 0]; // magnitude ≈ 1.414
739
- * const unchanged = VectorLimit(small, 5); // unchanged since already under limit
740
- */
741
- export function VectorLimit(a, max) {
742
- if (max < 0)
743
- throw new VectorError('Maximum magnitude cannot be negative');
744
- const magnitude = VectorMagnitude(a);
745
- if (magnitude <= max || magnitude === 0)
746
- return VectorClone(a);
747
- const scaleFactor = max / magnitude;
748
- return VectorMultiply(a, scaleFactor);
749
- }
750
- /**
751
- * Validates if the input is a properly formatted vector.
752
- * Performs comprehensive validation without throwing errors.
753
- * Useful for input validation and defensive programming.
754
- *
755
- * @param vector - Input to validate
756
- * @returns True if input is a valid vector, false otherwise
757
- *
758
- * @example
759
- * const valid = VectorIsValid([1, 2, 3]); // true
760
- * const invalid = VectorIsValid("not a vector"); // false
761
- * const nullVector = VectorIsValid(null); // false
762
- * const emptyArray = VectorIsValid([]); // depends on implementation
763
- */
764
- export function VectorIsValid(vector) {
765
- try {
782
+ * ```typescript
783
+ * const velocity = [15, 20, 0]; // magnitude 25
784
+ * const limited = VectorLimit(velocity, 10); // magnitude = 10, same direction
785
+ * const small = [1, 1, 0]; // magnitude ≈ 1.414
786
+ * const unchanged = VectorLimit(small, 5); // unchanged since already under limit
787
+ * ```
788
+ export function VectorGramSchmidt<T extends TAnyVector>(vectors: T[], normalize: boolean = false): TVectorResult<T>[] {
789
+ if (vectors.length === 0) throw new VectorError('GramSchmidt: Empty Vector Set');
790
+ const [firstVector] = vectors;
791
+ if (!firstVector) throw new VectorError('GramSchmidt: Undefined First Vector');
792
+ const dimension = firstVector.length;
793
+ for (const [i, vector] of vectors.entries()) {
766
794
  AssertVector(vector);
767
- return true;
795
+ if (vector.length !== dimension) throw new VectorError(`GramSchmidt: Vector at index ${i} has different dimension than first vector. Expected ${dimension}, got ${vector.length}`);
796
+ if (VectorIsZero(vector)) throw new VectorError(`GramSchmidt: Vector at index ${i} is a zero vector. Cannot orthogonalize zero vectors.`);
768
797
  }
769
- catch {
770
- return false;
798
+
799
+ const result: TVectorResult<T>[] = [];
800
+
801
+ for (const [i, currentVector] of vectors.entries()) {
802
+ AssertVector(currentVector);
803
+
804
+ // Start with a clone of the current vector
805
+ let orthogonalVector = VectorClone(currentVector);
806
+
807
+ // Subtract projections of all previous vectors
808
+ for (let j = 0; j < i; j++) {
809
+ const previousVector = result[j];
810
+ AssertVector(previousVector);
811
+
812
+ // Both vectors have the same dimension, projection result is compatible
813
+ const vectorT = currentVector as unknown as T;
814
+ const prevT = previousVector as unknown as T;
815
+ const projection = VectorProject(vectorT, prevT);
816
+ orthogonalVector = VectorSubtract(orthogonalVector as unknown as T, projection as unknown as T);
817
+ }
818
+
819
+ if (VectorIsZero(orthogonalVector as unknown as T)) {
820
+ throw new VectorError(`GramSchmidt: Vector at index ${i} is linearly dependent on previous vectors. Cannot orthogonalize linearly dependent vectors.`);
821
+ }
822
+
823
+ if (normalize) {
824
+ orthogonalVector = VectorNormalize(orthogonalVector as unknown as T);
825
+ }
826
+
827
+ result.push(orthogonalVector as TVectorResult<T>);
771
828
  }
829
+
830
+ return result;
831
+ }}
772
832
  }
833
+
773
834
  /**
774
835
  * Performs Gram-Schmidt orthogonalization on a set of vectors.
775
836
  * Converts a set of linearly independent vectors into an orthogonal (or orthonormal) set.
@@ -782,9 +843,11 @@ export function VectorIsValid(vector) {
782
843
  * @throws {VectorError} If vectors are linearly dependent or invalid
783
844
  *
784
845
  * @example
785
- * const vectors = [[1, 1, 0], [1, 0, 1], [0, 1, 1]];
786
- * const orthogonal = VectorGramSchmidt(vectors); // Orthogonal set
787
- * const orthonormal = VectorGramSchmidt(vectors, true); // Orthonormal set
846
+ * ```typescript
847
+ * const vectors = [[1, 1, 0], [1, 0, 1], [0, 1, 1]];
848
+ * const orthogonal = VectorGramSchmidt(vectors); // Orthogonal set
849
+ * const orthonormal = VectorGramSchmidt(vectors, true); // Orthonormal set
850
+ * ```
788
851
  */
789
852
  export function VectorGramSchmidt(vectors, normalize = false) {
790
853
  if (vectors.length === 0)
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/vectors/core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/vectors/core.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,5 @@ export * from './core.js';
3
3
  export * from './interpolation.js';
4
4
  export * from './predefined.js';
5
5
  export * from './types.js';
6
+ export * as VectorNamespace from './_exports.js';
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vectors/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vectors/index.ts"],"names":[],"mappings":"AACA,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAG3B,OAAO,KAAK,eAAe,MAAM,eAAe,CAAC"}