AnimatedTransform Class Reference

#include <transform.h>

List of all members.

Public Member Functions

 AnimatedTransform (const Transform *transform1, float time1, const Transform *transform2, float time2)
void Interpolate (float time, Transform *t) const
void InterpolateInverse (float time, Transform *t) const
void operator() (const Ray &r, Ray *tr) const
void operator() (const RayDifferential &r, RayDifferential *tr) const
Point operator() (float time, const Point &p) const
Vector operator() (float time, const Vector &v) const
Ray operator() (const Ray &r) const
BBox MotionBounds (const BBox &b, bool useInverse) const
bool HasScale () const

Static Public Member Functions

static void Decompose (const Matrix4x4 &m, Vector *T, Quaternion *R, Matrix4x4 *S)

Private Attributes

const float startTime
const float endTime
const TransformstartTransform
const TransformendTransform
const bool actuallyAnimated
Vector T [2]
Quaternion R [2]
Matrix4x4 S [2]

Detailed Description

Definition at line 288 of file transform.h.


Constructor & Destructor Documentation

AnimatedTransform::AnimatedTransform ( const Transform transform1,
float  time1,
const Transform transform2,
float  time2 
) [inline]

Definition at line 291 of file transform.h.

References Decompose(), endTransform, Transform::m, R, S, startTransform, and T.


Member Function Documentation

void AnimatedTransform::Decompose ( const Matrix4x4 m,
Vector T,
Quaternion R,
Matrix4x4 S 
) [static]

Definition at line 313 of file transform.cpp.

References Inverse(), M, Matrix4x4::m, R, Transpose(), Vector::x, Vector::y, and Vector::z.

Referenced by AnimatedTransform().

bool AnimatedTransform::HasScale (  )  const [inline]

Definition at line 308 of file transform.h.

References endTransform, Transform::HasScale(), and startTransform.

Referenced by Camera::Camera().

void AnimatedTransform::Interpolate ( float  time,
Transform t 
) const
void AnimatedTransform::InterpolateInverse ( float  time,
Transform t 
) const
BBox AnimatedTransform::MotionBounds ( const BBox b,
bool  useInverse 
) const
Ray AnimatedTransform::operator() ( const Ray r  )  const

Definition at line 451 of file transform.cpp.

Vector AnimatedTransform::operator() ( float  time,
const Vector v 
) const

Definition at line 440 of file transform.cpp.

References actuallyAnimated, endTime, endTransform, Interpolate(), startTime, and startTransform.

Point AnimatedTransform::operator() ( float  time,
const Point p 
) const

Definition at line 429 of file transform.cpp.

References actuallyAnimated, endTime, endTransform, Interpolate(), startTime, and startTransform.

void AnimatedTransform::operator() ( const RayDifferential r,
RayDifferential tr 
) const

Definition at line 414 of file transform.cpp.

References actuallyAnimated, endTime, Interpolate(), startTime, and Ray::time.

void AnimatedTransform::operator() ( const Ray r,
Ray tr 
) const

Definition at line 400 of file transform.cpp.

References actuallyAnimated, endTime, Interpolate(), startTime, and Ray::time.


Member Data Documentation

Definition at line 313 of file transform.h.

Referenced by Interpolate(), MotionBounds(), and operator()().

const float AnimatedTransform::endTime [private]

Definition at line 311 of file transform.h.

Referenced by Interpolate(), MotionBounds(), and operator()().

Definition at line 312 of file transform.h.

Referenced by AnimatedTransform(), HasScale(), Interpolate(), and operator()().

Definition at line 315 of file transform.h.

Referenced by AnimatedTransform(), Decompose(), and Interpolate().

Definition at line 316 of file transform.h.

Referenced by AnimatedTransform(), and Interpolate().

const float AnimatedTransform::startTime [private]

Definition at line 311 of file transform.h.

Referenced by Interpolate(), MotionBounds(), and operator()().

Definition at line 312 of file transform.h.

Referenced by AnimatedTransform(), HasScale(), Interpolate(), MotionBounds(), and operator()().

Definition at line 314 of file transform.h.

Referenced by AnimatedTransform(), and Interpolate().


The documentation for this class was generated from the following files:
Generated on Sat Aug 28 20:00:12 2010 for pbrt by  doxygen 1.6.3