Bomberman
Ray.hpp
Go to the documentation of this file.
1 /*
2 ** EPITECH PROJECT, 2021
3 ** Bomberman
4 ** File description:
5 ** Pixel
6 */
7 
8 #ifndef RAY_HPP_
9 #define RAY_HPP_
10 
11 #include <raylib.h>
13 
16  class Ray: public ADrawable3D
17  {
18  public:
23  Ray(const Vector3 &startPosition, const Vector3 &direction, const Color &color);
24 
26  Ray(const Ray &) = default;
27 
29  Ray &operator=(const Ray &) = default;
30 
32  ~Ray() override = default;
33 
34 
35 
37  const Vector3 &getDirection(void) const;
38 
40  Ray &setDirection(const Vector3 &direction);
41 
43  void drawOn(RAY::Window &) override;
44 
45  private:
47  };
48 };
49 
50 #endif /* !PIXEL_HPP_ */
RAY::Vector3
A Three-dimensionnal Vector data type.
Definition: Vector3.hpp:15
RAY::Window
Definition: Window.hpp:32
RAY::Drawables::Drawables3D::Ray
Ray in a three-dimensionnal space.
Definition: Ray.hpp:16
ADrawable3D.hpp
RAY::Drawables::Drawables3D::Ray::setDirection
Ray & setDirection(const Vector3 &direction)
Set end position.
Definition: Ray.cpp:23
RAY::Drawables::Drawables3D::Ray::getDirection
const Vector3 & getDirection(void) const
Definition: Ray.cpp:18
RAY::Drawables::Drawables3D::Ray::drawOn
void drawOn(RAY::Window &) override
Draw point on window.
Definition: Ray.cpp:29
RAY::Drawables::Drawables3D::Ray::~Ray
~Ray() override=default
A default destructor.
RAY::Drawables::ADrawable3D
Abstraction of any three-dimensionnal drawable.
Definition: ADrawable3D.hpp:17
RAY::Drawables::Drawables3D
Definition: Circle.cpp:10
RAY::Drawables::Drawables3D::Ray::operator=
Ray & operator=(const Ray &)=default
A line is assignable.
RAY::Color
Object representation of color.
Definition: Color.hpp:15
RAY::Drawables::Drawables3D::Ray::_direction
Vector3 _direction
Definition: Ray.hpp:46
RAY::Drawables::Drawables3D::Ray::Ray
Ray(const Vector3 &startPosition, const Vector3 &direction, const Color &color)
Ray constructor.
Definition: Ray.cpp:13