The spica renderer
checkerboard.h
1 #ifdef _MSC_VER
2 #pragma once
3 #endif
4 
5 #ifndef _SPICA_CHECKERBOARD_H_
6 #define _SPICA_CHECKERBOARD_H_
7 
8 #include "core/common.h"
9 #include "core/texture.h"
10 #include "core/renderparams.h"
11 
12 namespace spica {
13 
14 class SPICA_EXPORTS Checkerboard : public Texture<Spectrum> {
15 public:
16  explicit Checkerboard(const Spectrum &color0, const Spectrum &color1,
17  double uOffset = 0.0, double vOffset = 0.0,
18  double uScale = 1.0, double vScale = 1.0);
19  explicit Checkerboard(RenderParams &params);
20 
21  Spectrum evaluate(const SurfaceInteraction &intr) const override;
22 
23 private:
24  Spectrum color0_, color1_;
25  double uOffset_, vOffset_, uScale_, vScale_;
26 };
27 
28 SPICA_EXPORT_PLUGIN(Checkerboard, "Checkerboard texture");
29 
30 } // namespace spica
31 
32 #endif // _SPICA_CHECKERBOARD_H_
33 
Definition: interaction.h:68
RGB spectrum.
Definition: spectrum.h:18
Definition: renderparams.h:27
Definition: checkerboard.h:14
Texture interface.
Definition: render.hpp:60