#include "stdafx.h"
#include "transform.h"
#include "shape.h"
Go to the source code of this file.
Functions | |
bool | SolveLinearSystem2x2 (const float A[2][2], const float B[2], float *x0, float *x1) |
Matrix4x4 | Transpose (const Matrix4x4 &m) |
Matrix4x4 | Inverse (const Matrix4x4 &m) |
Transform | Translate (const Vector &delta) |
Transform | Scale (float x, float y, float z) |
Transform | RotateX (float angle) |
Transform | RotateY (float angle) |
Transform | RotateZ (float angle) |
Transform | Rotate (float angle, const Vector &axis) |
Transform | LookAt (const Point &pos, const Point &look, const Vector &up) |
Transform | Orthographic (float znear, float zfar) |
Transform | Perspective (float fov, float n, float f) |
Definition at line 68 of file transform.cpp.
References Error(), and Matrix4x4::m.
Referenced by CreateBilerpFloatTexture(), CreateBilerpSpectrumTexture(), CreateCheckerboardFloatTexture(), CreateCheckerboardSpectrumTexture(), CreateDotsFloatTexture(), CreateDotsSpectrumTexture(), CreateImageFloatTexture(), CreateImageSpectrumTexture(), CreateSpotLight(), CreateUVSpectrumTexture(), AnimatedTransform::Decompose(), HomogeneousVolumeDensity::HomogeneousVolumeDensity(), TransformedPrimitive::Intersect(), LookAt(), TransformCache::Lookup(), main(), AnimatedTransform::MotionBounds(), pbrtCamera(), ProjectiveCamera::ProjectiveCamera(), SurfacePointsRenderer::Render(), CreateRadianceProbes::Render(), VolumeGridDensity::WorldBound(), HomogeneousVolumeDensity::WorldBound(), and ExponentialDensity::WorldBound().
Definition at line 228 of file transform.cpp.
References Cross(), Inverse(), Normalize(), Vector::x, Point::x, Vector::y, Point::y, Vector::z, and Point::z.
Referenced by pbrtLookAt().
Transform Orthographic | ( | float | znear, | |
float | zfar | |||
) |
Definition at line 292 of file transform.cpp.
References Scale(), and Translate().
Transform Perspective | ( | float | fov, | |
float | n, | |||
float | f | |||
) |
Definition at line 298 of file transform.cpp.
References Radians(), and Scale().
Referenced by ProjectionLight::ProjectionLight().
Definition at line 197 of file transform.cpp.
References Normalize(), Radians(), Transpose(), Vector::x, Vector::y, and Vector::z.
Referenced by pbrtRotate().
Transform RotateX | ( | float | angle | ) |
Definition at line 163 of file transform.cpp.
References Radians(), and Transpose().
Referenced by main().
Transform RotateY | ( | float | angle | ) |
Definition at line 174 of file transform.cpp.
References Radians(), and Transpose().
Transform RotateZ | ( | float | angle | ) |
Definition at line 186 of file transform.cpp.
References Radians(), and Transpose().
Transform Scale | ( | float | x, | |
float | y, | |||
float | z | |||
) |
Definition at line 150 of file transform.cpp.
Referenced by Orthographic(), pbrtScale(), Perspective(), and ProjectiveCamera::ProjectiveCamera().
bool SolveLinearSystem2x2 | ( | const float | A[2][2], | |
const float | B[2], | |||
float * | x0, | |||
float * | x1 | |||
) |
Definition at line 31 of file transform.cpp.
Referenced by DifferentialGeometry::ComputeDifferentials(), and Triangle::GetShadingGeometry().
Definition at line 137 of file transform.cpp.
References Vector::x, Vector::y, and Vector::z.
Referenced by CreatePointLight(), CreateSpotLight(), AnimatedTransform::Interpolate(), Orthographic(), pbrtTranslate(), ProjectiveCamera::ProjectiveCamera(), SurfacePointsRenderer::Render(), and CreateRadianceProbes::Render().
Definition at line 60 of file transform.cpp.
References Matrix4x4::m.
Referenced by AnimatedTransform::Decompose(), Rotate(), RotateX(), RotateY(), RotateZ(), and Quaternion::ToTransform().