A minimal vector math library to handle 2D/3D translations and rotations.
- Written in Typescript with exported type declarations.
- Supports Three.js's Vector2, Vector3, and Quaternion types as inputs.
- Includes readonly class types.
- Includes unit tests with 100% coverage.
Table of Contents:
npm install @amandaghassaei/vector-math
Then import via:
import { Vector2 } from '@amandaghassaei/vector-math';
OR in the browser you can add bundle/vector-math.js or bundle/vector-math.min.js to your html:
<html>
<head>
....
<script src="vector-math.min.js"></script>
</head>
<body>
</body>
</html>
Then in your js files, you can access the global variable VECTOR_MATH
:
const { Vector2 } = VECTOR_MATH;
See full API documentation in docs/.
This work is distributed under an MIT license. It has no dependencies.
Most of this library has been ported from Three.js's source code.
Feel free to submit pull requests pertaining to bugs or type issues, but I probably won't want to expand the functionality of this library much beyond where it is currently. There are other libraries out there that cover a wider range of linear algebra functions and types, this library is meant to be small and bounded in its scope.
Install dev-dependencies:
npm install
Build from src
to dist
and compile docs:
npm run build
Test with code coverage:
npm run test-with-coverage