diff --git a/RayTracer/tools/Vec3.cpp b/RayTracer/tools/Vec3.cpp index 1bd26e71137ee87390a826293078aa22037336bb..5cd548bdb33e741179d7c1488d150d930300c51b 100644 --- a/RayTracer/tools/Vec3.cpp +++ b/RayTracer/tools/Vec3.cpp @@ -7,6 +7,8 @@ Vec3::Vec3(std::array<float, 3> const& arr) : arr(arr) { } Vec3::Vec3(float x, float y, float z) : arr(std::array<float, 3>({x, y, z})) { } +Vec3::Vec3(float xyz) : arr(std::array<float, 3>({xyz, xyz, xyz})) { +} Vec3::Vec3() : arr(std::array<float, 3>({})) { } // Operator diff --git a/RayTracer/tools/Vec3.h b/RayTracer/tools/Vec3.h index 97c999e27370a202d7ff19159bfc1e298f31a4da..4653f12d9778407685de96f842261db63c8b240a 100644 --- a/RayTracer/tools/Vec3.h +++ b/RayTracer/tools/Vec3.h @@ -10,6 +10,7 @@ class Vec3 { // Constructor Vec3(std::array<float, 3> const& arr); Vec3(float x, float y, float z); + Vec3(float xyz); Vec3(); // Operator friend std::ostream& operator<<(std::ostream& os, const util::Vec3& rhs);