From 0a6122efbbdea974d963e167db1d660c81ea16e7 Mon Sep 17 00:00:00 2001 From: metamuffin Date: Mon, 17 Oct 2022 22:17:24 +0200 Subject: a --- src/tiling.rs | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 src/tiling.rs (limited to 'src/tiling.rs') diff --git a/src/tiling.rs b/src/tiling.rs new file mode 100644 index 0000000..8ab7fc3 --- /dev/null +++ b/src/tiling.rs @@ -0,0 +1,27 @@ +use std::{fs::File, io::Read}; + +use log::info; + +use crate::render::Renderer; + +pub struct Tiler { + renderer: Renderer, +} + +impl Tiler { + pub fn new(renderer: Renderer) -> Self { + Self { renderer } + } + pub fn get_tile(&self, z: isize, x: isize, y: isize) -> Vec { + info!("generating tile (zoom={z}, x={x}, y={z})"); + let segment = self.renderer.render_segment(x, y); + segment + .save(format!("tiles/{},{},{}.png", z, x, y)) + .unwrap(); + + let mut f = File::open(format!("tiles/{},{},{}.png", z, x, y)).unwrap(); + let mut buf = Vec::new(); + f.read_to_end(&mut buf).unwrap(); + buf + } +} -- cgit v1.2.3-70-g09d2