#include <geometry.h>
Public Member Functions | |
Vector () | |
Vector (float xx, float yy, float zz) | |
bool | HasNaNs () const |
Vector (const Point &p) | |
Vector (const Vector &v) | |
Vector & | operator= (const Vector &v) |
Vector | operator+ (const Vector &v) const |
Vector & | operator+= (const Vector &v) |
Vector | operator- (const Vector &v) const |
Vector & | operator-= (const Vector &v) |
bool | operator== (const Vector &v) const |
Vector | operator* (float f) const |
Vector & | operator*= (float f) |
Vector | operator/ (float f) const |
Vector & | operator/= (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 |
Definition at line 35 of file geometry.h.
Vector::Vector | ( | ) | [inline] |
Definition at line 38 of file geometry.h.
Referenced by operator*(), operator+(), operator-(), and operator/().
Vector::Vector | ( | float | xx, | |
float | yy, | |||
float | zz | |||
) | [inline] |
Definition at line 39 of file geometry.h.
Vector::Vector | ( | const Point & | p | ) | [inline, explicit] |
Definition at line 425 of file geometry.h.
Vector::Vector | ( | const Vector & | v | ) | [inline] |
Vector::Vector | ( | const Normal & | n | ) | [inline, explicit] |
Definition at line 514 of file geometry.h.
References Assert, and Normal::HasNaNs().
bool Vector::HasNaNs | ( | ) | const [inline] |
Definition at line 43 of file geometry.h.
Referenced by AbsDot(), Cross(), Dot(), RayDifferential::HasNaNs(), Ray::HasNaNs(), Normal::Normal(), Point::operator+(), operator+(), Point::operator+=(), operator+=(), Point::operator-(), operator-(), Point::operator-=(), operator-=(), operator=(), and Vector().
float Vector::Length | ( | ) | const [inline] |
Definition at line 112 of file geometry.h.
References LengthSquared().
Referenced by Triangle::Area(), CreateTriangleMeshShape(), IrradianceCacheIntegrator::Li(), Normalize(), SHEvaluate(), and DensityRegion::tau().
float Vector::LengthSquared | ( | ) | const [inline] |
Definition at line 111 of file geometry.h.
Referenced by FBm(), Triangle::GetShadingGeometry(), IrradianceCacheIntegrator::indirectLo(), Length(), and Turbulence().
Vector Vector::operator* | ( | float | f | ) | const [inline] |
Vector& Vector::operator*= | ( | float | f | ) | [inline] |
Vector Vector::operator- | ( | ) | const [inline] |
Vector Vector::operator/ | ( | float | f | ) | const [inline] |
Vector& Vector::operator/= | ( | float | f | ) | [inline] |
bool Vector::operator== | ( | const Vector & | v | ) | const [inline] |
Definition at line 79 of file geometry.h.
float& Vector::operator[] | ( | int | i | ) | [inline] |
Definition at line 107 of file geometry.h.
float Vector::operator[] | ( | int | i | ) | const [inline] |
Definition at line 102 of file geometry.h.
float Vector::x |
Definition at line 116 of file geometry.h.
Referenced by AbsDot(), CoordinateSystem(), CosineSampleHemisphere(), CosPhi(), CreateSpotLight(), Cross(), CylindricalMapping2D::cylinder(), Anisotropic::D(), AnimatedTransform::Decompose(), VolumeGridDensity::Density(), Dot(), RegularHalfangleBRDF::f(), Microfacet::f(), HasNaNs(), Sphere::Intersect(), Paraboloid::Intersect(), KdTreeAccel::Intersect(), Hyperboloid::Intersect(), Cylinder::Intersect(), Cone::Intersect(), BVHAccel::Intersect(), Sphere::IntersectP(), Paraboloid::IntersectP(), KdTreeAccel::IntersectP(), Hyperboloid::IntersectP(), Cylinder::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==(), operator[](), BRDFToBTDF::otherHemisphere(), Anisotropic::Pdf(), ProjectionLight::Projection(), Quaternion::Quaternion(), AggregateTest::Render(), Rotate(), Anisotropic::Sample_f(), SpecularTransmission::Sample_f(), SpecularReflection::Sample_f(), SHEvaluate(), SphericalPhi(), BBox::SurfaceArea(), Quaternion::ToTransform(), Translate(), Vector(), and BBox::Volume().
float Vector::y |
Definition at line 116 of file geometry.h.
Referenced by AbsDot(), CoordinateSystem(), CosineSampleHemisphere(), CreateSpotLight(), Cross(), CylindricalMapping2D::cylinder(), Anisotropic::D(), AnimatedTransform::Decompose(), VolumeGridDensity::Density(), Dot(), RegularHalfangleBRDF::f(), Microfacet::f(), HasNaNs(), Sphere::Intersect(), Paraboloid::Intersect(), KdTreeAccel::Intersect(), Hyperboloid::Intersect(), Cylinder::Intersect(), Cone::Intersect(), BVHAccel::Intersect(), Sphere::IntersectP(), Paraboloid::IntersectP(), KdTreeAccel::IntersectP(), Hyperboloid::IntersectP(), Cylinder::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(), Anisotropic::Pdf(), ProjectionLight::Projection(), Quaternion::Quaternion(), AggregateTest::Render(), Rotate(), Anisotropic::Sample_f(), SpecularTransmission::Sample_f(), SpecularReflection::Sample_f(), GonioPhotometricLight::Scale(), SHEvaluate(), SinPhi(), SphericalPhi(), BBox::SurfaceArea(), Quaternion::ToTransform(), Translate(), Vector(), and BBox::Volume().
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().