@lakuna/umath 2.0.0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/dist/algorithms/greatestCommonDivisor.d.ts.map +1 -1
- package/dist/algorithms/greatestCommonDivisor.js +14 -4
- package/dist/algorithms/greatestCommonDivisor.js.map +1 -1
- package/dist/index.d.ts +11 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/linalg/DualQuaternion.d.ts +124 -124
- package/dist/linalg/DualQuaternion.d.ts.map +1 -1
- package/dist/linalg/DualQuaternion.js +173 -165
- package/dist/linalg/DualQuaternion.js.map +1 -1
- package/dist/linalg/Matrix.d.ts +24 -24
- package/dist/linalg/Matrix.d.ts.map +1 -1
- package/dist/linalg/Matrix2.d.ts +63 -63
- package/dist/linalg/Matrix2.d.ts.map +1 -1
- package/dist/linalg/Matrix2.js +92 -88
- package/dist/linalg/Matrix2.js.map +1 -1
- package/dist/linalg/Matrix3.d.ts +107 -107
- package/dist/linalg/Matrix3.d.ts.map +1 -1
- package/dist/linalg/Matrix3.js +147 -138
- package/dist/linalg/Matrix3.js.map +1 -1
- package/dist/linalg/Matrix4.d.ts +200 -201
- package/dist/linalg/Matrix4.d.ts.map +1 -1
- package/dist/linalg/Matrix4.js +272 -251
- package/dist/linalg/Matrix4.js.map +1 -1
- package/dist/linalg/Quaternion.d.ts +116 -116
- package/dist/linalg/Quaternion.d.ts.map +1 -1
- package/dist/linalg/Quaternion.js +175 -161
- package/dist/linalg/Quaternion.js.map +1 -1
- package/dist/linalg/SlowMatrix.d.ts +5 -5
- package/dist/linalg/SlowMatrix.d.ts.map +1 -1
- package/dist/linalg/SlowMatrix.js +12 -12
- package/dist/linalg/SlowMatrix.js.map +1 -1
- package/dist/linalg/SlowSquareMatrix.d.ts +6 -6
- package/dist/linalg/SlowSquareMatrix.d.ts.map +1 -1
- package/dist/linalg/SlowSquareMatrix.js +15 -15
- package/dist/linalg/SlowSquareMatrix.js.map +1 -1
- package/dist/linalg/SlowVector.d.ts +70 -70
- package/dist/linalg/SlowVector.d.ts.map +1 -1
- package/dist/linalg/SlowVector.js +153 -153
- package/dist/linalg/SlowVector.js.map +1 -1
- package/dist/linalg/SquareMatrix.d.ts +8 -8
- package/dist/linalg/SquareMatrix.d.ts.map +1 -1
- package/dist/linalg/Vector.d.ts +85 -84
- package/dist/linalg/Vector.d.ts.map +1 -1
- package/dist/linalg/Vector2.d.ts +104 -104
- package/dist/linalg/Vector2.d.ts.map +1 -1
- package/dist/linalg/Vector2.js +145 -143
- package/dist/linalg/Vector2.js.map +1 -1
- package/dist/linalg/Vector3.d.ts +130 -130
- package/dist/linalg/Vector3.d.ts.map +1 -1
- package/dist/linalg/Vector3.js +176 -173
- package/dist/linalg/Vector3.js.map +1 -1
- package/dist/linalg/Vector4.d.ts +101 -101
- package/dist/linalg/Vector4.d.ts.map +1 -1
- package/dist/linalg/Vector4.js +144 -140
- package/dist/linalg/Vector4.js.map +1 -1
- package/dist/types/AxisAngle.d.ts +2 -2
- package/dist/types/AxisAngle.d.ts.map +1 -1
- package/dist/types/FieldOfView.d.ts +2 -2
- package/dist/types/FieldOfView.d.ts.map +1 -1
- package/dist/utility/BigNumber.d.ts +21 -11
- package/dist/utility/BigNumber.d.ts.map +1 -1
- package/dist/utility/BigNumber.js +42 -31
- package/dist/utility/BigNumber.js.map +1 -1
- package/dist/utility/createAxisAngleLike.d.ts.map +1 -1
- package/dist/utility/createAxisAngleLike.js.map +1 -1
- package/package.json +11 -9
- package/src/algorithms/greatestCommonDivisor.ts +19 -7
- package/src/index.ts +17 -13
- package/src/linalg/DualQuaternion.ts +208 -193
- package/src/linalg/Matrix.ts +28 -28
- package/src/linalg/Matrix2.ts +117 -108
- package/src/linalg/Matrix3.ts +177 -158
- package/src/linalg/Matrix4.ts +386 -348
- package/src/linalg/Quaternion.ts +207 -189
- package/src/linalg/SlowMatrix.ts +19 -18
- package/src/linalg/SlowSquareMatrix.ts +19 -18
- package/src/linalg/SlowVector.ts +170 -169
- package/src/linalg/SquareMatrix.ts +9 -9
- package/src/linalg/Vector.ts +91 -89
- package/src/linalg/Vector2.ts +160 -155
- package/src/linalg/Vector3.ts +206 -199
- package/src/linalg/Vector4.ts +165 -156
- package/src/types/AxisAngle.ts +3 -3
- package/src/types/FieldOfView.ts +3 -3
- package/src/utility/BigNumber.ts +63 -41
- package/src/utility/createAxisAngleLike.ts +1 -0
|
@@ -1,17 +1,17 @@
|
|
|
1
|
+
import approxRelative from "../algorithms/approxRelative.js";
|
|
2
|
+
import epsilon from "../utility/epsilon.js";
|
|
1
3
|
import { getScaling as matrix4GetScaling } from "./Matrix4.js";
|
|
2
4
|
import Quaternion, { rotateX as quaternionRotateX, rotateY as quaternionRotateY, rotateZ as quaternionRotateZ } from "./Quaternion.js";
|
|
3
5
|
import Vector3, { createVector3Like, fromValues as vector3FromValues } from "./Vector3.js";
|
|
4
6
|
import { copy as vector4Copy, dot as vector4Dot, fromValues as vector4FromValues, getMagnitude as vector4GetMagnitude, getSquaredMagnitude as vector4GetSquaredMagnitude } from "./Vector4.js";
|
|
5
|
-
import approxRelative from "../algorithms/approxRelative.js";
|
|
6
|
-
import epsilon from "../utility/epsilon.js";
|
|
7
7
|
/**
|
|
8
8
|
* Create a dual quaternion-like object.
|
|
9
9
|
* @returns A dual quaternion-like object.
|
|
10
10
|
* @public
|
|
11
11
|
*/
|
|
12
|
-
export const createDualQuaternionLike = () =>
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
export const createDualQuaternionLike = () =>
|
|
13
|
+
// eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
|
|
14
|
+
new Float32Array(8);
|
|
15
15
|
/**
|
|
16
16
|
* Create a dual quaternion with the given values.
|
|
17
17
|
* @param x1 - The first real component.
|
|
@@ -103,13 +103,13 @@ export const fromMatrix4 = (matrix, out) => {
|
|
|
103
103
|
const sm32 = matrix[9] * is2;
|
|
104
104
|
const sm33 = matrix[10] * is3;
|
|
105
105
|
const trace = sm11 + sm22 + sm33;
|
|
106
|
-
// eslint-disable-next-line init-declarations
|
|
106
|
+
// eslint-disable-next-line @typescript-eslint/init-declarations
|
|
107
107
|
let x;
|
|
108
|
-
// eslint-disable-next-line init-declarations
|
|
108
|
+
// eslint-disable-next-line @typescript-eslint/init-declarations
|
|
109
109
|
let y;
|
|
110
|
-
// eslint-disable-next-line init-declarations
|
|
110
|
+
// eslint-disable-next-line @typescript-eslint/init-declarations
|
|
111
111
|
let z;
|
|
112
|
-
// eslint-disable-next-line init-declarations
|
|
112
|
+
// eslint-disable-next-line @typescript-eslint/init-declarations
|
|
113
113
|
let w;
|
|
114
114
|
if (trace > 0) {
|
|
115
115
|
const s = Math.sqrt(trace + 1) * 2;
|
|
@@ -618,20 +618,61 @@ export const equals = (a, b) => approxRelative(a[0], b[0]) &&
|
|
|
618
618
|
* @public
|
|
619
619
|
*/
|
|
620
620
|
export default class DualQuaternion extends Float32Array {
|
|
621
|
+
/** The first real component of this dual quaternion. */
|
|
622
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
623
|
+
0;
|
|
624
|
+
/** The second real component of this dual quaternion. */
|
|
625
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
626
|
+
1;
|
|
627
|
+
/** The third real component of this dual quaternion. */
|
|
628
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
629
|
+
2;
|
|
630
|
+
/** The fourth real component of this dual quaternion. */
|
|
631
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
632
|
+
3;
|
|
633
|
+
/** The first dual component of this dual quaternion. */
|
|
634
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
635
|
+
4;
|
|
636
|
+
/** The second dual component of this dual quaternion. */
|
|
637
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
638
|
+
5;
|
|
639
|
+
/** The third dual component of this dual quaternion. */
|
|
640
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
641
|
+
6;
|
|
642
|
+
/** The fourth dual component of this dual quaternion. */
|
|
643
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
644
|
+
7;
|
|
645
|
+
/** Get the magnitude (length) of this dual quaternion. */
|
|
646
|
+
get magnitude() {
|
|
647
|
+
return getMagnitude(this);
|
|
648
|
+
}
|
|
649
|
+
/** Get the squared magnitude (length) of this dual quaternion. */
|
|
650
|
+
get squaredMagnitude() {
|
|
651
|
+
return getSquaredMagnitude(this);
|
|
652
|
+
}
|
|
621
653
|
/**
|
|
622
|
-
* Create
|
|
623
|
-
* @
|
|
624
|
-
* @param y1 - The second real component.
|
|
625
|
-
* @param z1 - The third real component.
|
|
626
|
-
* @param w1 - The fourth real component.
|
|
627
|
-
* @param x2 - The first dual component.
|
|
628
|
-
* @param y2 - The second dual component.
|
|
629
|
-
* @param z2 - The third dual component.
|
|
630
|
-
* @param w2 - The fourth dual component.
|
|
631
|
-
* @returns A new dual quaternion.
|
|
654
|
+
* Create an identity dual quaternion.
|
|
655
|
+
* @see {@link https://en.wikipedia.org/wiki/Dual_quaternion | Dual quaternion}
|
|
632
656
|
*/
|
|
633
|
-
|
|
634
|
-
|
|
657
|
+
constructor() {
|
|
658
|
+
super(8);
|
|
659
|
+
this[3] = 1;
|
|
660
|
+
}
|
|
661
|
+
/**
|
|
662
|
+
* Create a dual quaternion from the given four-by-four matrix.
|
|
663
|
+
* @param matrix - The matrix.
|
|
664
|
+
* @returns The dual quaternion.
|
|
665
|
+
*/
|
|
666
|
+
static fromMatrix4(matrix) {
|
|
667
|
+
return fromMatrix4(matrix, new DualQuaternion());
|
|
668
|
+
}
|
|
669
|
+
/**
|
|
670
|
+
* Create a dual quaternion from the given rotation.
|
|
671
|
+
* @param q - The rotation quaternion.
|
|
672
|
+
* @returns The dual quaternion.
|
|
673
|
+
*/
|
|
674
|
+
static fromRotation(q) {
|
|
675
|
+
return fromRotation(q, new DualQuaternion());
|
|
635
676
|
}
|
|
636
677
|
/**
|
|
637
678
|
* Create a dual quaternion from the given rotation and translation.
|
|
@@ -651,45 +692,42 @@ export default class DualQuaternion extends Float32Array {
|
|
|
651
692
|
return fromTranslation(t, new DualQuaternion());
|
|
652
693
|
}
|
|
653
694
|
/**
|
|
654
|
-
* Create a dual quaternion
|
|
655
|
-
* @param
|
|
656
|
-
* @
|
|
695
|
+
* Create a dual quaternion with the given values.
|
|
696
|
+
* @param x1 - The first real component.
|
|
697
|
+
* @param y1 - The second real component.
|
|
698
|
+
* @param z1 - The third real component.
|
|
699
|
+
* @param w1 - The fourth real component.
|
|
700
|
+
* @param x2 - The first dual component.
|
|
701
|
+
* @param y2 - The second dual component.
|
|
702
|
+
* @param z2 - The third dual component.
|
|
703
|
+
* @param w2 - The fourth dual component.
|
|
704
|
+
* @returns A new dual quaternion.
|
|
657
705
|
*/
|
|
658
|
-
static
|
|
659
|
-
return
|
|
706
|
+
static fromValues(x1, y1, z1, w1, x2, y2, z2, w2) {
|
|
707
|
+
return fromValues(x1, y1, z1, w1, x2, y2, z2, w2, new DualQuaternion());
|
|
660
708
|
}
|
|
661
709
|
/**
|
|
662
|
-
*
|
|
663
|
-
* @param
|
|
664
|
-
* @returns The
|
|
710
|
+
* Add another dual quaternion to this one.
|
|
711
|
+
* @param dq - The other dual quaternion.
|
|
712
|
+
* @returns The sum.
|
|
665
713
|
*/
|
|
666
|
-
|
|
667
|
-
return
|
|
714
|
+
add(dq) {
|
|
715
|
+
return add(this, dq, new DualQuaternion());
|
|
668
716
|
}
|
|
669
717
|
/**
|
|
670
|
-
*
|
|
671
|
-
* @
|
|
718
|
+
* Copy the values from this dual quaternion to another one.
|
|
719
|
+
* @returns The copy.
|
|
672
720
|
*/
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
721
|
+
clone() {
|
|
722
|
+
return copy(this, new DualQuaternion());
|
|
723
|
+
}
|
|
724
|
+
/**
|
|
725
|
+
* Calculate the conjugate of this dual quaternion. If this dual quaternion is normalized, this is equivalent to its inverse and faster to calculate.
|
|
726
|
+
* @returns The conjugate.
|
|
727
|
+
*/
|
|
728
|
+
conjugate() {
|
|
729
|
+
return conjugate(this, new DualQuaternion());
|
|
676
730
|
}
|
|
677
|
-
/** The first real component of this dual quaternion. */
|
|
678
|
-
0;
|
|
679
|
-
/** The second real component of this dual quaternion. */
|
|
680
|
-
1;
|
|
681
|
-
/** The third real component of this dual quaternion. */
|
|
682
|
-
2;
|
|
683
|
-
/** The fourth real component of this dual quaternion. */
|
|
684
|
-
3;
|
|
685
|
-
/** The first dual component of this dual quaternion. */
|
|
686
|
-
4;
|
|
687
|
-
/** The second dual component of this dual quaternion. */
|
|
688
|
-
5;
|
|
689
|
-
/** The third dual component of this dual quaternion. */
|
|
690
|
-
6;
|
|
691
|
-
/** The fourth dual component of this dual quaternion. */
|
|
692
|
-
7;
|
|
693
731
|
/**
|
|
694
732
|
* Copy the values from another dual quaternion to this one.
|
|
695
733
|
* @param dualQuaternion - The dual quaternion to copy.
|
|
@@ -699,32 +737,29 @@ export default class DualQuaternion extends Float32Array {
|
|
|
699
737
|
return copy(dualQuaternion, this);
|
|
700
738
|
}
|
|
701
739
|
/**
|
|
702
|
-
*
|
|
703
|
-
* @
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
return copy(this, new DualQuaternion());
|
|
707
|
-
}
|
|
708
|
-
/**
|
|
709
|
-
* Set this dual quaternion to the identity dual quaternion.
|
|
710
|
-
* @returns The identity dual quaternion.
|
|
740
|
+
* Calculate the dot product of this and another dual quaternion.
|
|
741
|
+
* @param dq - The other dual quaternion.
|
|
742
|
+
* @returns The dot product.
|
|
743
|
+
* @see {@link https://en.wikipedia.org/wiki/Dot_product | Dot product}
|
|
711
744
|
*/
|
|
712
|
-
|
|
713
|
-
return
|
|
745
|
+
dot(dq) {
|
|
746
|
+
return dot(this, dq);
|
|
714
747
|
}
|
|
715
748
|
/**
|
|
716
|
-
*
|
|
717
|
-
* @
|
|
749
|
+
* Determine whether or not this dual quaternion is roughly equivalent to another.
|
|
750
|
+
* @param dq - The other dual quaternion.
|
|
751
|
+
* @returns Whether or not the dual quaternions are equivalent.
|
|
718
752
|
*/
|
|
719
|
-
|
|
720
|
-
return
|
|
753
|
+
equals(dq) {
|
|
754
|
+
return equals(this, dq);
|
|
721
755
|
}
|
|
722
756
|
/**
|
|
723
|
-
*
|
|
724
|
-
* @param
|
|
757
|
+
* Determine whether or not this dual quaternion is exactly equivalent to another.
|
|
758
|
+
* @param dq - The other dual quaternion.
|
|
759
|
+
* @returns Whether or not the dual quaternions are equivalent.
|
|
725
760
|
*/
|
|
726
|
-
|
|
727
|
-
|
|
761
|
+
exactEquals(dq) {
|
|
762
|
+
return exactEquals(this, dq);
|
|
728
763
|
}
|
|
729
764
|
/**
|
|
730
765
|
* Get the dual part of this dual quaternion.
|
|
@@ -734,11 +769,11 @@ export default class DualQuaternion extends Float32Array {
|
|
|
734
769
|
return getDual(this, new Quaternion());
|
|
735
770
|
}
|
|
736
771
|
/**
|
|
737
|
-
*
|
|
738
|
-
* @
|
|
772
|
+
* Get the real part of this dual quaternion.
|
|
773
|
+
* @returns The real part.
|
|
739
774
|
*/
|
|
740
|
-
|
|
741
|
-
|
|
775
|
+
getReal() {
|
|
776
|
+
return getReal(this, new Quaternion());
|
|
742
777
|
}
|
|
743
778
|
/**
|
|
744
779
|
* Get the translation of this normalized dual quaternion.
|
|
@@ -748,36 +783,51 @@ export default class DualQuaternion extends Float32Array {
|
|
|
748
783
|
return getTranslation(this, new Vector3());
|
|
749
784
|
}
|
|
750
785
|
/**
|
|
751
|
-
*
|
|
752
|
-
* @
|
|
753
|
-
* @returns The translated dual quaternion.
|
|
786
|
+
* Set this dual quaternion to the identity dual quaternion.
|
|
787
|
+
* @returns The identity dual quaternion.
|
|
754
788
|
*/
|
|
755
|
-
|
|
756
|
-
return
|
|
789
|
+
identity() {
|
|
790
|
+
return identity(this);
|
|
757
791
|
}
|
|
758
792
|
/**
|
|
759
|
-
*
|
|
760
|
-
* @
|
|
761
|
-
* @returns The rotated dual quaternion.
|
|
793
|
+
* Calculate the inverse of this dual quaternion. If this dual quaternion is normalized, the conjugate is equivalent and faster to calculate.
|
|
794
|
+
* @returns The inverse.
|
|
762
795
|
*/
|
|
763
|
-
|
|
764
|
-
return
|
|
796
|
+
invert() {
|
|
797
|
+
return invert(this, new DualQuaternion());
|
|
765
798
|
}
|
|
766
799
|
/**
|
|
767
|
-
*
|
|
768
|
-
* @param
|
|
769
|
-
* @
|
|
800
|
+
* Perform a linear interpolation between this and another dual quaternion.
|
|
801
|
+
* @param dq - The other dual quaternion.
|
|
802
|
+
* @param t - The interpolation amount in `[0,1]`.
|
|
803
|
+
* @returns The interpolated value.
|
|
770
804
|
*/
|
|
771
|
-
|
|
772
|
-
return
|
|
805
|
+
lerp(dq, t) {
|
|
806
|
+
return lerp(this, dq, t, new DualQuaternion());
|
|
773
807
|
}
|
|
774
808
|
/**
|
|
775
|
-
*
|
|
776
|
-
* @param
|
|
777
|
-
* @returns The
|
|
809
|
+
* Multiply this dual quaternion by another one.
|
|
810
|
+
* @param dq - The other dual quaternion.
|
|
811
|
+
* @returns The product.
|
|
778
812
|
*/
|
|
779
|
-
|
|
780
|
-
return
|
|
813
|
+
multiply(dq) {
|
|
814
|
+
return multiply(this, dq, new DualQuaternion());
|
|
815
|
+
}
|
|
816
|
+
/**
|
|
817
|
+
* Normalize this dual quaternion.
|
|
818
|
+
* @returns The normalized dual quaternion.
|
|
819
|
+
*/
|
|
820
|
+
normalize() {
|
|
821
|
+
return normalize(this, new DualQuaternion());
|
|
822
|
+
}
|
|
823
|
+
/**
|
|
824
|
+
* Rotate this dual quaternion around an axis.
|
|
825
|
+
* @param axis - The axis.
|
|
826
|
+
* @param r - The angle of the rotation in radians.
|
|
827
|
+
* @returns A normalized dual quaternion.
|
|
828
|
+
*/
|
|
829
|
+
rotateAroundAxis(axis, r) {
|
|
830
|
+
return rotateAroundAxis(this, axis, r, new DualQuaternion());
|
|
781
831
|
}
|
|
782
832
|
/**
|
|
783
833
|
* Rotate this dual quaternion by a quaternion (using the quaternion as the multiplicand).
|
|
@@ -798,29 +848,28 @@ export default class DualQuaternion extends Float32Array {
|
|
|
798
848
|
return rotateByQuaternionPrepend(q, this, new DualQuaternion());
|
|
799
849
|
}
|
|
800
850
|
/**
|
|
801
|
-
* Rotate this dual quaternion around
|
|
802
|
-
* @param
|
|
803
|
-
* @
|
|
804
|
-
* @returns A normalized dual quaternion.
|
|
851
|
+
* Rotate this dual quaternion around the X-axis.
|
|
852
|
+
* @param r - The angle to rotate by in radians.
|
|
853
|
+
* @returns The rotated dual quaternion.
|
|
805
854
|
*/
|
|
806
|
-
|
|
807
|
-
return
|
|
855
|
+
rotateX(r) {
|
|
856
|
+
return rotateX(this, r, new DualQuaternion());
|
|
808
857
|
}
|
|
809
858
|
/**
|
|
810
|
-
*
|
|
811
|
-
* @param
|
|
812
|
-
* @returns The
|
|
859
|
+
* Rotate this dual quaternion around the Y-axis.
|
|
860
|
+
* @param r - The angle to rotate by in radians.
|
|
861
|
+
* @returns The rotated dual quaternion.
|
|
813
862
|
*/
|
|
814
|
-
|
|
815
|
-
return
|
|
863
|
+
rotateY(r) {
|
|
864
|
+
return rotateY(this, r, new DualQuaternion());
|
|
816
865
|
}
|
|
817
866
|
/**
|
|
818
|
-
*
|
|
819
|
-
* @param
|
|
820
|
-
* @returns The
|
|
867
|
+
* Rotate this dual quaternion around the Z-axis.
|
|
868
|
+
* @param r - The angle to rotate by in radians.
|
|
869
|
+
* @returns The rotated dual quaternion.
|
|
821
870
|
*/
|
|
822
|
-
|
|
823
|
-
return
|
|
871
|
+
rotateZ(r) {
|
|
872
|
+
return rotateZ(this, r, new DualQuaternion());
|
|
824
873
|
}
|
|
825
874
|
/**
|
|
826
875
|
* Multiply this dual quaternion by a scalar.
|
|
@@ -831,67 +880,26 @@ export default class DualQuaternion extends Float32Array {
|
|
|
831
880
|
return scale(this, s, new DualQuaternion());
|
|
832
881
|
}
|
|
833
882
|
/**
|
|
834
|
-
*
|
|
835
|
-
* @param
|
|
836
|
-
* @returns The dot product.
|
|
837
|
-
* @see {@link https://en.wikipedia.org/wiki/Dot_product | Dot product}
|
|
838
|
-
*/
|
|
839
|
-
dot(dq) {
|
|
840
|
-
return dot(this, dq);
|
|
841
|
-
}
|
|
842
|
-
/**
|
|
843
|
-
* Perform a linear interpolation between this and another dual quaternion.
|
|
844
|
-
* @param dq - The other dual quaternion.
|
|
845
|
-
* @param t - The interpolation amount in `[0,1]`.
|
|
846
|
-
* @returns The interpolated value.
|
|
847
|
-
*/
|
|
848
|
-
lerp(dq, t) {
|
|
849
|
-
return lerp(this, dq, t, new DualQuaternion());
|
|
850
|
-
}
|
|
851
|
-
/**
|
|
852
|
-
* Calculate the inverse of this dual quaternion. If this dual quaternion is normalized, the conjugate is equivalent and faster to calculate.
|
|
853
|
-
* @returns The inverse.
|
|
854
|
-
*/
|
|
855
|
-
invert() {
|
|
856
|
-
return invert(this, new DualQuaternion());
|
|
857
|
-
}
|
|
858
|
-
/**
|
|
859
|
-
* Calculate the conjugate of this dual quaternion. If this dual quaternion is normalized, this is equivalent to its inverse and faster to calculate.
|
|
860
|
-
* @returns The conjugate.
|
|
861
|
-
*/
|
|
862
|
-
conjugate() {
|
|
863
|
-
return conjugate(this, new DualQuaternion());
|
|
864
|
-
}
|
|
865
|
-
/** Get the magnitude (length) of this dual quaternion. */
|
|
866
|
-
get magnitude() {
|
|
867
|
-
return getMagnitude(this);
|
|
868
|
-
}
|
|
869
|
-
/** Get the squared magnitude (length) of this dual quaternion. */
|
|
870
|
-
get squaredMagnitude() {
|
|
871
|
-
return getSquaredMagnitude(this);
|
|
872
|
-
}
|
|
873
|
-
/**
|
|
874
|
-
* Normalize this dual quaternion.
|
|
875
|
-
* @returns The normalized dual quaternion.
|
|
883
|
+
* Set the real part of this dual quaternion.
|
|
884
|
+
* @param q - The quaternion.
|
|
876
885
|
*/
|
|
877
|
-
|
|
878
|
-
|
|
886
|
+
setDual(q) {
|
|
887
|
+
setDual(q, this);
|
|
879
888
|
}
|
|
880
889
|
/**
|
|
881
|
-
*
|
|
882
|
-
* @param
|
|
883
|
-
* @returns Whether or not the dual quaternions are equivalent.
|
|
890
|
+
* Set the real part of this dual quaternion.
|
|
891
|
+
* @param q - The quaternion.
|
|
884
892
|
*/
|
|
885
|
-
|
|
886
|
-
|
|
893
|
+
setReal(q) {
|
|
894
|
+
setReal(q, this);
|
|
887
895
|
}
|
|
888
896
|
/**
|
|
889
|
-
*
|
|
890
|
-
* @param
|
|
891
|
-
* @returns
|
|
897
|
+
* Translate this dual quaternion by the given vector.
|
|
898
|
+
* @param v - The vector.
|
|
899
|
+
* @returns The translated dual quaternion.
|
|
892
900
|
*/
|
|
893
|
-
|
|
894
|
-
return
|
|
901
|
+
translate(v) {
|
|
902
|
+
return translate(this, v, new DualQuaternion());
|
|
895
903
|
}
|
|
896
904
|
}
|
|
897
905
|
//# sourceMappingURL=DualQuaternion.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DualQuaternion.js","sourceRoot":"","sources":["../../src/linalg/DualQuaternion.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DualQuaternion.js","sourceRoot":"","sources":["../../src/linalg/DualQuaternion.ts"],"names":[],"mappings":"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"}
|