Skip to content
Extraits de code Groupes Projets
Valider e24f8601 rédigé par Lénaïc DURAND's avatar Lénaïc DURAND
Parcourir les fichiers

Merge branch 'master' of git.iiens.net:acherouf2018/pap_ray_tracing

parents 01fa9344 f40dfa11
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -56,6 +56,9 @@ class Camera ...@@ -56,6 +56,9 @@ class Camera
Vector3f direction() const; Vector3f direction() const;
}; };
/*!
* \brief Opérateur d'affichage des paramètres de la camera
*/
std::ostream & operator<<(std::ostream & st, const Camera & c); std::ostream & operator<<(std::ostream & st, const Camera & c);
......
...@@ -3,29 +3,65 @@ ...@@ -3,29 +3,65 @@
#include "shape.h" #include "shape.h"
/*!
* \file quad.h
* \brief Implementation des Parallélépipèdes rectangles
*/
/*!
* \class Quad
* \brief Representation des Parallélépipèdes rectangles
*
* Classe derivant de Shape : Representation des Parallélépipèdes rectangles par le centre du Parallélépipède son hauteur, sa largeur et sa longueur.
*/
class Quad : public Shape class Quad : public Shape
{ {
private: private:
Vector3f origin_; Vector3f origin_; /*!Coordonnées du centre du Parallélépipède */
float width_; float width_; /*!Largeur du Parallélépipède*/
float height_; float height_; /*!Hauteur du Parallélépipède*/
float depth_; float depth_; /*!Longueur du Parallélépipède*/
public: public:
/*!
* \brief Constructeur
*
* Constructeur de la classe Quad
* Attention, si les paramètres de taille ne sont pas positifs le constructeur ne craie pas l'instance
* \param <matter> le materiau dont est fait le Quad
* \param <origin> le centre du Quad
* \param <width> la largeur du Quad
* \param <height> la hauteur du Quad
* \param <depth> la longueur du Quad
*/
Quad(Material matter, Vector3f origin, float width, float height, float depth); Quad(Material matter, Vector3f origin, float width, float height, float depth);
bool is_hit(const Ray3f ray); bool is_hit(const Ray3f ray);
Ray3f reflect(const Ray3f ray) const; Ray3f reflect(const Ray3f ray) const;
/*!
* \brief Getter pour le vecteur au centre du Quad
*/
Vector3f origin() const; Vector3f origin() const;
/*!
* \brief Getter pour la largeur du Quad
*/
float width() const; float width() const;
/*!
* \brief Getter pour la hauteur du Quad
*/
float height() const; float height() const;
/*!
* \brief Getter pour la longueur du Quad
*/
float depth() const; float depth() const;
}; };
/*!
* \brief Opérateur d'affichage du centre
*/
std::ostream & operator<<(std::ostream & st, const Quad & q); std::ostream & operator<<(std::ostream & st, const Quad & q);
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter