diff options
Diffstat (limited to 'src/raytracer')
| -rw-r--r-- | src/raytracer/raytracer.cpp | 3 | ||||
| -rw-r--r-- | src/raytracer/raytracescene.cpp | 9 | ||||
| -rw-r--r-- | src/raytracer/raytracescene.h | 7 |
3 files changed, 15 insertions, 4 deletions
diff --git a/src/raytracer/raytracer.cpp b/src/raytracer/raytracer.cpp index 0746225..11876ab 100644 --- a/src/raytracer/raytracer.cpp +++ b/src/raytracer/raytracer.cpp @@ -171,6 +171,7 @@ void RayTracer::sceneChanged(QLabel* imageLabel) { int width = 576; int height = 432; + int depth = 500; // render the scene QImage image = QImage(width, height, QImage::Format_RGBX8888); @@ -178,7 +179,7 @@ void RayTracer::sceneChanged(QLabel* imageLabel) { RGBA *data = reinterpret_cast<RGBA *>(image.bits()); - RayTraceScene rtScene{ width, height, m_metaData }; + RayTraceScene rtScene{ width, height,m_metaData, depth }; this->render(data, rtScene); QImage flippedImage = image.mirrored(false, false); diff --git a/src/raytracer/raytracescene.cpp b/src/raytracer/raytracescene.cpp index f70aa83..77541e3 100644 --- a/src/raytracer/raytracescene.cpp +++ b/src/raytracer/raytracescene.cpp @@ -4,12 +4,13 @@ #include "raytracer.h" #include <iostream> -RayTraceScene::RayTraceScene(int width, int height, const RenderData &metaData) : +RayTraceScene::RayTraceScene(int width, int height, const RenderData &metaData, int depth) : m_camera(* new Camera(metaData.cameraData)) { // Optional TODO: implement this. Store whatever you feel is necessary. m_width = width; m_height = height; + m_depth = depth; m_sceneGlobalData = metaData.globalData; m_shapes = metaData.shapes; m_lights = metaData.lights; @@ -37,6 +38,12 @@ const int& RayTraceScene::height() const { return m_height; } + +const int& RayTraceScene::depth() const { + // Optional TODO: implement the getter or make your own design + return m_depth; +} + const SceneGlobalData& RayTraceScene::getGlobalData() const { // Optional TODO: implement the getter or make your own design return m_sceneGlobalData; diff --git a/src/raytracer/raytracescene.h b/src/raytracer/raytracescene.h index b61bd2f..a380adc 100644 --- a/src/raytracer/raytracescene.h +++ b/src/raytracer/raytracescene.h @@ -14,9 +14,9 @@ class RayTraceScene { public: - RayTraceScene(int width, int height, const RenderData &metaData); + RayTraceScene(int width, int height, const RenderData &metaData, int depth=500); - // The getter of the width of the scene +// The getter of the width of the scene const int& width() const; // The getter of the height of the scene @@ -39,4 +39,7 @@ private: Camera& m_camera; std::vector<RenderShapeData>m_shapes; std::vector<SceneLightData>m_lights; + int m_depth; + + const int &depth() const; }; |
