@lakuna/umath 1.4.3 → 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 (76) hide show
  1. package/dist/index.d.ts +6 -0
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +11 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/linalg/DualQuaternion.d.ts +23 -46
  6. package/dist/linalg/DualQuaternion.d.ts.map +1 -1
  7. package/dist/linalg/DualQuaternion.js +47 -70
  8. package/dist/linalg/DualQuaternion.js.map +1 -1
  9. package/dist/linalg/Matrix2.d.ts +16 -30
  10. package/dist/linalg/Matrix2.d.ts.map +1 -1
  11. package/dist/linalg/Matrix2.js +30 -44
  12. package/dist/linalg/Matrix2.js.map +1 -1
  13. package/dist/linalg/Matrix3.d.ts +21 -42
  14. package/dist/linalg/Matrix3.d.ts.map +1 -1
  15. package/dist/linalg/Matrix3.js +43 -84
  16. package/dist/linalg/Matrix3.js.map +1 -1
  17. package/dist/linalg/Matrix4.d.ts +40 -79
  18. package/dist/linalg/Matrix4.d.ts.map +1 -1
  19. package/dist/linalg/Matrix4.js +86 -171
  20. package/dist/linalg/Matrix4.js.map +1 -1
  21. package/dist/linalg/Quaternion.d.ts +29 -60
  22. package/dist/linalg/Quaternion.d.ts.map +1 -1
  23. package/dist/linalg/Quaternion.js +54 -85
  24. package/dist/linalg/Quaternion.js.map +1 -1
  25. package/dist/linalg/SlowMatrix.d.ts.map +1 -1
  26. package/dist/linalg/SlowMatrix.js +52 -78
  27. package/dist/linalg/SlowMatrix.js.map +1 -1
  28. package/dist/linalg/SlowSquareMatrix.js +1 -1
  29. package/dist/linalg/SlowSquareMatrix.js.map +1 -1
  30. package/dist/linalg/SlowVector.d.ts +165 -0
  31. package/dist/linalg/SlowVector.d.ts.map +1 -0
  32. package/dist/linalg/SlowVector.js +369 -0
  33. package/dist/linalg/SlowVector.js.map +1 -0
  34. package/dist/linalg/Vector.d.ts +20 -15
  35. package/dist/linalg/Vector.d.ts.map +1 -1
  36. package/dist/linalg/Vector2.d.ts +42 -48
  37. package/dist/linalg/Vector2.d.ts.map +1 -1
  38. package/dist/linalg/Vector2.js +74 -82
  39. package/dist/linalg/Vector2.js.map +1 -1
  40. package/dist/linalg/Vector3.d.ts +46 -56
  41. package/dist/linalg/Vector3.d.ts.map +1 -1
  42. package/dist/linalg/Vector3.js +82 -104
  43. package/dist/linalg/Vector3.js.map +1 -1
  44. package/dist/linalg/Vector4.d.ts +40 -44
  45. package/dist/linalg/Vector4.d.ts.map +1 -1
  46. package/dist/linalg/Vector4.js +69 -79
  47. package/dist/linalg/Vector4.js.map +1 -1
  48. package/dist/utility/MatrixSizeError.d.ts +1 -1
  49. package/dist/utility/MatrixSizeError.d.ts.map +1 -1
  50. package/dist/utility/MatrixSizeError.js +1 -1
  51. package/dist/utility/MatrixSizeError.js.map +1 -1
  52. package/dist/utility/VectorSizeError.d.ts +12 -0
  53. package/dist/utility/VectorSizeError.d.ts.map +1 -0
  54. package/dist/utility/VectorSizeError.js +15 -0
  55. package/dist/utility/VectorSizeError.js.map +1 -0
  56. package/dist/utility/createAxisAngleLike.d.ts +10 -0
  57. package/dist/utility/createAxisAngleLike.d.ts.map +1 -0
  58. package/dist/utility/createAxisAngleLike.js +10 -0
  59. package/dist/utility/createAxisAngleLike.js.map +1 -0
  60. package/package.json +8 -10
  61. package/src/index.ts +16 -0
  62. package/src/linalg/DualQuaternion.ts +51 -134
  63. package/src/linalg/Matrix2.ts +32 -83
  64. package/src/linalg/Matrix3.ts +55 -149
  65. package/src/linalg/Matrix4.ts +136 -292
  66. package/src/linalg/Quaternion.ts +62 -153
  67. package/src/linalg/SlowMatrix.ts +82 -81
  68. package/src/linalg/SlowSquareMatrix.ts +1 -1
  69. package/src/linalg/SlowVector.ts +449 -0
  70. package/src/linalg/Vector.ts +21 -16
  71. package/src/linalg/Vector2.ts +84 -147
  72. package/src/linalg/Vector3.ts +102 -188
  73. package/src/linalg/Vector4.ts +88 -137
  74. package/src/utility/MatrixSizeError.ts +1 -1
  75. package/src/utility/VectorSizeError.ts +14 -0
  76. package/src/utility/createAxisAngleLike.ts +13 -0
@@ -293,7 +293,7 @@ export declare const lookAt: <T extends Matrix4Like>(eye: Vector3Like, center: V
293
293
  /**
294
294
  * Create a matrix that makes something look at something else.
295
295
  * @param eye - The position of the viewer.
296
- * @param center - The point that the viewer is looking at.
296
+ * @param target - The point that the viewer is looking at.
297
297
  * @param up - The local up direction.
298
298
  * @param out - The matrix to store the result in.
299
299
  * @returns The transformation matrix.
@@ -527,104 +527,93 @@ export default class Matrix4 extends Float32Array implements SquareMatrix, Matri
527
527
  /**
528
528
  * Create a transformation matrix that represents a translation by the given vector.
529
529
  * @param vector - The translation vector.
530
- * @param out - The matrix to store the result in.
531
530
  * @returns The transformation matrix.
532
531
  * @see {@link https://en.wikipedia.org/wiki/Transformation_matrix | Transformation matrix}
533
532
  */
534
- static fromTranslation<T extends Matrix4Like = Matrix4>(vector: Vector3Like, out?: T): T;
533
+ static fromTranslation(vector: Vector3Like): Matrix4;
535
534
  /**
536
535
  * Create a transformation matrix that represents a scaling by the given vector.
537
536
  * @param vector - The scaling vector.
538
- * @param out - The matrix to store the result in.
539
537
  * @returns The transformation matrix.
540
538
  * @see {@link https://en.wikipedia.org/wiki/Transformation_matrix | Transformation matrix}
541
539
  */
542
- static fromScaling<T extends Matrix4Like = Matrix4>(vector: Vector3Like, out?: T): T;
540
+ static fromScaling(vector: Vector3Like): Matrix4;
543
541
  /**
544
542
  * Create a transformation matrix that represents a rotation by the given angle around the Z-axis.
545
543
  * @param r - The angle in radians.
546
544
  * @param axis - The axis to rotate around.
547
- * @param out - The matrix to store the result in.
548
545
  * @returns The transformation matrix.
549
546
  * @see {@link https://en.wikipedia.org/wiki/Rotation_matrix | Rotation matrix}
550
547
  */
551
- static fromRotation<T extends Matrix4Like = Matrix4>(r: number, axis: Vector3Like, out?: T): T;
548
+ static fromRotation(r: number, axis: Vector3Like): Matrix4;
552
549
  /**
553
550
  * Create a transformation matrix that represents a rotation by the given angle around the X-axis.
554
551
  * @param r - The angle in radians.
555
- * @param out - The matrix to store the result in.
556
552
  * @returns The transformation matrix.
557
553
  * @see {@link https://en.wikipedia.org/wiki/Rotation_matrix | Rotation matrix}
558
554
  */
559
- static fromXRotation<T extends Matrix4Like = Matrix4>(r: number, out?: T): T;
555
+ static fromXRotation(r: number): Matrix4;
560
556
  /**
561
557
  * Create a transformation matrix that represents a rotation by the given angle around the Y-axis.
562
558
  * @param r - The angle in radians.
563
- * @param out - The matrix to store the result in.
564
559
  * @returns The transformation matrix.
565
560
  * @see {@link https://en.wikipedia.org/wiki/Rotation_matrix | Rotation matrix}
566
561
  */
567
- static fromYRotation<T extends Matrix4Like = Matrix4>(r: number, out?: T): T;
562
+ static fromYRotation(r: number): Matrix4;
568
563
  /**
569
564
  * Create a transformation matrix that represents a rotation by the given angle around the Z-axis.
570
565
  * @param r - The angle in radians.
571
- * @param out - The matrix to store the result in.
572
566
  * @returns The transformation matrix.
573
567
  * @see {@link https://en.wikipedia.org/wiki/Rotation_matrix | Rotation matrix}
574
568
  */
575
- static fromZRotation<T extends Matrix4Like = Matrix4>(r: number, out?: T): T;
569
+ static fromZRotation(r: number): Matrix4;
576
570
  /**
577
571
  * Create a transformation matrix from the given rotation and translation.
578
572
  * @param rotation - The rotation quaternion.
579
573
  * @param translation - The translation vector.
580
- * @param out - The matrix to store the result in.
581
574
  * @returns The transformation matrix.
582
575
  * @see {@link https://en.wikipedia.org/wiki/Rotation_matrix | Rotation matrix}
583
576
  * @see {@link https://en.wikipedia.org/wiki/Transformation_matrix | Transformation matrix}
584
577
  */
585
- static fromRotationTranslation<T extends Matrix4Like = Matrix4>(rotation: QuaternionLike, translation: Vector3Like, out?: T): T;
578
+ static fromRotationTranslation(rotation: QuaternionLike, translation: Vector3Like): Matrix4;
586
579
  /**
587
580
  * Create a transformation matrix from the given rotation, translation, and scale.
588
581
  * @param rotation - The rotation quaternion.
589
582
  * @param translation - The translation vector.
590
583
  * @param scaling - The scaling vector.
591
- * @param out - The matrix to store the result in.
592
584
  * @returns The transformation matrix.
593
585
  * @see {@link https://en.wikipedia.org/wiki/Rotation_matrix | Rotation matrix}
594
586
  * @see {@link https://en.wikipedia.org/wiki/Transformation_matrix | Transformation matrix}
595
587
  */
596
- static fromRotationTranslationScale<T extends Matrix4Like = Matrix4>(rotation: QuaternionLike, translation: Vector3Like, scaling: Vector3Like, out?: T): T;
588
+ static fromRotationTranslationScale(rotation: QuaternionLike, translation: Vector3Like, scaling: Vector3Like): Matrix4;
597
589
  /**
598
590
  * Create a transformation matrix from the given rotation, translation, and scale around the given origin.
599
591
  * @param rotation - The rotation quaternion.
600
592
  * @param translation - The translation vector.
601
593
  * @param scaling - The scaling vector.
602
594
  * @param origin - The origin vector.
603
- * @param out - The matrix to store the result in.
604
595
  * @returns The transformation matrix.
605
596
  * @see {@link https://en.wikipedia.org/wiki/Rotation_matrix | Rotation matrix}
606
597
  * @see {@link https://en.wikipedia.org/wiki/Transformation_matrix | Transformation matrix}
607
598
  */
608
- static fromRotationTranslationScaleOrigin<T extends Matrix4Like = Matrix4>(rotation: QuaternionLike, translation: Vector3Like, scaling: Vector3Like, origin: Vector3Like, out?: T): T;
599
+ static fromRotationTranslationScaleOrigin(rotation: QuaternionLike, translation: Vector3Like, scaling: Vector3Like, origin: Vector3Like): Matrix4;
609
600
  /**
610
601
  * Create a transformation matrix from a dual quaternion.
611
602
  * @param quaternion - The dual quaternion.
612
- * @param out - The matrix to store the result in.
613
603
  * @returns The transformation matrix.
614
604
  * @see {@link https://en.wikipedia.org/wiki/Dual_quaternion | Dual quaternion}
615
605
  * @see {@link https://en.wikipedia.org/wiki/Rotation_matrix | Rotation matrix}
616
606
  * @see {@link https://en.wikipedia.org/wiki/Transformation_matrix | Transformation matrix}
617
607
  */
618
- static fromDualQuaternion<T extends Matrix4Like = Matrix4>(quaternion: DualQuaternionLike, out?: T): T;
608
+ static fromDualQuaternion(quaternion: DualQuaternionLike): Matrix4;
619
609
  /**
620
610
  * Create a transformation matrix from a quaternion.
621
611
  * @param quaternion - The quaternion.
622
- * @param out - The matrix to store the result in.
623
612
  * @returns The transformation matrix.
624
613
  * @see {@link https://en.wikipedia.org/wiki/Rotation_matrix | Rotation matrix}
625
614
  * @see {@link https://en.wikipedia.org/wiki/Transformation_matrix | Transformation matrix}
626
615
  */
627
- static fromQuaternion<T extends Matrix4Like = Matrix4>(quaternion: QuaternionLike, out?: T): T;
616
+ static fromQuaternion(quaternion: QuaternionLike): Matrix4;
628
617
  /**
629
618
  * Generate a frustum matrix with the given bounds.
630
619
  * @param left - The left bound of the frustum.
@@ -633,48 +622,44 @@ export default class Matrix4 extends Float32Array implements SquareMatrix, Matri
633
622
  * @param top - The top bound of the frustum.
634
623
  * @param near - The near bound of the frustum.
635
624
  * @param far - The far bound of the frustum.
636
- * @param out - The matrix to store the result in.
637
625
  * @returns The frustum matrix.
638
626
  * @see {@link https://en.wikipedia.org/wiki/Camera_matrix | Camera matrix}
639
627
  * @see {@link https://en.wikipedia.org/wiki/3D_projection | 3D projection}
640
628
  */
641
- static frustum<T extends Matrix4Like = Matrix4>(left: number, right: number, bottom: number, top: number, near: number, far: number, out?: T): T;
629
+ static frustum(left: number, right: number, bottom: number, top: number, near: number, far: number): Matrix4;
642
630
  /**
643
631
  * Create a perspective projection matrix with the given bounds such that the near and far clip planes correspond to a normalized device coordinate Z range of `[-1, 1]` (OpenGL/WebGL).
644
632
  * @param fov - The vertical field of view in radians.
645
633
  * @param aspect - The aspect ratio (typically the width of the viewport divided by its height).
646
634
  * @param near - The near bound of the frustum.
647
635
  * @param far - The far bound of the frustum.
648
- * @param out - The matrix to store the result in.
649
636
  * @returns The perspective projection matrix.
650
637
  * @see {@link https://en.wikipedia.org/wiki/Camera_matrix | Camera matrix}
651
638
  * @see {@link https://en.wikipedia.org/wiki/3D_projection | 3D projection}
652
639
  */
653
- static perspective<T extends Matrix4Like = Matrix4>(fov: number, aspect: number, near: number, far: number, out?: T): T;
640
+ static perspective(fov: number, aspect: number, near: number, far: number): Matrix4;
654
641
  /**
655
642
  * Create a perspective projection matrix with the given bounds such that the near and far clip planes correspond to a normalized device coordinate Z range of `[0, 1]` (WebGPU/Vulkan/DirectX/Metal).
656
643
  * @param fov - The vertical field of view in radians.
657
644
  * @param aspect - The aspect ratio (typically the width of the viewport divided by its height).
658
645
  * @param near - The near bound of the frustum.
659
646
  * @param far - The far bound of the frustum.
660
- * @param out - The matrix to store the result in.
661
647
  * @returns The perspective projection matrix.
662
648
  * @see {@link https://en.wikipedia.org/wiki/Camera_matrix | Camera matrix}
663
649
  * @see {@link https://en.wikipedia.org/wiki/3D_projection | 3D projection}
664
650
  */
665
- static perspectiveGpu<T extends Matrix4Like = Matrix4>(fov: number, aspect: number, near: number, far: number, out?: T): T;
651
+ static perspectiveGpu(fov: number, aspect: number, near: number, far: number): Matrix4;
666
652
  /**
667
653
  * Create a perspective projection matrix from a field of view. Useful for generating projection matrices to be used with the WebXR API.
668
654
  * @param fov - The field of view.
669
655
  * @param near - The near bound of the frustum.
670
656
  * @param far - The far bound of the frustum.
671
- * @param out - The matrix to store the result in.
672
657
  * @returns The perspective projection matrix.
673
658
  * @see {@link https://en.wikipedia.org/wiki/Camera_matrix | Camera matrix}
674
659
  * @see {@link https://en.wikipedia.org/wiki/3D_projection | 3D projection}
675
660
  * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/WebXR_Device_API | WebXR API}
676
661
  */
677
- static perspectiveFromFieldOfView<T extends Matrix4Like = Matrix4>(fov: FieldOfView, near: number, far: number, out?: T): T;
662
+ static perspectiveFromFieldOfView(fov: FieldOfView, near: number, far: number): Matrix4;
678
663
  /**
679
664
  * Generate an orthogonal projection matrix with the given bounds such that the near and far clip planes correspond to a normalized device coordinate Z range of `[-1, 1]` (OpenGL/WebGL).
680
665
  * @param left - The left bound of the frustum.
@@ -683,12 +668,11 @@ export default class Matrix4 extends Float32Array implements SquareMatrix, Matri
683
668
  * @param top - The top bound of the frustum.
684
669
  * @param near - The near bound of the frustum.
685
670
  * @param far - The far bound of the frustum.
686
- * @param out - The matrix to store the result in.
687
671
  * @returns The frustum matrix.
688
672
  * @see {@link https://en.wikipedia.org/wiki/Camera_matrix | Camera matrix}
689
673
  * @see {@link https://en.wikipedia.org/wiki/3D_projection | 3D projection}
690
674
  */
691
- static ortho<T extends Matrix4Like = Matrix4>(left: number, right: number, bottom: number, top: number, near: number, far: number, out?: T): T;
675
+ static ortho(left: number, right: number, bottom: number, top: number, near: number, far: number): Matrix4;
692
676
  /**
693
677
  * Generate an orthogonal projection matrix with the given bounds such that the near and far clip planes correspond to a normalized device coordinate Z range of `[0, 1]` (WebGPU/Vulkan/DirectX/Metal).
694
678
  * @param left - The left bound of the frustum.
@@ -697,32 +681,29 @@ export default class Matrix4 extends Float32Array implements SquareMatrix, Matri
697
681
  * @param top - The top bound of the frustum.
698
682
  * @param near - The near bound of the frustum.
699
683
  * @param far - The far bound of the frustum.
700
- * @param out - The matrix to store the result in.
701
684
  * @returns The frustum matrix.
702
685
  * @see {@link https://en.wikipedia.org/wiki/Camera_matrix | Camera matrix}
703
686
  * @see {@link https://en.wikipedia.org/wiki/3D_projection | 3D projection}
704
687
  */
705
- static orthoGpu<T extends Matrix4Like = Matrix4>(left: number, right: number, bottom: number, top: number, near: number, far: number, out?: T): T;
688
+ static orthoGpu(left: number, right: number, bottom: number, top: number, near: number, far: number): Matrix4;
706
689
  /**
707
690
  * Generate a look-at matrix. If you want a matrix that actually makes an object look at another object, use `targetTo` instead.
708
691
  * @param eye - The position of the viewer.
709
692
  * @param center - The point that the viewer is looking at.
710
693
  * @param up - The local up direction.
711
- * @param out - The matrix to store the result in.
712
694
  * @returns The look-at matrix.
713
695
  * @see {@link https://en.wikipedia.org/wiki/Transformation_matrix | Transformation matrix}
714
696
  */
715
- static lookAt<T extends Matrix4Like = Matrix4>(eye: Vector3Like, center: Vector3Like, up?: Vector3Like, out?: T): T;
697
+ static lookAt(eye: Vector3Like, center: Vector3Like, up?: Vector3Like): Matrix4;
716
698
  /**
717
699
  * Create a matrix that makes something look at something else.
718
700
  * @param eye - The position of the viewer.
719
701
  * @param target - The point that the viewer is looking at.
720
702
  * @param up - The local up direction.
721
- * @param out - The matrix to store the result in.
722
703
  * @returns The transformation matrix.
723
704
  * @see {@link https://en.wikipedia.org/wiki/Transformation_matrix | Transformation matrix}
724
705
  */
725
- static targetTo<T extends Matrix4Like = Matrix4>(eye: Vector3Like, target: Vector3Like, up?: Vector3Like, out?: T): T;
706
+ static targetTo(eye: Vector3Like, target: Vector3Like, up?: Vector3Like): Matrix4;
726
707
  /**
727
708
  * Create a two-by-two matrix with the given values.
728
709
  * @param c0r0 - The value in the first column and first row.
@@ -741,10 +722,9 @@ export default class Matrix4 extends Float32Array implements SquareMatrix, Matri
741
722
  * @param c3r1 - The value in the fourth column and second row.
742
723
  * @param c3r2 - The value in the fourth column and third row.
743
724
  * @param c3r3 - The value in the fourth column and fourth row.
744
- * @param out - The matrix to store the result in.
745
725
  * @returns The matrix.
746
726
  */
747
- static fromValues<T extends Matrix4Like = Matrix4>(c0r0: number, c0r1: number, c0r2: number, c0r3: number, c1r0: number, c1r1: number, c1r2: number, c1r3: number, c2r0: number, c2r1: number, c2r2: number, c2r3: number, c3r0: number, c3r1: number, c3r2: number, c3r3: number, out?: T): T;
727
+ static fromValues(c0r0: number, c0r1: number, c0r2: number, c0r3: number, c1r0: number, c1r1: number, c1r2: number, c1r3: number, c2r0: number, c2r1: number, c2r2: number, c2r3: number, c3r0: number, c3r1: number, c3r2: number, c3r3: number): Matrix4;
748
728
  /**
749
729
  * Create a four-by-four identity matrix.
750
730
  * @see {@link https://en.wikipedia.org/wiki/Identity_matrix | Identity matrix}
@@ -801,24 +781,21 @@ export default class Matrix4 extends Float32Array implements SquareMatrix, Matri
801
781
  /**
802
782
  * Add two matrices of the same size.
803
783
  * @param matrix - The other matrix.
804
- * @param out - The matrix to store the result in.
805
784
  * @returns The sum of the matrices.
806
785
  * @see {@link https://en.wikipedia.org/wiki/Matrix_addition | Matrix addition}
807
786
  */
808
- add<T extends Matrix4Like = Matrix4>(matrix: Matrix4Like, out?: T): T;
787
+ add(matrix: Matrix4Like): Matrix4;
809
788
  /**
810
789
  * Calculate the adjugate of this matrix.
811
- * @param out - The matrix to store the result in.
812
790
  * @returns The adjugate of this matrix.
813
791
  * @see {@link https://en.wikipedia.org/wiki/Adjugate_matrix | Adjugate matrix}
814
792
  */
815
- adjoint<T extends Matrix4Like = Matrix4>(out?: T): T;
793
+ adjoint(): Matrix4;
816
794
  /**
817
795
  * Copy the values from this matrix to another one.
818
- * @param out - The matrix to store the result in.
819
796
  * @returns The copy.
820
797
  */
821
- clone<T extends Matrix4Like = Matrix4>(out?: T): T;
798
+ clone(): Matrix4;
822
799
  /**
823
800
  * Copy the values of another matrix into this one.
824
801
  * @param matrix - The matrix to copy.
@@ -833,44 +810,39 @@ export default class Matrix4 extends Float32Array implements SquareMatrix, Matri
833
810
  /**
834
811
  * Multiply this matrix by another.
835
812
  * @param matrix - The other matrix.
836
- * @param out - The matrix to store the result in.
837
813
  * @returns The product of the matrices.
838
814
  * @see {@link https://en.wikipedia.org/wiki/Matrix_multiplication | Matrix multiplication}
839
815
  */
840
- multiply<T extends Matrix4Like = Matrix4>(matrix: Matrix4Like, out?: T): T;
816
+ multiply(matrix: Matrix4Like): Matrix4;
841
817
  /**
842
818
  * Multiply this matrix by a scalar value.
843
819
  * @param scalar - The scalar value.
844
- * @param out - The matrix to store the result in.
845
820
  * @returns The product of the matrix and the scalar value.
846
821
  * @see {@link https://en.wikipedia.org/wiki/Matrix_multiplication | Matrix multiplication}
847
822
  */
848
- multiplyScalar<T extends Matrix4Like = Matrix4>(scalar: number, out?: T): T;
823
+ multiplyScalar(scalar: number): Matrix4;
849
824
  /**
850
825
  * Add this matrix to another after multiplying the other by a scalar.
851
826
  * @param matrix - The other matrix.
852
827
  * @param scalar - The scalar.
853
- * @param out - The matrix to store the result in.
854
828
  * @returns The sum.
855
829
  * @see {@link https://en.wikipedia.org/wiki/Matrix_addition | Matrix addition}
856
830
  * @see {@link https://en.wikipedia.org/wiki/Matrix_multiplication | Matrix multiplication}
857
831
  */
858
- multiplyScalarAndAdd<T extends Matrix4Like = Matrix4>(matrix: Matrix4Like, scalar: number, out?: T): T;
832
+ multiplyScalarAndAdd(matrix: Matrix4Like, scalar: number): Matrix4;
859
833
  /**
860
834
  * Subtract another matrix from this one.
861
835
  * @param matrix - The other matrix.
862
- * @param out - The matrix to store the result in.
863
836
  * @returns The difference between the matrices.
864
837
  * @see {@link https://en.wikipedia.org/wiki/Matrix_addition | Matrix addition}
865
838
  */
866
- subtract<T extends Matrix4Like = Matrix4>(matrix: Matrix4Like, out?: T): T;
839
+ subtract(matrix: Matrix4Like): Matrix4;
867
840
  /**
868
841
  * Transpose this matrix.
869
- * @param out - The matrix to store the result in.
870
842
  * @returns The transpose of this matrix.
871
843
  * @see {@link https://en.wikipedia.org/wiki/Transpose | Transpose}
872
844
  */
873
- transpose<T extends Matrix4Like = Matrix4>(out?: T): T;
845
+ transpose(): Matrix4;
874
846
  /**
875
847
  * Get the determinant of this matrix.
876
848
  * @see {@link https://en.wikipedia.org/wiki/Determinant | Determinant}
@@ -884,88 +856,77 @@ export default class Matrix4 extends Float32Array implements SquareMatrix, Matri
884
856
  identity(): this;
885
857
  /**
886
858
  * Invert this matrix.
887
- * @param out - The matrix to store the result in.
888
859
  * @returns The inverted matrix.
889
860
  * @see {@link https://en.wikipedia.org/wiki/Invertible_matrix | Invertible matrix}
890
861
  */
891
- invert<T extends Matrix4Like = Matrix4>(out?: T): T;
862
+ invert(): Matrix4;
892
863
  /**
893
864
  * Scale this matrix by the given vector.
894
865
  * @param vector - The scaling vector.
895
- * @param out - The matrix to store the result in.
896
866
  * @returns The scaled matrix.
897
867
  * @see {@link https://en.wikipedia.org/wiki/Transformation_matrix | Transformation matrix}
898
868
  */
899
- scale<T extends Matrix4Like = Matrix4>(vector: Vector3Like, out?: T): T;
869
+ scale(vector: Vector3Like): Matrix4;
900
870
  /**
901
871
  * Translate this matrix by the given vector.
902
872
  * @param vector - The translation vector.
903
- * @param out - The matrix to store the result in.
904
873
  * @returns The translated matrix.
905
874
  * @see {@link https://en.wikipedia.org/wiki/Transformation_matrix | Transformation matrix}
906
875
  */
907
- translate<T extends Matrix4Like = Matrix4>(vector: Vector3Like, out?: T): T;
876
+ translate(vector: Vector3Like): Matrix4;
908
877
  /**
909
878
  * Rotate this matrix by the given angle around the given axis.
910
879
  * @param r - The angle in radians.
911
880
  * @param axis - The axis.
912
- * @param out - The matrix to store the result in.
913
881
  * @returns The rotated matrix.
914
882
  * @see {@link https://en.wikipedia.org/wiki/Rotation_matrix | Rotation matrix}
915
883
  */
916
- rotate<T extends Matrix4Like = Matrix4>(r: number, axis: Vector3Like, out?: T): T;
884
+ rotate(r: number, axis: Vector3Like): Matrix4;
917
885
  /**
918
886
  * Rotate this matrix by the given angle around the X-axis.
919
887
  * @param r - The angle in radians.
920
- * @param out - The matrix to store the result in.
921
888
  * @returns The rotated matrix.
922
889
  * @see {@link https://en.wikipedia.org/wiki/Rotation_matrix | Rotation matrix}
923
890
  */
924
- rotateX<T extends Matrix4Like = Matrix4>(r: number, out?: T): T;
891
+ rotateX(r: number): Matrix4;
925
892
  /**
926
893
  * Rotate this matrix by the given angle around the Y-axis.
927
894
  * @param r - The angle in radians.
928
- * @param out - The matrix to store the result in.
929
895
  * @returns The rotated matrix.
930
896
  * @see {@link https://en.wikipedia.org/wiki/Rotation_matrix | Rotation matrix}
931
897
  */
932
- rotateY<T extends Matrix4Like = Matrix4>(r: number, out?: T): T;
898
+ rotateY(r: number): Matrix4;
933
899
  /**
934
900
  * Rotate this matrix by the given angle around the Z-axis.
935
901
  * @param r - The angle in radians.
936
- * @param out - The matrix to store the result in.
937
902
  * @returns The rotated matrix.
938
903
  * @see {@link https://en.wikipedia.org/wiki/Rotation_matrix | Rotation matrix}
939
904
  */
940
- rotateZ<T extends Matrix4Like = Matrix4>(r: number, out?: T): T;
905
+ rotateZ(r: number): Matrix4;
941
906
  /**
942
907
  * Get the translation vector component of this transformation matrix.
943
- * @param out - The vector to store the result in.
944
908
  * @returns The translation.
945
909
  * @see {@link https://en.wikipedia.org/wiki/Transformation_matrix | Transformation matrix}
946
910
  */
947
- getTranslation<T extends Vector3Like = Vector3>(out?: T): T;
911
+ getTranslation(): Vector3;
948
912
  /**
949
913
  * Set the translation vector component of this transformation matrix.
950
914
  * @param translation - The translation vector.
951
- * @param out - The matrix to store the result in.
952
915
  * @returns The transformation matrix.
953
916
  * @see {@link https://en.wikipedia.org/wiki/Transformation_matrix | Transformation matrix}
954
917
  */
955
- setTranslation<T extends Matrix4Like = Matrix4>(translation: Vector3Like, out?: T): T;
918
+ setTranslation(translation: Vector3Like): Matrix4;
956
919
  /**
957
920
  * Get the scaling vector component of this transformation matrix.
958
- * @param out - The vector to store the result in.
959
921
  * @returns The scaling.
960
922
  * @see {@link https://en.wikipedia.org/wiki/Transformation_matrix | Transformation matrix}
961
923
  */
962
- getScaling<T extends Vector3Like = Vector3>(out?: T): T;
924
+ getScaling(): Vector3;
963
925
  /**
964
926
  * Get the scaling vector component of this transformation matrix.
965
- * @param out - The quaternion to store the result in.
966
927
  * @returns The rotation.
967
928
  * @see {@link https://en.wikipedia.org/wiki/Rotation_matrix | Rotation matrix}
968
929
  */
969
- getRotation<T extends QuaternionLike = Quaternion>(out?: T): T;
930
+ getRotation(): Quaternion;
970
931
  }
971
932
  //# sourceMappingURL=Matrix4.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Matrix4.d.ts","sourceRoot":"","sources":["../../src/linalg/Matrix4.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Matrix4.d.ts","sourceRoot":"","sources":["../../src/linalg/Matrix4.ts"],"names":[],"mappings":"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"}