aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/4dvecops/vec4ops.cpp9
-rw-r--r--src/4dvecops/vec4ops.h6
2 files changed, 11 insertions, 4 deletions
diff --git a/src/4dvecops/vec4ops.cpp b/src/4dvecops/vec4ops.cpp
index 1ffe673..80cebaf 100644
--- a/src/4dvecops/vec4ops.cpp
+++ b/src/4dvecops/vec4ops.cpp
@@ -1,9 +1,10 @@
-#include "raytracer/raytracer.h"
+#include <stdexcept>
+#include "vec4ops.h"
// vector operations on 4d vectors,
// reference: https://hollasch.github.io/ray4/Four-Space_Visualization_of_4D_Objects.html#chapter5
-glm::vec4 cross4(
+glm::vec4 Vec4Ops::cross4(
glm::vec4 u,
glm::vec4 v,
glm::vec4 w) {
@@ -23,13 +24,13 @@ glm::vec4 cross4(
return result;
}
-glm::vec4 dot4(
+glm::vec4 Vec4Ops::dot4(
glm::vec4 u,
glm::vec4 v) {
return {u[0] * v[0], u[1] * v[1], u[2] * v[2], u[3] * v[3]};
}
-glm::mat4 getViewMatrix4(
+glm::mat4 Vec4Ops::getViewMatrix4(
glm::vec4 fromPoint,
glm::vec4 toPoint,
glm::vec4 upVector,
diff --git a/src/4dvecops/vec4ops.h b/src/4dvecops/vec4ops.h
index 47a4c74..d1c3ac8 100644
--- a/src/4dvecops/vec4ops.h
+++ b/src/4dvecops/vec4ops.h
@@ -26,6 +26,12 @@ public:
static glm::vec4 inverseTransformPoint4(glm::vec4 point4, glm::mat4 inverseTransformDirectionMatrix,
glm::vec4 inverseTranslationPointVector);
+
+ static glm::vec4 cross4(glm::vec4 u, glm::vec4 v, glm::vec4 w);
+
+ static glm::vec4 dot4(glm::vec4 u, glm::vec4 v);
+
+ static glm::mat4 getViewMatrix4(glm::vec4 fromPoint, glm::vec4 toPoint, glm::vec4 upVector, glm::vec4 lookVector);
};
#endif //PROJECTS_RAY_VEC4OPS_H