Abstract base class for the perspective and orthographic cameras.
More...
#include <RayTracer.h>
Inherited by OrthographicCamera, and PerspectiveCamera.
|
| | BaseCamera (Film &film, const Vec3R &rotation, const Vec3R &translation, double frameWidth, double nearPlane, double farPlane) |
| |
| virtual | ~BaseCamera () |
| |
| Film::RGBA & | pixel (size_t i, size_t j) |
| |
| size_t | width () const |
| |
| size_t | height () const |
| |
| void | lookAt (const Vec3R &xyz, const Vec3R &up=Vec3R(0.0, 1.0, 0.0)) |
| |
| Vec3R | rasterToScreen (double i, double j, double z) const |
| |
| virtual math::Ray< double > | getRay (size_t i, size_t j, double iOffset=0.5, double jOffset=0.5) const =0 |
| | Return a Ray in world space given the pixel indices and optional offsets in the range [0, 1]. An offset of 0.5 corresponds to the center of the pixel. More...
|
| |
|
| void | initRay (double t0, double t1) |
| |
Abstract base class for the perspective and orthographic cameras.
◆ BaseCamera()
| BaseCamera |
( |
Film & |
film, |
|
|
const Vec3R & |
rotation, |
|
|
const Vec3R & |
translation, |
|
|
double |
frameWidth, |
|
|
double |
nearPlane, |
|
|
double |
farPlane |
|
) |
| |
|
inline |
◆ ~BaseCamera()
◆ getRay()
| virtual math::Ray<double> getRay |
( |
size_t |
i, |
|
|
size_t |
j, |
|
|
double |
iOffset = 0.5, |
|
|
double |
jOffset = 0.5 |
|
) |
| const |
|
pure virtual |
Return a Ray in world space given the pixel indices and optional offsets in the range [0, 1]. An offset of 0.5 corresponds to the center of the pixel.
Implemented in OrthographicCamera, and PerspectiveCamera.
◆ height()
◆ initRay()
| void initRay |
( |
double |
t0, |
|
|
double |
t1 |
|
) |
| |
|
inlineprotected |
◆ lookAt()
Rotate the camera so its negative z-axis points at xyz and its y axis is in the plane of the xyz and up vectors. In other words the camera will look at xyz and use up as the horizontal direction.
◆ pixel()
◆ rasterToScreen()
| Vec3R rasterToScreen |
( |
double |
i, |
|
|
double |
j, |
|
|
double |
z |
|
) |
| const |
|
inline |
◆ width()
◆ mFilm
◆ mRay
◆ mScaleHeight
◆ mScaleWidth
◆ mScreenToWorld
The documentation for this class was generated from the following file: