lux::Vector Class Reference

#include <vector.h>

Collaboration diagram for lux::Vector:
[legend]

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 39 of file vector.h.


Constructor & Destructor Documentation

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

Definition at line 43 of file vector.h.

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

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

Definition at line 104 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]
Vector lux::Vector::operator* ( float  f  )  const [inline]

Definition at line 66 of file vector.h.

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

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

Definition at line 70 of file vector.h.

References x, y, and z.

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

Definition at line 47 of file vector.h.

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

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

Definition at line 51 of file vector.h.

References x, y, and z.

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

Definition at line 86 of file vector.h.

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

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

Definition at line 55 of file vector.h.

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

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

Definition at line 59 of file vector.h.

References x, y, and z.

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

Definition at line 74 of file vector.h.

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

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

Definition at line 80 of file vector.h.

References x, y, and z.

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

Definition at line 63 of file vector.h.

References x, y, and z.

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

Definition at line 94 of file vector.h.

References x.

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

Definition at line 89 of file vector.h.

References x.

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

Definition at line 106 of file vector.h.

References x, y, and z.


Friends And Related Function Documentation

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

Definition at line 40 of file vector.h.


Member Data Documentation

Definition at line 102 of file vector.h.

Referenced by lux::AbsDot(), lux::IdentityMapping3D::Apply3DTextureMappingOptions(), lux::UnsafeKdTreeAccel::buildTree(), lux::TaBRecKdTreeAccel::buildTree(), lux::Cloud::Cloud(), lux::MeshQuadrilateral::ComputeV11BarycentricCoords(), lux::CoordinateSystem(), lux::CosineSampleHemisphere(), lux::CosPhi(), lux::SpotLight::CreateLight(), lux::Cross(), lux::CylindricalMapping2D::cylinder(), lux::Anisotropic::D(), lux::Dot(), lux::MachineEpsilon::E(), SunBxDF::f(), SkyPortalBxDF::f(), SkyBxDF::f(), GonioBxDF::f(), PerspectiveBxDF::f(), lux::Lafortune::f(), InfinitePortalBxDF::f(), InfiniteBxDF::f(), lux::BVHAccel::FindBestSplit(), lux::RealisticCamera::GenerateRay(), lux::Ray::GetDirectionSigns(), lux::EnvironmentCamera::GetSamplePosition(), lux::UnsafeKdTreeAccel::Intersect(), lux::TaBRecKdTreeAccel::Intersect(), lux::Sphere::Intersect(), lux::Quadrilateral::Intersect(), lux::Paraboloid::Intersect(), lux::MeshWaldTriangle::Intersect(), lux::MeshQuadrilateral::Intersect(), lux::LensComponent::Intersect(), lux::Hyperboloid::Intersect(), lux::Cylinder::Intersect(), lux::Cone::Intersect(), lux::UnsafeKdTreeAccel::IntersectP(), lux::TaBRecKdTreeAccel::IntersectP(), lux::Sphere::IntersectP(), lux::Paraboloid::IntersectP(), lux::MeshWaldTriangle::IntersectP(), lux::LensComponent::IntersectP(), lux::Hyperboloid::IntersectP(), lux::Cylinder::IntersectP(), lux::Cone::IntersectP(), IsConvex(), lux::MeshQuadrilateral::IsConvex(), LengthSquared(), lux::BSDF::LocalToWorld(), MajorAxis(), lux::MeshQuadrilateral::MajorAxis(), lux::VerticalCrossMapping::Map(), lux::AngularMapping::Map(), 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(), SunBxDF::Pdf(), SkyPortalBxDF::Pdf(), PerspectiveBxDF::Pdf(), lux::Lafortune::Pdf(), InfinitePortalBxDF::Pdf(), lux::Anisotropic::Pdf(), lux::ProjectionLight::Projection(), lux::Quaternion::Quaternion(), lux::SpecularTransmission::Sample_f(), lux::SpecularReflection::Sample_f(), SkyPortalBxDF::Sample_f(), lux::Lafortune::Sample_f(), InfinitePortalBxDF::Sample_f(), lux::Anisotropic::Sample_f(), lux::SkyLight::Sample_L(), lux::InfiniteAreaLight::Sample_L(), serialize(), lux::SphericalPhi(), lux::BBox::SurfaceArea(), lux::Quaternion::ToMatrix(), lux::ParamSet::ToString(), lux::Cloud::Turbulence(), and lux::BBox::Volume().

Definition at line 102 of file vector.h.

Referenced by lux::AbsDot(), lux::IdentityMapping3D::Apply3DTextureMappingOptions(), lux::UnsafeKdTreeAccel::buildTree(), lux::TaBRecKdTreeAccel::buildTree(), lux::Cloud::Cloud(), lux::MeshQuadrilateral::ComputeV11BarycentricCoords(), lux::CoordinateSystem(), lux::CosineSampleHemisphere(), lux::SpotLight::CreateLight(), lux::Cross(), lux::CylindricalMapping2D::cylinder(), lux::Anisotropic::D(), lux::Dot(), lux::MachineEpsilon::E(), SunBxDF::f(), SkyPortalBxDF::f(), SkyBxDF::f(), GonioBxDF::f(), PerspectiveBxDF::f(), lux::Lafortune::f(), InfinitePortalBxDF::f(), InfiniteBxDF::f(), lux::BVHAccel::FindBestSplit(), lux::RealisticCamera::GenerateRay(), lux::Ray::GetDirectionSigns(), lux::EnvironmentCamera::GetSamplePosition(), lux::UnsafeKdTreeAccel::Intersect(), lux::TaBRecKdTreeAccel::Intersect(), lux::Sphere::Intersect(), lux::Quadrilateral::Intersect(), lux::Paraboloid::Intersect(), lux::MeshWaldTriangle::Intersect(), lux::MeshQuadrilateral::Intersect(), lux::LensComponent::Intersect(), lux::Hyperboloid::Intersect(), lux::Cylinder::Intersect(), lux::Cone::Intersect(), lux::UnsafeKdTreeAccel::IntersectP(), lux::TaBRecKdTreeAccel::IntersectP(), lux::Sphere::IntersectP(), lux::Paraboloid::IntersectP(), lux::MeshWaldTriangle::IntersectP(), lux::LensComponent::IntersectP(), lux::Hyperboloid::IntersectP(), lux::Cylinder::IntersectP(), lux::Cone::IntersectP(), LengthSquared(), lux::BSDF::LocalToWorld(), MajorAxis(), lux::MeshQuadrilateral::MajorAxis(), lux::VerticalCrossMapping::Map(), lux::AngularMapping::Map(), 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(), SkyPortalBxDF::Pdf(), PerspectiveBxDF::Pdf(), lux::Lafortune::Pdf(), InfinitePortalBxDF::Pdf(), lux::Anisotropic::Pdf(), lux::ProjectionLight::Projection(), lux::Quaternion::Quaternion(), lux::SpecularTransmission::Sample_f(), lux::SpecularReflection::Sample_f(), SkyPortalBxDF::Sample_f(), PerspectiveBxDF::Sample_f(), lux::Lafortune::Sample_f(), InfinitePortalBxDF::Sample_f(), lux::Anisotropic::Sample_f(), lux::SkyLight::Sample_L(), lux::InfiniteAreaLight::Sample_L(), serialize(), lux::SinPhi(), lux::SphericalPhi(), lux::BBox::SurfaceArea(), lux::Quaternion::ToMatrix(), lux::ParamSet::ToString(), lux::Cloud::Turbulence(), and lux::BBox::Volume().

Definition at line 102 of file vector.h.

Referenced by lux::AbsDot(), lux::IdentityMapping3D::Apply3DTextureMappingOptions(), lux::PerspectiveCamera::AutoFocus(), lux::UnsafeKdTreeAccel::buildTree(), lux::TaBRecKdTreeAccel::buildTree(), lux::Cloud::Cloud(), lux::MeshQuadrilateral::ComputeV11BarycentricCoords(), lux::CoordinateSystem(), lux::CosineSampleHemisphere(), lux::CosTheta(), lux::SpotLight::CreateLight(), lux::Cross(), lux::CylindricalMapping2D::cylinder(), lux::Dot(), lux::MachineEpsilon::E(), SunBxDF::f(), SkyPortalBxDF::f(), SkyBxDF::f(), GonioBxDF::f(), PerspectiveBxDF::f(), lux::Lafortune::f(), InfinitePortalBxDF::f(), InfiniteBxDF::f(), EnvironmentBxDF::f(), lux::BRDFToBTDF::f(), lux::BVHAccel::FindBestSplit(), lux::Torus::FindIntersection(), lux::RealisticCamera::GenerateRay(), lux::PerspectiveCamera::GenerateRay(), lux::OrthoCamera::GenerateRay(), lux::Ray::GetDirectionSigns(), lux::EnvironmentCamera::GetSamplePosition(), lux::UnsafeKdTreeAccel::Intersect(), lux::TaBRecKdTreeAccel::Intersect(), lux::Sphere::Intersect(), lux::Quadrilateral::Intersect(), lux::Paraboloid::Intersect(), lux::MeshWaldTriangle::Intersect(), lux::MeshQuadrilateral::Intersect(), lux::LensComponent::Intersect(), lux::Hyperboloid::Intersect(), lux::Disk::Intersect(), lux::Cone::Intersect(), lux::UnsafeKdTreeAccel::IntersectP(), lux::TaBRecKdTreeAccel::IntersectP(), lux::Sphere::IntersectP(), lux::Paraboloid::IntersectP(), lux::MeshWaldTriangle::IntersectP(), lux::LensComponent::IntersectP(), lux::Hyperboloid::IntersectP(), lux::Disk::IntersectP(), lux::Cone::IntersectP(), IsConvex(), lux::MeshQuadrilateral::IsConvex(), LengthSquared(), lux::BSDF::LocalToWorld(), MajorAxis(), lux::MeshQuadrilateral::MajorAxis(), lux::VerticalCrossMapping::Map(), lux::AngularMapping::Map(), 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(), SkyPortalBxDF::Pdf(), PerspectiveBxDF::Pdf(), lux::Lafortune::Pdf(), InfinitePortalBxDF::Pdf(), lux::FresnelBlend::Pdf(), lux::BRDFToBTDF::Pdf(), lux::BxDF::Pdf(), lux::Blinn::Pdf(), lux::ProjectionLight::Projection(), lux::Quaternion::Quaternion(), lux::BxDF::rho(), lux::SameHemisphere(), lux::WardIsotropic::Sample_f(), lux::ArchitecturalReflection::Sample_f(), lux::SpecularReflection::Sample_f(), SkyPortalBxDF::Sample_f(), PerspectiveBxDF::Sample_f(), lux::Lafortune::Sample_f(), InfinitePortalBxDF::Sample_f(), lux::FresnelBlend::Sample_f(), lux::BxDF::Sample_f(), lux::BRDFToBTDF::Sample_f(), lux::Blinn::Sample_f(), lux::Beckmann::Sample_f(), lux::SkyLight::Sample_L(), lux::InfiniteAreaLight::Sample_L(), serialize(), lux::SinTheta(), lux::SphericalTheta(), lux::BBox::SurfaceArea(), lux::Quaternion::ToMatrix(), lux::ParamSet::ToString(), lux::Cloud::Turbulence(), lux::BBox::Volume(), and lux::ArchitecturalReflection::Weight().


The documentation for this class was generated from the following files:
Generated by  doxygen 1.6.2-20100208