Vector Class Reference

#include <geometry.h>

List of all members.

Public Member Functions

 Vector ()
 Vector (float xx, float yy, float zz)
bool HasNaNs () const
 Vector (const Point &p)
 Vector (const Vector &v)
Vectoroperator= (const Vector &v)
Vector operator+ (const Vector &v) const
Vectoroperator+= (const Vector &v)
Vector operator- (const Vector &v) const
Vectoroperator-= (const Vector &v)
bool operator== (const Vector &v) const
Vector operator* (float f) const
Vectoroperator*= (float f)
Vector operator/ (float f) const
Vectoroperator/= (float f)
Vector operator- () const
float operator[] (int i) const
float & operator[] (int i)
float LengthSquared () const
float Length () const
 Vector (const Normal &n)

Public Attributes

float x
float y
float z

Detailed Description

Definition at line 35 of file geometry.h.


Constructor & Destructor Documentation

Vector::Vector (  )  [inline]

Definition at line 38 of file geometry.h.

References x, y, and z.

Referenced by operator*(), operator+(), operator-(), and operator/().

Vector::Vector ( float  xx,
float  yy,
float  zz 
) [inline]

Definition at line 39 of file geometry.h.

References Assert, and HasNaNs().

Vector::Vector ( const Point p  )  [inline, explicit]

Definition at line 425 of file geometry.h.

References Assert, and HasNaNs().

Vector::Vector ( const Vector v  )  [inline]

Definition at line 48 of file geometry.h.

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

Vector::Vector ( const Normal n  )  [inline, explicit]

Definition at line 514 of file geometry.h.

References Assert, and Normal::HasNaNs().


Member Function Documentation

bool Vector::HasNaNs (  )  const [inline]
float Vector::Length (  )  const [inline]
float Vector::LengthSquared (  )  const [inline]

Definition at line 111 of file geometry.h.

References x, y, and z.

Referenced by FBm(), Triangle::GetShadingGeometry(), IrradianceCacheIntegrator::indirectLo(), Length(), and Turbulence().

Vector Vector::operator* ( float  f  )  const [inline]

Definition at line 82 of file geometry.h.

References Vector(), x, y, and z.

Vector& Vector::operator*= ( float  f  )  [inline]

Definition at line 84 of file geometry.h.

References Assert, x, y, and z.

Vector Vector::operator+ ( const Vector v  )  const [inline]

Definition at line 59 of file geometry.h.

References Assert, HasNaNs(), Vector(), x, y, and z.

Vector& Vector::operator+= ( const Vector v  )  [inline]

Definition at line 64 of file geometry.h.

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

Vector Vector::operator- (  )  const [inline]

Definition at line 101 of file geometry.h.

References Vector(), x, y, and z.

Vector Vector::operator- ( const Vector v  )  const [inline]

Definition at line 69 of file geometry.h.

References Assert, HasNaNs(), Vector(), x, y, and z.

Vector& Vector::operator-= ( const Vector v  )  [inline]

Definition at line 74 of file geometry.h.

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

Vector Vector::operator/ ( float  f  )  const [inline]

Definition at line 89 of file geometry.h.

References Assert, Vector(), x, y, and z.

Vector& Vector::operator/= ( float  f  )  [inline]

Definition at line 95 of file geometry.h.

References Assert, x, y, and z.

Vector& Vector::operator= ( const Vector v  )  [inline]

Definition at line 53 of file geometry.h.

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

bool Vector::operator== ( const Vector v  )  const [inline]

Definition at line 79 of file geometry.h.

References x, y, and z.

float& Vector::operator[] ( int  i  )  [inline]

Definition at line 107 of file geometry.h.

References Assert, and x.

float Vector::operator[] ( int  i  )  const [inline]

Definition at line 102 of file geometry.h.

References Assert, and x.


Member Data Documentation

float Vector::x
float Vector::y
float Vector::z

Definition at line 116 of file geometry.h.

Referenced by AbsCosTheta(), AbsDot(), CoordinateSystem(), CosineSampleHemisphere(), CosTheta(), CreateSpotLight(), Cross(), CylindricalMapping2D::cylinder(), AnimatedTransform::Decompose(), VolumeGridDensity::Density(), Dot(), RegularHalfangleBRDF::f(), Microfacet::f(), SpotLight::Falloff(), Gen_CosHemisphere(), Gen_Sample_f(), PerspectiveCamera::GenerateRay(), OrthoCamera::GenerateRay(), PerspectiveCamera::GenerateRayDifferential(), OrthoCamera::GenerateRayDifferential(), HasNaNs(), Sphere::Intersect(), Paraboloid::Intersect(), KdTreeAccel::Intersect(), Hyperboloid::Intersect(), Disk::Intersect(), Cone::Intersect(), BVHAccel::Intersect(), Sphere::IntersectP(), Paraboloid::IntersectP(), KdTreeAccel::IntersectP(), Hyperboloid::IntersectP(), Disk::IntersectP(), Cone::IntersectP(), BVHAccel::IntersectP(), IntersectP(), LengthSquared(), UseRadianceProbes::Li(), GlossyPRTIntegrator::Li(), BSDF::LocalToWorld(), LookAt(), main(), BBox::MaximumExtent(), Transform::operator()(), operator*(), operator*=(), Point::operator+(), operator+(), Point::operator+=(), operator+=(), Point::operator-(), operator-(), Point::operator-=(), operator-=(), operator/(), operator/=(), operator=(), operator==(), BRDFToBTDF::otherHemisphere(), ProjectionLight::Projection(), Quaternion::Quaternion(), AggregateTest::Render(), Rotate(), SameHemisphere(), FresnelBlend::Sample_f(), BxDF::Sample_f(), SpecularReflection::Sample_f(), GonioPhotometricLight::Scale(), SHEvaluate(), SphericalTheta(), BBox::SurfaceArea(), Quaternion::ToTransform(), Translate(), Vector(), and BBox::Volume().


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