Raytracer
Loading...
Searching...
No Matches
Checker.hpp
1#include <memory>
2#include "interfaces/ITexture.hpp"
3
4#ifndef __CHECKER_HPP__
5 #define __CHECKER_HPP__
6
7namespace Raytracer::Textures
8{
10 private:
11 std::shared_ptr<Interfaces::ITexture> _odd;
12 std::shared_ptr<Interfaces::ITexture> _even;
13 double _scale;
14
15 public:
16 Checker(double scale, std::shared_ptr<Interfaces::ITexture> even,
17 std::shared_ptr<Interfaces::ITexture> odd);
18 Checker(double scale, const Utils::Color &a, const Utils::Color &b);
20 double u, double v, const Utils::Point3 &point) const override;
21 };
22} // namespace Raytracer::Textures
23
24#endif /* __CHECKER_HPP__ */
Definition ITexture.hpp:8
Definition Checker.hpp:9
Utils::Color value(double u, double v, const Utils::Point3 &point) const override
Get the value of the checker texture.
Definition Checker.cpp:54
Checker(double scale, std::shared_ptr< Interfaces::ITexture > even, std::shared_ptr< Interfaces::ITexture > odd)
Construct a new Checker object.
Definition Checker.cpp:16
Definition VecN.hpp:40