aboutsummaryrefslogtreecommitdiff
path: root/src/Vector.ts
diff options
context:
space:
mode:
authorJames Barnett <noreply@jamesbarnett.xyz>2025-07-26 11:17:10 +0100
committerJames Barnett <noreply@jamesbarnett.xyz>2025-07-26 11:17:10 +0100
commit10bfc58085c6ab7e62077a1a9b6a6d922fffb025 (patch)
tree3e1d3ff39891c2c2408235c209566f4c51915859 /src/Vector.ts
parentebc500c522e7233fbc6037bce0569edf3a0b5136 (diff)
downloadjs-raytracer-10bfc58085c6ab7e62077a1a9b6a6d922fffb025.tar.xz
js-raytracer-10bfc58085c6ab7e62077a1a9b6a6d922fffb025.zip
Rework multithreaded rendering
Render worker tasks are now split into chunks rather than row blocks for better thread utilisation
Diffstat (limited to 'src/Vector.ts')
-rw-r--r--src/Vector.ts40
1 files changed, 0 insertions, 40 deletions
diff --git a/src/Vector.ts b/src/Vector.ts
deleted file mode 100644
index 2be8e57..0000000
--- a/src/Vector.ts
+++ /dev/null
@@ -1,40 +0,0 @@
-export class Vector {
- constructor(readonly x: number, readonly y: number, readonly z: number) {}
-
- add(v: Vector): Vector {
- return new Vector(this.x + v.x, this.y + v.y, this.z + v.z);
- }
-
- addScalar(n: number): Vector {
- return new Vector(this.x + n, this.y + n, this.z + n);
- }
-
- subtract(v: Vector): Vector {
- return new Vector(this.x - v.x, this.y - v.y, this.z - v.z);
- }
-
- multiply(n: number): Vector {
- return new Vector(this.x * n, this.y * n, this.z * n);
- }
-
- dotProduct(v: Vector): number {
- return this.x * v.x + this.y * v.y + this.z * v.z;
- }
-
- normalise(): Vector {
- const vecLength = this.norm();
- return new Vector(
- this.x / vecLength,
- this.y / vecLength,
- this.z / vecLength
- );
- }
-
- norm(): number {
- return Math.sqrt(this.x * this.x + this.y * this.y + this.z * this.z);
- }
-
- negative(): Vector {
- return new Vector(-this.x, -this.y, -this.z);
- }
-}