Namespace matrix

xeokit Matrix and Vector Math Library


Mathematical functions for 2D/3D matrices, quaternions, and vectors

This library provides a set of utilities for working with mathematical operations commonly used in 3D graphics, including vector and matrix operations such as dot products, vector negation, addition, and more.


Installation

To install the xeokit SDK, use the following npm command:

npm install @xeokit/sdk

Usage

You can import and use functions from the matrix module as follows:

import { dotVec3, createVec3 } from "@xeokit/sdk/matrix";

const a = createVec3([0.1, 1, 2.1]);
const b = createVec3([0.5, 2.1, -1.3]);

const c = dotVec3(a, b); // Computes the dot product of vectors a and b

Variables

vec3FromMat4Scale

Functions

addVec3
addVec3Scalar
addVec4
addVec4Scalar
angleAxisToQuaternion
angleVec3
canvasPosToWorldRay
compareMat4
compareVec3
composeMat4
composeMat4Euler
conjugateQuat
createMat3
createMat4
createVec2
createVec3
createVec4
cross3Vec3
cross3Vec4
decomposeMat4
determinantMat4
distVec2
distVec3
divScalarVec3
divScalarVec4
divVec3
divVec3Scalar
divVec4
divVec4Scalar
dotVec2
dotVec3
dotVec4
eulerToQuat
frustumMat4
frustumMat4v
geometricMeanVec2
identityMat3
identityMat4
identityQuat
inverseMat4
inverseQuat
isIdentityMat4
lenVec2
lenVec3
lenVec4
lerpMat4
lerpVec3
lookAtMat4v
mat3ToMat4
mat4ToEuler
mat4ToQuat
mulMat3
mulMat4
mulMat4v4
mulQuats
mulVec2Scalar
mulVec3Scalar
mulVec4
mulVec4Scalar
negateVec3
negateVec4
normalizeQuat
normalizeVec2
normalizeVec3
normalizeVec4
orthoMat4c
perspectiveMat4
quatToAngleAxis
quatToEuler
quatToMat4
quatToRotationMat4
rayTriangleIntersect
rcpVec3
rotationMat4v
scaleMat4c
scaleMat4v
scalingMat3v
scalingMat4c
scalingMat4s
scalingMat4v
setMat4Translation
sqLenVec2
sqLenVec3
sqLenVec4
subScalarVec4
subVec2
subVec3
subVec4
subVec4Scalar
transformPoint3
transformPoint4
transformPoints3
transformPositions3
transformPositions4
transformRay
transformVec3
transformVec4
translateMat4c
translateMat4v
translationMat3v
translationMat4c
translationMat4s
translationMat4v
transposeMat4
triangleNormal
vec3ApplyQuat
vec3PairToQuat
vecToArray