geometry.h File Reference

#include "pbrt.h"

Go to the source code of this file.

Classes

class  Vector
class  Point
class  Normal
class  Ray
class  RayDifferential
class  BBox

Functions

Vector operator* (float f, const Vector &v)
float Dot (const Vector &v1, const Vector &v2)
float AbsDot (const Vector &v1, const Vector &v2)
Vector Cross (const Vector &v1, const Vector &v2)
Vector Cross (const Vector &v1, const Normal &v2)
Vector Cross (const Normal &v1, const Vector &v2)
Vector Normalize (const Vector &v)
void CoordinateSystem (const Vector &v1, Vector *v2, Vector *v3)
float Distance (const Point &p1, const Point &p2)
float DistanceSquared (const Point &p1, const Point &p2)
Point operator* (float f, const Point &p)
Normal operator* (float f, const Normal &n)
Normal Normalize (const Normal &n)
float Dot (const Normal &n1, const Vector &v2)
float Dot (const Vector &v1, const Normal &n2)
float Dot (const Normal &n1, const Normal &n2)
float AbsDot (const Normal &n1, const Vector &v2)
float AbsDot (const Vector &v1, const Normal &n2)
float AbsDot (const Normal &n1, const Normal &n2)
Normal Faceforward (const Normal &n, const Vector &v)
Normal Faceforward (const Normal &n, const Normal &n2)
Vector Faceforward (const Vector &v, const Vector &v2)
Vector Faceforward (const Vector &v, const Normal &n2)
Vector SphericalDirection (float sintheta, float costheta, float phi)
Vector SphericalDirection (float sintheta, float costheta, float phi, const Vector &x, const Vector &y, const Vector &z)
float SphericalTheta (const Vector &v)
float SphericalPhi (const Vector &v)

Function Documentation

float AbsDot ( const Normal n1,
const Normal n2 
) [inline]

Definition at line 550 of file geometry.h.

References Assert, Normal::HasNaNs(), Normal::x, Normal::y, and Normal::z.

float AbsDot ( const Vector v1,
const Normal n2 
) [inline]
float AbsDot ( const Normal n1,
const Vector v2 
) [inline]
float AbsDot ( const Vector v1,
const Vector v2 
) [inline]
void CoordinateSystem ( const Vector v1,
Vector v2,
Vector v3 
) [inline]
Vector Cross ( const Normal v1,
const Vector v2 
) [inline]
Vector Cross ( const Vector v1,
const Normal v2 
) [inline]
Vector Cross ( const Vector v1,
const Vector v2 
) [inline]
float Distance ( const Point p1,
const Point p2 
) [inline]
float DistanceSquared ( const Point p1,
const Point p2 
) [inline]
float Dot ( const Normal n1,
const Normal n2 
) [inline]

Definition at line 532 of file geometry.h.

References Assert, Normal::HasNaNs(), Normal::x, Normal::y, and Normal::z.

float Dot ( const Vector v1,
const Normal n2 
) [inline]
float Dot ( const Normal n1,
const Vector v2 
) [inline]
float Dot ( const Vector v1,
const Vector v2 
) [inline]
Vector Faceforward ( const Vector v,
const Normal n2 
) [inline]

Definition at line 573 of file geometry.h.

References Dot().

Vector Faceforward ( const Vector v,
const Vector v2 
) [inline]

Definition at line 567 of file geometry.h.

References Dot().

Normal Faceforward ( const Normal n,
const Normal n2 
) [inline]

Definition at line 561 of file geometry.h.

References Dot().

Normal Faceforward ( const Normal n,
const Vector v 
) [inline]
Normal Normalize ( const Normal n  )  [inline]

Definition at line 509 of file geometry.h.

References Normal::Length().

Vector Normalize ( const Vector v  )  [inline]
Normal operator* ( float  f,
const Normal n 
) [inline]

Definition at line 504 of file geometry.h.

References Normal::x, Normal::y, and Normal::z.

Point operator* ( float  f,
const Point p 
) [inline]

Definition at line 498 of file geometry.h.

References Assert, and Point::HasNaNs().

Vector operator* ( float  f,
const Vector v 
) [inline]

Definition at line 431 of file geometry.h.

Vector SphericalDirection ( float  sintheta,
float  costheta,
float  phi,
const Vector x,
const Vector y,
const Vector z 
) [inline]

Definition at line 599 of file geometry.h.

Vector SphericalDirection ( float  sintheta,
float  costheta,
float  phi 
) [inline]
float SphericalPhi ( const Vector v  )  [inline]
float SphericalTheta ( const Vector v  )  [inline]
Generated on Sat Aug 28 20:00:12 2010 for pbrt by  doxygen 1.6.3