lux::Vector Class Reference

#include <vector.h>

List of all members.

Public Member Functions

 Vector (float _x=0, float _y=0, float _z=0)
 Vector (const Point &p)
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

Private Member Functions

template<class Archive >
void serialize (Archive &ar, const unsigned int version)

Friends

class boost::serialization::access


Detailed Description

Definition at line 35 of file vector.h.


Constructor & Destructor Documentation

lux::Vector::Vector ( float  _x = 0,
float  _y = 0,
float  _z = 0 
) [inline]

Definition at line 39 of file vector.h.

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

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

Definition at line 102 of file core/geometry/point.h.

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

Definition at line 100 of file normal.h.


Member Function Documentation

float lux::Vector::Length (  )  const [inline]

float lux::Vector::LengthSquared (  )  const [inline]

Definition at line 94 of file vector.h.

References x, y, and z.

Referenced by lux::FBm(), Length(), and lux::Turbulence().

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

Definition at line 62 of file vector.h.

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

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

Definition at line 66 of file vector.h.

References x, y, and z.

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

Definition at line 43 of file vector.h.

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

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

Definition at line 47 of file vector.h.

References x, y, and z.

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

Definition at line 82 of file vector.h.

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

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

Definition at line 51 of file vector.h.

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

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

Definition at line 55 of file vector.h.

References x, y, and z.

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

Definition at line 70 of file vector.h.

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

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

Definition at line 76 of file vector.h.

References x, y, and z.

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

Definition at line 59 of file vector.h.

References x, y, and z.

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

Definition at line 90 of file vector.h.

References x.

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

Definition at line 85 of file vector.h.

References x.

template<class Archive >
void lux::Vector::serialize ( Archive &  ar,
const unsigned int  version 
) [inline, private]

Definition at line 102 of file vector.h.

References x, y, and z.


Friends And Related Function Documentation

friend class boost::serialization::access [friend]

Definition at line 36 of file vector.h.


Member Data Documentation

Definition at line 98 of file vector.h.

Referenced by lux::AbsDot(), lux::IdentityMapping3D::Apply3DTextureMappingOptions(), lux::UnsafeKdTreeAccel::buildTree(), lux::TaBRecKdTreeAccel::buildTree(), lux::CoordinateSystem(), lux::CosineSampleHemisphere(), lux::CosPhi(), lux::SpotLight::CreateLight(), lux::Cross(), lux::CylindricalMapping2D::cylinder(), lux::Anisotropic::D(), lux::Dot(), SkyBxDF::f(), PerspectiveBxDF::f(), lux::Lafortune::f(), lux::RealisticCamera::GenerateRay(), lux::EnvironmentCamera::GenerateSample(), lux::WaldTriangle::Intersect(), lux::UnsafeKdTreeAccel::Intersect(), lux::TaBRecKdTreeAccel::Intersect(), lux::Sphere::Intersect(), lux::Paraboloid::Intersect(), lux::LensComponent::Intersect(), lux::Hyperboloid::Intersect(), lux::Cylinder::Intersect(), lux::Cone::Intersect(), lux::WaldTriangle::IntersectP(), lux::UnsafeKdTreeAccel::IntersectP(), lux::TaBRecKdTreeAccel::IntersectP(), lux::Sphere::IntersectP(), lux::Paraboloid::IntersectP(), lux::LensComponent::IntersectP(), lux::Hyperboloid::IntersectP(), lux::Cylinder::IntersectP(), lux::Cone::IntersectP(), LengthSquared(), lux::BSDF::LocalToWorld(), lux::LookAt(), lux::BBox::MaximumExtent(), operator*(), operator*=(), operator+(), lux::Point::operator+(), operator+=(), lux::Point::operator+=(), operator-(), lux::Point::operator-(), operator-=(), lux::Point::operator-=(), operator/(), operator/=(), lux::operator<<(), operator==(), operator[](), lux::BRDFToBTDF::otherHemisphere(), PerspectiveBxDF::Pdf(), lux::Lafortune::Pdf(), lux::ProjectionLight::Projection(), lux::Rotate(), lux::SpecularTransmission::Sample_f(), lux::SpecularReflection::Sample_f(), lux::Lafortune::Sample_f(), lux::SkyLight::Sample_L(), lux::InfiniteAreaLight::Sample_L(), serialize(), lux::SphericalPhi(), lux::TaBRecKdTreeAccel::TaBRecKdTreeAccel(), lux::ParamSet::ToString(), lux::TransformAccordingNormal(), lux::Translate(), lux::BBox::Volume(), and lux::WaldTriangle::WaldTriangle().

Definition at line 98 of file vector.h.

Referenced by lux::AbsDot(), lux::IdentityMapping3D::Apply3DTextureMappingOptions(), lux::UnsafeKdTreeAccel::buildTree(), lux::TaBRecKdTreeAccel::buildTree(), lux::CoordinateSystem(), lux::CosineSampleHemisphere(), lux::SpotLight::CreateLight(), lux::Cross(), lux::CylindricalMapping2D::cylinder(), lux::Anisotropic::D(), lux::Dot(), SkyBxDF::f(), PerspectiveBxDF::f(), lux::Lafortune::f(), lux::RealisticCamera::GenerateRay(), lux::EnvironmentCamera::GenerateSample(), lux::WaldTriangle::Intersect(), lux::UnsafeKdTreeAccel::Intersect(), lux::TaBRecKdTreeAccel::Intersect(), lux::Sphere::Intersect(), lux::Paraboloid::Intersect(), lux::LensComponent::Intersect(), lux::Hyperboloid::Intersect(), lux::Cylinder::Intersect(), lux::Cone::Intersect(), lux::WaldTriangle::IntersectP(), lux::UnsafeKdTreeAccel::IntersectP(), lux::TaBRecKdTreeAccel::IntersectP(), lux::Sphere::IntersectP(), lux::Paraboloid::IntersectP(), lux::LensComponent::IntersectP(), lux::Hyperboloid::IntersectP(), lux::Cylinder::IntersectP(), lux::Cone::IntersectP(), LengthSquared(), lux::BSDF::LocalToWorld(), lux::LookAt(), lux::BBox::MaximumExtent(), operator*(), operator*=(), operator+(), lux::Point::operator+(), operator+=(), lux::Point::operator+=(), operator-(), lux::Point::operator-(), operator-=(), lux::Point::operator-=(), operator/(), operator/=(), lux::operator<<(), operator==(), lux::BRDFToBTDF::otherHemisphere(), PerspectiveBxDF::Pdf(), lux::Lafortune::Pdf(), lux::ProjectionLight::Projection(), lux::Rotate(), lux::SpecularTransmission::Sample_f(), lux::SpecularReflection::Sample_f(), PerspectiveBxDF::Sample_f(), lux::Lafortune::Sample_f(), lux::SkyLight::Sample_L(), lux::InfiniteAreaLight::Sample_L(), lux::GonioPhotometricLight::Scale(), serialize(), lux::SinPhi(), lux::SphericalPhi(), lux::TaBRecKdTreeAccel::TaBRecKdTreeAccel(), lux::ParamSet::ToString(), lux::TransformAccordingNormal(), lux::Translate(), lux::BBox::Volume(), and lux::WaldTriangle::WaldTriangle().

Definition at line 98 of file vector.h.

Referenced by lux::AbsDot(), lux::IdentityMapping3D::Apply3DTextureMappingOptions(), lux::PerspectiveCamera::AutoFocus(), lux::UnsafeKdTreeAccel::buildTree(), lux::TaBRecKdTreeAccel::buildTree(), lux::CoordinateSystem(), lux::CosineSampleHemisphere(), lux::CosTheta(), lux::SpotLight::CreateLight(), lux::Cross(), lux::CylindricalMapping2D::cylinder(), lux::Dot(), SunBxDF::f(), lux::SpecularTransmission::f(), SkyBxDF::f(), PerspectiveBxDF::f(), lux::Lafortune::f(), lux::SpotLight::Falloff(), lux::RealisticCamera::GenerateRay(), lux::PerspectiveCamera::GenerateRay(), lux::OrthoCamera::GenerateRay(), lux::EnvironmentCamera::GenerateSample(), lux::WaldTriangle::Intersect(), lux::UnsafeKdTreeAccel::Intersect(), lux::TaBRecKdTreeAccel::Intersect(), lux::Sphere::Intersect(), lux::Paraboloid::Intersect(), lux::LensComponent::Intersect(), lux::Hyperboloid::Intersect(), lux::Disk::Intersect(), lux::Cone::Intersect(), lux::WaldTriangle::IntersectP(), lux::UnsafeKdTreeAccel::IntersectP(), lux::TaBRecKdTreeAccel::IntersectP(), lux::Sphere::IntersectP(), lux::Paraboloid::IntersectP(), lux::LensComponent::IntersectP(), lux::Hyperboloid::IntersectP(), lux::Disk::IntersectP(), lux::Cone::IntersectP(), lux::PerspectiveCamera::IsVisibleFromEyes(), LengthSquared(), lux::BSDF::LocalToWorld(), lux::LookAt(), lux::BBox::MaximumExtent(), operator*(), operator*=(), operator+(), lux::Point::operator+(), operator+=(), lux::Point::operator+=(), operator-(), lux::Point::operator-(), operator-=(), lux::Point::operator-=(), operator/(), operator/=(), lux::operator<<(), operator==(), lux::BRDFToBTDF::otherHemisphere(), SunBxDF::Pdf(), PerspectiveBxDF::Pdf(), lux::Lafortune::Pdf(), lux::FresnelBlend::Pdf(), lux::CookTorrance::Pdf(), lux::BxDF::Pdf(), lux::Blinn::Pdf(), lux::ProjectionLight::Projection(), lux::BxDF::rho(), lux::Rotate(), lux::SameHemisphere(), lux::WardIsotropic::Sample_f(), lux::SpecularTransmission::Sample_f(), lux::ArchitecturalReflection::Sample_f(), lux::SpecularReflection::Sample_f(), PerspectiveBxDF::Sample_f(), lux::Lafortune::Sample_f(), lux::FresnelBlend::Sample_f(), lux::CookTorrance::Sample_f(), lux::BxDF::Sample_f(), lux::Blinn::Sample_f(), lux::Beckmann::Sample_f(), lux::SkyLight::Sample_L(), lux::InfiniteAreaLight::Sample_L(), lux::GonioPhotometricLight::Scale(), serialize(), lux::SinTheta(), lux::SphericalTheta(), lux::TaBRecKdTreeAccel::TaBRecKdTreeAccel(), lux::ParamSet::ToString(), lux::TransformAccordingNormal(), lux::Translate(), lux::BBox::Volume(), and lux::WaldTriangle::WaldTriangle().


The documentation for this class was generated from the following files:

Generated on Mon May 18 07:16:17 2009 for lux by  doxygen 1.5.8