Skip to main content

geonative_processing/raster/
mod.rs

1//! # raster
2//!
3//! Raster operations on the `core::raster` IR — the operations Zebflow's
4//! tile server composes to ingest user uploads and serve tiles.
5//!
6//! ## Modules
7//!
8//! - [`pixel`] — raw byte ↔ `f64` codec per
9//!   [`PixelType`](geonative_core::raster::PixelType). The bridge that lets
10//!   every kernel work in `f64` regardless of source dtype.
11//! - [`resample`] — six resampling kernels (Nearest / Bilinear / Cubic /
12//!   Lanczos / Average / Mode) + tile-to-tile resize. The foundation
13//!   everything else builds on.
14//! - [`pyramid`] — generates overview levels via repeated downsampling.
15//!   Used by the writer to auto-build COG pyramids.
16//! - [`warp`] — reproject a `RasterTile` to a different CRS via
17//!   `geonative-proj` + a resampling kernel. The piece that lets
18//!   `convert --to-crs` work for raster.
19
20pub mod pixel;
21pub mod pyramid;
22pub mod resample;
23pub mod warp;
24
25pub use pyramid::{build_overviews, PyramidOptions};
26pub use resample::{resample_tile, sample};
27pub use warp::{compute_target_grid, warp_tile, WarpOptions};