Loading...
Searching...
No Matches
PositionShader< GridT, SamplerType > Class Template Reference

Color shader that treats position (x, y, z) as an RGB color in a cube defined from an axis-aligned bounding box in world space. More...

`#include <openvdb/tools/RayTracer.h>`

Inheritance diagram for PositionShader< GridT, SamplerType >:

## Public Types

using | RayT = math::Ray<Real>

## Public Member Functions

| PositionShader (const math::BBox< Vec3R > &bbox, const GridT &grid)
| PositionShader (const PositionShader &)=default
| ~PositionShader () override=default
Film::RGBA | operator() (const Vec3R &xyz, const Vec3R &, const Vec3R &) const override
| Defines the interface of the virtual function that returns a RGB color.
BaseShader * | copy () const override

## Detailed Description

template<typename GridT = Film::RGBA, typename SamplerType = tools::PointSampler>
class openvdb::v11_0::tools::PositionShader< GridT, SamplerType >

Color shader that treats position (x, y, z) as an RGB color in a cube defined from an axis-aligned bounding box in world space.

The color can either be constant (if GridT = Film::RGBA which is the default) or defined in a separate Vec3 color grid. Use SamplerType to define the order of interpolation (default is zero order, i.e. closes-point).

## Member Typedef Documentation

## RayT

using RayT = math::Ray<Real>

inherited

## Constructor & Destructor Documentation

## PositionShader() [1/2]

template<typename GridT = Film::RGBA, typename SamplerType = tools::PointSampler>

PositionShader | ( | const math::BBox< Vec3R > & | bbox,
|  | const GridT & | grid )

inline

## PositionShader() [2/2]

template<typename GridT = Film::RGBA, typename SamplerType = tools::PointSampler>

PositionShader | ( | const PositionShader< GridT, SamplerType > & |  | ) |

default

## ~PositionShader()

template<typename GridT = Film::RGBA, typename SamplerType = tools::PointSampler>

~PositionShader | ( |  | ) |

overridedefault

## Member Function Documentation

## copy()

template<typename GridT = Film::RGBA, typename SamplerType = tools::PointSampler>

BaseShader * copy | ( |  | ) | const

inlineoverridevirtual

Implements BaseShader.

## operator()()

template<typename GridT = Film::RGBA, typename SamplerType = tools::PointSampler>

Film::RGBA operator() | ( | const Vec3R & | xyz,
|  | const Vec3R & | nml,
|  | const Vec3R & | dir ) const

inlineoverridevirtual

Defines the interface of the virtual function that returns a RGB color.

Parameters

  xyz | World position of the intersection point.
  nml | Normal in world space at the intersection point.
  dir | Direction of the ray in world space.

Implements BaseShader.