diff options
| author | David Doan <daviddoan@Davids-MacBook-Pro-100.local> | 2023-12-08 15:04:43 -0500 |
|---|---|---|
| committer | David Doan <daviddoan@Davids-MacBook-Pro-100.local> | 2023-12-08 15:04:43 -0500 |
| commit | 87be193a27a4d6ab583982e6d22eaccf154fff34 (patch) | |
| tree | 4db10fc80f9077db4aab78ebd288b36ef4ca9368 /src/vec4ops/vec4ops.h | |
| parent | a44bcf18656062785c89e8fde25c232431b0d585 (diff) | |
| parent | 480c22ce9b50caad259e254d0127e99294b4c6ab (diff) | |
merge
Diffstat (limited to 'src/vec4ops/vec4ops.h')
| -rw-r--r-- | src/vec4ops/vec4ops.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/src/vec4ops/vec4ops.h b/src/vec4ops/vec4ops.h new file mode 100644 index 0000000..d1c3ac8 --- /dev/null +++ b/src/vec4ops/vec4ops.h @@ -0,0 +1,37 @@ +// +// Created by Michael Foiani on 12/8/23. +// + +#ifndef PROJECTS_RAY_VEC4OPS_H +#define PROJECTS_RAY_VEC4OPS_H + +#include <glm/glm.hpp> + +class Vec4Ops { +public: + + static glm::mat4 getRotationMatrix4XY(float angleRadians); + + static glm::mat4 getRotationMatrix4YZ(float angleRadians); + + static glm::mat4 getRotationMatrix4ZX(float angleRadians); + + static glm::mat4 getRotationMatrix4XW(float angleRadians); + + static glm::mat4 getRotationMatrix4YW(float angleRadians); + + static glm::mat4 getRotationMatrix4ZW(float angleRadians); + + static glm::vec4 transformPoint4(glm::vec4 point4, glm::mat4 transformDirectionMatrix, glm::vec4 translationPointVector); + + 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 |
