Builtin Library
README.md
core.raster.resolve (procNode)
Fold a layer of fixed-point changes into the layer they change: every cell of delta holds a whole number of 1/fixed units, added to layer; delta is then zero.
Built from the gather kernel reading delta's words as 32-bit integers, math.to_float, and a core.raster.blend pass that adds them, so every tile that holds a cell takes the result; delta is then written zero in every place it is stored. Every cell the tiles hold, the cells past the field included, takes its own change.
Inputs
raster(Raster). The raster resolved.layer(String). Default"height". The layer the changes are added to.delta(String). Default"". The layer holding the changes as 32-bit integers.fixed(Number). Default65536. At least 1. How many integer units make one unit of the layer.
Outputs
raster: the raster with the changes added anddeltazero.
Example
local raster = g.core.raster.new({ size = { x = 8, z = 8 }, resolution = 1, layers = { "height", "dig" } })
local resolved = g.core.raster.resolve({ raster = raster, layer = "height", delta = "dig", fixed = 65536 })
local total = g.core.raster.reduce({ raster = resolved, layer = "height", op = "sum" })
dig holds no change, so height stays 0 and total is 0.