Nori  23
Frame Struct Reference

Stores a three-dimensional orthonormal coordinate frame. More...

#include <frame.h>

Collaboration diagram for Frame:

Public Member Functions

 Frame ()
 Default constructor – performs no initialization!
 
 Frame (const Vector3f &s, const Vector3f &t, const Normal3f &n)
 Given a normal and tangent vectors, construct a new coordinate frame.
 
 Frame (const Vector3f &x, const Vector3f &y, const Vector3f &z)
 Construct a frame from the given orthonormal vectors.
 
 Frame (const Vector3f &n)
 Construct a new coordinate frame from a single vector.
 
Vector3f toLocal (const Vector3f &v) const
 Convert from world coordinates to local coordinates.
 
Vector3f toWorld (const Vector3f &v) const
 Convert from local coordinates to world coordinates.
 
bool operator== (const Frame &frame) const
 Equality test.
 
bool operator!= (const Frame &frame) const
 Inequality test.
 
std::string toString () const
 Return a human-readable string summary of this frame.
 

Static Public Member Functions

static float cosTheta (const Vector3f &v)
 Assuming that the given direction is in the local coordinate system, return the cosine of the angle between the normal and v.
 
static float sinTheta (const Vector3f &v)
 Assuming that the given direction is in the local coordinate system, return the sine of the angle between the normal and v.
 
static float tanTheta (const Vector3f &v)
 Assuming that the given direction is in the local coordinate system, return the tangent of the angle between the normal and v.
 
static float sinTheta2 (const Vector3f &v)
 Assuming that the given direction is in the local coordinate system, return the squared sine of the angle between the normal and v.
 
static float sinPhi (const Vector3f &v)
 Assuming that the given direction is in the local coordinate system, return the sine of the phi parameter in spherical coordinates.
 
static float cosPhi (const Vector3f &v)
 Assuming that the given direction is in the local coordinate system, return the cosine of the phi parameter in spherical coordinates.
 
static float sinPhi2 (const Vector3f &v)
 Assuming that the given direction is in the local coordinate system, return the squared sine of the phi parameter in spherical coordinates.
 
static float cosPhi2 (const Vector3f &v)
 Assuming that the given direction is in the local coordinate system, return the squared cosine of the phi parameter in spherical coordinates.
 

Public Attributes

Vector3f s
 
Vector3f t
 
Normal3f n
 

Detailed Description

Stores a three-dimensional orthonormal coordinate frame.

This class is mostly used to quickly convert between different cartesian coordinate systems and to efficiently compute certain quantities (e.g. cosTheta(), tanTheta, ..).

Definition at line 33 of file frame.h.


The documentation for this struct was generated from the following file: