aboutsummaryrefslogtreecommitdiff
path: root/src/Colour.ts
diff options
context:
space:
mode:
authorJames Barnett <noreply@jamesbarnett.xyz>2022-01-01 21:21:52 +0000
committerJames Barnett <noreply@jamesbarnett.xyz>2022-01-01 21:21:52 +0000
commit7ad1b7efabea1349107669a432e6c88305f8d825 (patch)
tree8de34e4b3e20e4e8c0c01578ce0b0cfaa46cc6cf /src/Colour.ts
parentdc5e815da04d7c377b3cb51558d6fe7b8e0fd7c0 (diff)
downloadjs-raytracer-7ad1b7efabea1349107669a432e6c88305f8d825.tar.xz
js-raytracer-7ad1b7efabea1349107669a432e6c88305f8d825.zip
Implement basic ray tracing
Diffstat (limited to 'src/Colour.ts')
-rw-r--r--src/Colour.ts15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/Colour.ts b/src/Colour.ts
new file mode 100644
index 0000000..4f2c4a6
--- /dev/null
+++ b/src/Colour.ts
@@ -0,0 +1,15 @@
+import {Vector} from './Vector';
+
+export class Colour extends Vector {
+ constructor(readonly r: number, readonly g: number, readonly b: number) {
+ super(r, g, b);
+ }
+
+ static fromVector(vector: Vector): Colour {
+ return new Colour(vector.x, vector.y, vector.z);
+ }
+
+ toVector(): Vector {
+ return new Vector(this.r, this.g, this.b);
+ }
+}