#include <brick.h>
Public Member Functions | |
virtual | ~BrickTexture3D () |
BrickTexture3D (boost::shared_ptr< Texture< T > > c1, boost::shared_ptr< Texture< T > > c2, float brickw, float brickh, float brickd, float mortar, TextureMapping3D *map) | |
virtual T | Evaluate (const TsPack *tspack, const DifferentialGeometry &dg) const |
virtual void | SetPower (float power, float area) |
virtual void | SetIlluminant () |
Static Public Member Functions | |
static Texture< float > * | CreateFloatTexture (const Transform &tex2world, const TextureParams &tp) |
static Texture< SWCSpectrum > * | CreateSWCSpectrumTexture (const Transform &tex2world, const TextureParams &tp) |
Private Attributes | |
float | brickwidth |
float | brickheight |
float | brickdepth |
float | mortarsize |
TextureMapping3D * | mapping |
boost::shared_ptr< Texture< T > > | tex1 |
boost::shared_ptr< Texture< T > > | tex2 |
Definition at line 33 of file brick.h.
virtual lux::BrickTexture3D< T >::~BrickTexture3D | ( | ) | [inline, virtual] |
Definition at line 37 of file brick.h.
References lux::BrickTexture3D< T >::mapping.
lux::BrickTexture3D< T >::BrickTexture3D | ( | boost::shared_ptr< Texture< T > > | c1, | |
boost::shared_ptr< Texture< T > > | c2, | |||
float | brickw, | |||
float | brickh, | |||
float | brickd, | |||
float | mortar, | |||
TextureMapping3D * | map | |||
) | [inline] |
Definition at line 41 of file brick.h.
References lux::BrickTexture3D< T >::brickdepth, lux::BrickTexture3D< T >::brickheight, lux::BrickTexture3D< T >::brickwidth, lux::BrickTexture3D< T >::mortarsize, lux::BrickTexture3D< T >::tex1, and lux::BrickTexture3D< T >::tex2.
Texture< float > * lux::BrickTexture3D< T >::CreateFloatTexture | ( | const Transform & | tex2world, | |
const TextureParams & | tp | |||
) | [inline, static] |
Definition at line 129 of file brick.h.
References lux::IdentityMapping3D::Apply3DTextureMappingOptions(), lux::TextureParams::FindFloat(), lux::TextureParams::GetFloatTexture(), lux::BrickTexture3D< T >::tex1, and lux::BrickTexture3D< T >::tex2.
Texture< SWCSpectrum > * lux::BrickTexture3D< T >::CreateSWCSpectrumTexture | ( | const Transform & | tex2world, | |
const TextureParams & | tp | |||
) | [inline, static] |
Definition at line 150 of file brick.h.
References lux::IdentityMapping3D::Apply3DTextureMappingOptions(), lux::TextureParams::FindFloat(), lux::TextureParams::GetSWCSpectrumTexture(), lux::BrickTexture3D< T >::tex1, and lux::BrickTexture3D< T >::tex2.
virtual T lux::BrickTexture3D< T >::Evaluate | ( | const TsPack * | tspack, | |
const DifferentialGeometry & | dg | |||
) | const [inline, virtual] |
Implements lux::Texture< T >.
Definition at line 59 of file brick.h.
References BRICK_EPSILON, lux::BrickTexture3D< T >::brickdepth, lux::BrickTexture3D< T >::brickheight, lux::BrickTexture3D< T >::brickwidth, lux::TextureMapping3D::Map(), lux::BrickTexture3D< T >::mapping, lux::BrickTexture3D< T >::mortarsize, lux::BrickTexture3D< T >::tex1, lux::BrickTexture3D< T >::tex2, lux::Point::x, lux::Point::y, and lux::Point::z.
virtual void lux::BrickTexture3D< T >::SetIlluminant | ( | ) | [inline, virtual] |
Reimplemented from lux::Texture< T >.
Definition at line 115 of file brick.h.
References lux::BrickTexture3D< T >::tex1, and lux::BrickTexture3D< T >::tex2.
virtual void lux::BrickTexture3D< T >::SetPower | ( | float | power, | |
float | area | |||
) | [inline, virtual] |
Reimplemented from lux::Texture< T >.
Definition at line 110 of file brick.h.
References lux::BrickTexture3D< T >::tex1, and lux::BrickTexture3D< T >::tex2.
float lux::BrickTexture3D< T >::brickdepth [private] |
Definition at line 124 of file brick.h.
Referenced by lux::BrickTexture3D< T >::BrickTexture3D(), and lux::BrickTexture3D< T >::Evaluate().
float lux::BrickTexture3D< T >::brickheight [private] |
Definition at line 124 of file brick.h.
Referenced by lux::BrickTexture3D< T >::BrickTexture3D(), and lux::BrickTexture3D< T >::Evaluate().
float lux::BrickTexture3D< T >::brickwidth [private] |
Definition at line 124 of file brick.h.
Referenced by lux::BrickTexture3D< T >::BrickTexture3D(), and lux::BrickTexture3D< T >::Evaluate().
TextureMapping3D* lux::BrickTexture3D< T >::mapping [private] |
Definition at line 125 of file brick.h.
Referenced by lux::BrickTexture3D< T >::Evaluate(), and lux::BrickTexture3D< T >::~BrickTexture3D().
float lux::BrickTexture3D< T >::mortarsize [private] |
Definition at line 124 of file brick.h.
Referenced by lux::BrickTexture3D< T >::BrickTexture3D(), and lux::BrickTexture3D< T >::Evaluate().
boost::shared_ptr<Texture<T> > lux::BrickTexture3D< T >::tex1 [private] |
Definition at line 126 of file brick.h.
Referenced by lux::BrickTexture3D< T >::BrickTexture3D(), lux::BrickTexture3D< T >::CreateFloatTexture(), lux::BrickTexture3D< T >::CreateSWCSpectrumTexture(), lux::BrickTexture3D< T >::Evaluate(), lux::BrickTexture3D< T >::SetIlluminant(), and lux::BrickTexture3D< T >::SetPower().
boost::shared_ptr<Texture<T> > lux::BrickTexture3D< T >::tex2 [private] |
Definition at line 126 of file brick.h.
Referenced by lux::BrickTexture3D< T >::BrickTexture3D(), lux::BrickTexture3D< T >::CreateFloatTexture(), lux::BrickTexture3D< T >::CreateSWCSpectrumTexture(), lux::BrickTexture3D< T >::Evaluate(), lux::BrickTexture3D< T >::SetIlluminant(), and lux::BrickTexture3D< T >::SetPower().