OpenVDB 11.0.0

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 | ( |  | ) |
| override default

## Member Function Documentation

## ◆ copy()

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

BaseShader * copy | ( |  | ) | const
| inline override virtual

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
| inline override virtual

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.