template<typename RayT, typename CoordT = Coord, int Dim = 1>
class nanovdb::DDA< RayT, CoordT, Dim >
A Digital Differential Analyzer. Unlike HDDA (defined above) this DDA uses a fixed step-size defined by the template parameter Dim!
- Note
- The Ray template class is expected to have the following methods: test(time), t0(), t1(), invDir(), and operator()(time). See the example Ray class above for their definition.
Definition at line 210 of file HDDA.h.
template<typename RayT, typename CoordT = Coord, int Dim = 1>
Return the time (parameterized along the Ray) of the first hit of a tree node of size 2^Log2Dim.
This value is initialized to startTime or ray.t0() depending on the constructor used.
- Note
- Incurs no computational overhead.
Definition at line 293 of file HDDA.h.
template<typename RayT, typename CoordT = Coord, int Dim = 1>
Return the index coordinates of the next node or voxel intersected by the ray. If Log2Dim = 0 the return value is the actual signed coordinate of the voxel, else it is the origin of the corresponding VDB tree node or tile.
- Note
- Incurs no computational overhead.
Definition at line 286 of file HDDA.h.