#include <shape.h>
Public Member Functions | |
DifferentialGeometry () | |
DifferentialGeometry (const Point &P, const Vector &DPDU, const Vector &DPDV, const Vector &DNDU, const Vector &DNDV, float uu, float vv, const Shape *sh) | |
void | ComputeDifferentials (const RayDifferential &r) const |
Public Attributes | |
Point | p |
Normal | nn |
float | u |
float | v |
const Shape * | shape |
Vector | dpdu |
Vector | dpdv |
Normal | dndu |
Normal | dndv |
Vector | dpdx |
Vector | dpdy |
float | dudx |
float | dvdx |
float | dudy |
float | dvdy |
Definition at line 32 of file shape.h.
void DifferentialGeometry::ComputeDifferentials | ( | const RayDifferential & | r | ) | const |
Definition at line 52 of file shape.cpp.
References Ray::d, Dot(), dpdu, dpdv, dpdx, dpdy, dudx, dudy, dvdx, dvdy, RayDifferential::hasDifferentials, nn, Ray::o, p, RayDifferential::rx, RayDifferential::ry, SolveLinearSystem2x2(), Normal::x, Point::x, Normal::y, Point::y, Normal::z, and Point::z.
Referenced by Intersection::GetBSDF().
Definition at line 41 of file shape.h.
Referenced by Material::Bump(), ComputeDifferentials(), Checkerboard3D< T >::Evaluate(), Checkerboard2D< T >::Evaluate(), BidirIntegrator::generatePath(), Triangle::GetShadingGeometry(), IrradianceCache::IndirectLo(), InstancePrimitive::Intersect(), Intersection::Le(), WhittedIntegrator::Li(), PhotonIntegrator::Li(), PathIntegrator::Li(), IrradianceCache::Li(), IGIIntegrator::Li(), ExPhotonIntegrator::Li(), DirectLighting::Li(), PhotonIntegrator::LPhoton(), ExPhotonIntegrator::LPhoton(), IdentityMapping3D::Map(), PlanarMapping2D::Map(), CylindricalMapping2D::Map(), SphericalMapping2D::Map(), PhotonIntegrator::Preprocess(), and ExPhotonIntegrator::Preprocess().
Definition at line 42 of file shape.h.
Referenced by BSDF::BSDF(), Material::Bump(), ComputeDifferentials(), DifferentialGeometry(), BidirIntegrator::generatePath(), UberMaterial::GetBSDF(), Translucent::GetBSDF(), Substrate::GetBSDF(), Skin::GetBSDF(), ShinyMetal::GetBSDF(), Primer::GetBSDF(), Plastic::GetBSDF(), Mirror::GetBSDF(), Matte::GetBSDF(), Glass::GetBSDF(), Felt::GetBSDF(), Clay::GetBSDF(), BrushedMetal::GetBSDF(), BluePaint::GetBSDF(), Triangle::GetShadingGeometry(), IrradianceCache::IndirectLo(), InstancePrimitive::Intersect(), Intersection::Le(), WhittedIntegrator::Li(), PhotonIntegrator::Li(), PathIntegrator::Li(), IrradianceCache::Li(), IGIIntegrator::Li(), ExPhotonIntegrator::Li(), DirectLighting::Li(), DebugIntegrator::Li(), PhotonIntegrator::LPhoton(), ExPhotonIntegrator::LPhoton(), Shape::Pdf(), PhotonIntegrator::Preprocess(), IGIIntegrator::Preprocess(), and ExPhotonIntegrator::Preprocess().
float DifferentialGeometry::u |
Definition at line 43 of file shape.h.
Referenced by Material::Bump(), DifferentialGeometry(), Checkerboard3D< T >::Evaluate(), Checkerboard2D< T >::Evaluate(), Triangle::GetShadingGeometry(), DebugIntegrator::Li(), and UVMapping2D::Map().
float DifferentialGeometry::v |
Definition at line 43 of file shape.h.
Referenced by Material::Bump(), DifferentialGeometry(), Checkerboard3D< T >::Evaluate(), Checkerboard2D< T >::Evaluate(), Triangle::GetShadingGeometry(), DebugIntegrator::Li(), and UVMapping2D::Map().
const Shape* DifferentialGeometry::shape |
Definition at line 44 of file shape.h.
Referenced by Material::Bump(), DifferentialGeometry(), and Triangle::GetShadingGeometry().
Definition at line 45 of file shape.h.
Referenced by BSDF::BSDF(), Material::Bump(), ComputeDifferentials(), DifferentialGeometry(), Triangle::GetShadingGeometry(), and InstancePrimitive::Intersect().
Definition at line 45 of file shape.h.
Referenced by Material::Bump(), ComputeDifferentials(), DifferentialGeometry(), and InstancePrimitive::Intersect().
Definition at line 46 of file shape.h.
Referenced by Material::Bump(), InstancePrimitive::Intersect(), WhittedIntegrator::Li(), PhotonIntegrator::Li(), IrradianceCache::Li(), IGIIntegrator::Li(), ExPhotonIntegrator::Li(), and DirectLighting::Li().
Definition at line 46 of file shape.h.
Referenced by Material::Bump(), InstancePrimitive::Intersect(), WhittedIntegrator::Li(), PhotonIntegrator::Li(), IrradianceCache::Li(), IGIIntegrator::Li(), ExPhotonIntegrator::Li(), and DirectLighting::Li().
Vector DifferentialGeometry::dpdx [mutable] |
Definition at line 47 of file shape.h.
Referenced by ComputeDifferentials(), Checkerboard3D< T >::Evaluate(), Checkerboard2D< T >::Evaluate(), Triangle::GetShadingGeometry(), WhittedIntegrator::Li(), PhotonIntegrator::Li(), IrradianceCache::Li(), IGIIntegrator::Li(), ExPhotonIntegrator::Li(), DirectLighting::Li(), IdentityMapping3D::Map(), PlanarMapping2D::Map(), CylindricalMapping2D::Map(), and SphericalMapping2D::Map().
Vector DifferentialGeometry::dpdy [mutable] |
Definition at line 47 of file shape.h.
Referenced by ComputeDifferentials(), Checkerboard3D< T >::Evaluate(), Checkerboard2D< T >::Evaluate(), Triangle::GetShadingGeometry(), WhittedIntegrator::Li(), PhotonIntegrator::Li(), IrradianceCache::Li(), IGIIntegrator::Li(), ExPhotonIntegrator::Li(), DirectLighting::Li(), IdentityMapping3D::Map(), PlanarMapping2D::Map(), CylindricalMapping2D::Map(), and SphericalMapping2D::Map().
float DifferentialGeometry::dudx [mutable] |
Definition at line 48 of file shape.h.
Referenced by Material::Bump(), ComputeDifferentials(), DifferentialGeometry(), Checkerboard3D< T >::Evaluate(), Checkerboard2D< T >::Evaluate(), Triangle::GetShadingGeometry(), WhittedIntegrator::Li(), PhotonIntegrator::Li(), IrradianceCache::Li(), IGIIntegrator::Li(), ExPhotonIntegrator::Li(), DirectLighting::Li(), and UVMapping2D::Map().
float DifferentialGeometry::dvdx [mutable] |
Definition at line 48 of file shape.h.
Referenced by Material::Bump(), ComputeDifferentials(), DifferentialGeometry(), Checkerboard3D< T >::Evaluate(), Checkerboard2D< T >::Evaluate(), Triangle::GetShadingGeometry(), WhittedIntegrator::Li(), PhotonIntegrator::Li(), IrradianceCache::Li(), IGIIntegrator::Li(), ExPhotonIntegrator::Li(), DirectLighting::Li(), and UVMapping2D::Map().
float DifferentialGeometry::dudy [mutable] |
Definition at line 48 of file shape.h.
Referenced by Material::Bump(), ComputeDifferentials(), DifferentialGeometry(), Checkerboard3D< T >::Evaluate(), Checkerboard2D< T >::Evaluate(), Triangle::GetShadingGeometry(), WhittedIntegrator::Li(), PhotonIntegrator::Li(), IrradianceCache::Li(), IGIIntegrator::Li(), ExPhotonIntegrator::Li(), DirectLighting::Li(), and UVMapping2D::Map().
float DifferentialGeometry::dvdy [mutable] |
Definition at line 48 of file shape.h.
Referenced by Material::Bump(), ComputeDifferentials(), DifferentialGeometry(), Checkerboard3D< T >::Evaluate(), Checkerboard2D< T >::Evaluate(), Triangle::GetShadingGeometry(), WhittedIntegrator::Li(), PhotonIntegrator::Li(), IrradianceCache::Li(), IGIIntegrator::Li(), ExPhotonIntegrator::Li(), DirectLighting::Li(), and UVMapping2D::Map().