MayaFlux 0.5.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ LatticeValueClass

enum class MayaFlux::Kinesis::LatticeValueClass : uint8_t
strong

What the values sampled over a lattice mean geometrically.

A description of the data, not of any consumer. A fog volume's values are densities: nonnegative, zero outside the medium, meaningful only in aggregate along a ray. A level set's are signed distances whose zero crossing is a surface and whose gradient is a normal. A staggered field's components are sampled on cell faces rather than at the centre, which is a placement property rather than a meaning one, but it travels in this enumeration because every interchange format that carries the distinction carries it here.

Unknown is the honest default. A field left Unknown is a plain array of numbers over a lattice, which most fields are, and nothing downstream should infer otherwise from its name.

The enumerators correspond one to one with OpenVDB's GridClass and with the tokens USD's UsdVol schema accepts for fieldClass, so an interchange writer maps them without a lookup table and without loss.

Enumerator
Unknown 

Plain numeric values with no further structure claimed.

LevelSet 

Signed distance to a surface at the zero crossing.

FogVolume 

Density of a participating medium, zero outside it.

Staggered 

Vector components sampled on cell faces, not centres.

Definition at line 26 of file LatticeSemantics.hpp.

26 : uint8_t {
27 Unknown, ///< Plain numeric values with no further structure claimed.
28 LevelSet, ///< Signed distance to a surface at the zero crossing.
29 FogVolume, ///< Density of a participating medium, zero outside it.
30 Staggered, ///< Vector components sampled on cell faces, not centres.
31};
@ FogVolume
Density of a participating medium, zero outside it.
@ Staggered
Vector components sampled on cell faces, not centres.
@ LevelSet
Signed distance to a surface at the zero crossing.