use rstiff::GeoTiff;
use std::error::Error;
use std::path::Path;
fn main() -> Result<(), Box<dyn Error>> {
let p = Path::new("./data/Hawaiin_part.tif");
if !p.exists() {
println!("Please provide ./data/Hawaiin_part.tif to run this example.");
return Ok(());
}
let tif = GeoTiff::read(p)?;
println!(
"Read GeoTiff: {:?}, Size: {:?}, Type: {:?}",
p,
tif.data.dim(),
tif.original_type
);
let target_epsg = 32604;
println!("Reprojecting to EPSG:{}...", target_epsg);
let tif_projected = tif.reproject(target_epsg)?;
let output_path = Path::new("./data/reproject_example.tif");
tif_projected.write(output_path)?;
println!("Saved reprojected file to: {:?}", output_path);
Ok(())
}