1#include "interfaces/IHittable.hpp"
3#ifndef __ROTATE_X_HPP__
4 #define __ROTATE_X_HPP__
6namespace Raytracer::Effects
10 std::shared_ptr<Interfaces::IHittable> _object;
16 RotateX(std::shared_ptr<Interfaces::IHittable>
object,
double angle);
Definition Payload.hpp:11
RotateX(std::shared_ptr< Interfaces::IHittable > object, double angle)
Construct a new RotateX object.
Definition RotateX.cpp:15
bool hit(const Core::Ray &ray, Utils::Interval interval, Core::Payload &payload) const override
Check if the ray hits the rotated object.
Definition RotateX.cpp:65
Utils::AxisAlignedBBox boundingBox() const override
Get the bounding box of the rotated object.
Definition RotateX.cpp:111
Definition IHittable.hpp:11
Definition AxisAlignedBBox.hpp:10
Definition Interval.hpp:9