From 7d52592cd5376d7d7352fd2679ea8b2dd3a99798 Mon Sep 17 00:00:00 2001 From: NADAL Jean-Baptiste Date: Fri, 2 Feb 2024 16:56:09 +0100 Subject: [PATCH] [FIX] Fix some PVS Error --- raytracing/src/canvas.cpp | 6 +++--- raytracing/src/canvas.h | 2 +- raytracing/src/matrix.cpp | 11 +++++++++++ raytracing/src/matrix.h | 2 ++ raytracing/src/tuple.cpp | 2 +- 5 files changed, 18 insertions(+), 5 deletions(-) diff --git a/raytracing/src/canvas.cpp b/raytracing/src/canvas.cpp index e0bf8da..0f1ac26 100644 --- a/raytracing/src/canvas.cpp +++ b/raytracing/src/canvas.cpp @@ -49,7 +49,7 @@ Canvas::Canvas(uint16_t a_width, uint16_t a_height) : m_width(a_width), m_height { for (int j = 0; j < m_height; ++j) { - m_pixels[i][j] == Color(0, 0, 0); + m_pixels[i][j] = Color(0, 0, 0); } } } @@ -96,7 +96,7 @@ std::string Canvas::to_ppm(void) for (int j = 0; j < m_height; j++) { - uint16_t the_col_number = 0; + uint32_t the_col_number = 0; for (int i = 0; i < m_width; i++) { Color the_color; @@ -115,7 +115,7 @@ std::string Canvas::to_ppm(void) /* ------------------------------------------------------------------------- */ -bool Canvas::add_color_component(std::string &a_str_value, uint16_t &a_col_number, uint8_t a_color) +bool Canvas::add_color_component(std::string &a_str_value, uint32_t &a_col_number, uint8_t a_color) { std::string the_color_value; diff --git a/raytracing/src/canvas.h b/raytracing/src/canvas.h index 64d560e..84791b0 100644 --- a/raytracing/src/canvas.h +++ b/raytracing/src/canvas.h @@ -54,7 +54,7 @@ namespace Raytracer std::string to_ppm(void); private: - bool add_color_component(std::string &a_str_value, uint16_t &a_col_number, uint8_t a_color); + bool add_color_component(std::string &a_str_value, uint32_t &a_col_number, uint8_t a_color); private: uint16_t m_width; diff --git a/raytracing/src/matrix.cpp b/raytracing/src/matrix.cpp index 81073f3..04faed2 100644 --- a/raytracing/src/matrix.cpp +++ b/raytracing/src/matrix.cpp @@ -173,6 +173,17 @@ const Tuple Matrix::operator*(const Tuple &a_tuple) const /* ------------------------------------------------------------------------- */ +Matrix &Matrix::operator=(const Matrix &a_matrix) +{ + m_rows = a_matrix.m_rows; + m_cols = a_matrix.m_cols; + m_data = a_matrix.m_data; + + return *this; +} + +/* ------------------------------------------------------------------------- */ + bool Matrix::transpose(void) { std::vector> the_copy = m_data; diff --git a/raytracing/src/matrix.h b/raytracing/src/matrix.h index 746d893..71d6a82 100644 --- a/raytracing/src/matrix.h +++ b/raytracing/src/matrix.h @@ -57,6 +57,8 @@ namespace Raytracer const Matrix operator*(const Matrix &a_matrix) const; const Tuple operator*(const Tuple &a_tuple) const; + Matrix &operator=(const Matrix &a_matrix); + bool transpose(void); double determinant(void); diff --git a/raytracing/src/tuple.cpp b/raytracing/src/tuple.cpp index 4df0f86..a6ade1d 100644 --- a/raytracing/src/tuple.cpp +++ b/raytracing/src/tuple.cpp @@ -58,7 +58,7 @@ Tuple::Tuple(double a_x, double a_y, double a_z, double a_w) : m_x(a_x), m_y(a_y /* ------------------------------------------------------------------------- */ -Tuple::Tuple(std::vector a_data) +Tuple::Tuple(std::vector a_data) : m_x(0.0), m_y(0.0), m_z(0.0), m_w(0.0) { int i = 0; for (auto the_it1 = a_data.cbegin(); the_it1 != a_data.cend(); ++the_it1)