MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
MayaFlux::Kinesis::Lattice1D Struct Reference

A regular subdivision of an AABB1D into a number of cells. More...

#include <Lattice.hpp>

+ Collaboration diagram for MayaFlux::Kinesis::Lattice1D:

Public Member Functions

uint32_t cell_at (double p) const noexcept
 Cell containing a value, clamped to the lattice.
 
double cell_center (uint32_t c) const noexcept
 Position of a cell's centre.
 
size_t cell_count () const noexcept
 Total cell count.
 
double cell_size () const noexcept
 Width of one cell.
 
size_t corner_count () const noexcept
 Corner count, one greater than the cell count.
 
double corner_position (uint32_t c) const noexcept
 Position of a lattice corner.
 
bool in_bounds (uint32_t c) const noexcept
 Whether a cell coordinate lies inside the lattice.
 
size_t index (uint32_t c) const noexcept
 Linear index of a cell, which is its coordinate.
 
Lattice1D resampled (uint32_t res) const noexcept
 A lattice over the same bounds at a different resolution.
 

Public Attributes

AABB1D bounds { .min = -1.0, .max = 1.0 }
 Continuous extent subdivided.
 
uint32_t resolution { 1U }
 Cell count. Zero is invalid.
 

Detailed Description

A regular subdivision of an AABB1D into a number of cells.

One dimensional sibling of Lattice2D and Lattice3D, in double precision. Turns a scalar into a symbol: cell_at maps a value to the cell that holds it, so a SymbolicTrajectory<Lattice1D, uint32_t> observes a scalar stream the way the 2D and 3D forms observe a moving point. Indexing is the cell coordinate itself.

Definition at line 227 of file Lattice.hpp.


The documentation for this struct was generated from the following file: