Abstract base class for the perspective and orthographic cameras.
More...
#include <RayTracer.h>
|
| 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...
|
|
Abstract base class for the perspective and orthographic cameras.
Definition at line 350 of file RayTracer.h.
openvdb::OPENVDB_VERSION_NAME::tools::BaseCamera::BaseCamera |
( |
Film & |
film, |
|
|
const Vec3R & |
rotation, |
|
|
const Vec3R & |
translation, |
|
|
double |
frameWidth, |
|
|
double |
nearPlane, |
|
|
double |
farPlane |
|
) |
| |
|
inline |
virtual openvdb::OPENVDB_VERSION_NAME::tools::BaseCamera::~BaseCamera |
( |
| ) |
|
|
inlinevirtual |
virtual math::Ray<double> openvdb::OPENVDB_VERSION_NAME::tools::BaseCamera::getRay |
( |
size_t |
i, |
|
|
size_t |
j, |
|
|
double |
iOffset = 0.5 , |
|
|
double |
jOffset = 0.5 |
|
) |
| const |
|
pure virtual |
size_t openvdb::OPENVDB_VERSION_NAME::tools::BaseCamera::height |
( |
void |
| ) |
const |
|
inline |
void openvdb::OPENVDB_VERSION_NAME::tools::BaseCamera::initRay |
( |
double |
t0, |
|
|
double |
t1 |
|
) |
| |
|
inlineprotected |
void openvdb::OPENVDB_VERSION_NAME::tools::BaseCamera::lookAt |
( |
const Vec3R & |
xyz, |
|
|
const Vec3R & |
up = Vec3R(0.0, 1.0, 0.0) |
|
) |
| |
|
inline |
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.
Definition at line 378 of file RayTracer.h.
Film::RGBA& openvdb::OPENVDB_VERSION_NAME::tools::BaseCamera::pixel |
( |
size_t |
i, |
|
|
size_t |
j |
|
) |
| |
|
inline |
Vec3R openvdb::OPENVDB_VERSION_NAME::tools::BaseCamera::rasterToScreen |
( |
double |
i, |
|
|
double |
j, |
|
|
double |
z |
|
) |
| const |
|
inline |
size_t openvdb::OPENVDB_VERSION_NAME::tools::BaseCamera::width |
( |
void |
| ) |
const |
|
inline |
Film* openvdb::OPENVDB_VERSION_NAME::tools::BaseCamera::mFilm |
|
protected |
math::Ray<double> openvdb::OPENVDB_VERSION_NAME::tools::BaseCamera::mRay |
|
protected |
double openvdb::OPENVDB_VERSION_NAME::tools::BaseCamera::mScaleHeight |
|
protected |
double openvdb::OPENVDB_VERSION_NAME::tools::BaseCamera::mScaleWidth |
|
protected |
math::AffineMap openvdb::OPENVDB_VERSION_NAME::tools::BaseCamera::mScreenToWorld |
|
protected |
The documentation for this class was generated from the following file: