From 9e91990a64a8f07e867334a5740ec713bd6a7cde Mon Sep 17 00:00:00 2001 From: Yuri Astrakhan Date: Sun, 9 Feb 2025 02:17:05 -0500 Subject: [PATCH] expose camera and debug mode api --- platform/rust/src/lib.rs | 1 + platform/rust/src/map_renderer.rs | 10 +++++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/platform/rust/src/lib.rs b/platform/rust/src/lib.rs index 009644ff2fe..aeaf1735689 100644 --- a/platform/rust/src/lib.rs +++ b/platform/rust/src/lib.rs @@ -4,6 +4,7 @@ mod map_renderer; mod tile_server_options; +pub use ffi::MapDebugOptions; pub use map_renderer::{Image, ImageRenderer, ImageRendererOptions, Static, Tile}; pub use tile_server_options::TileServerOptions; diff --git a/platform/rust/src/map_renderer.rs b/platform/rust/src/map_renderer.rs index 02cfbd4d2b5..e32d036b48f 100644 --- a/platform/rust/src/map_renderer.rs +++ b/platform/rust/src/map_renderer.rs @@ -3,7 +3,7 @@ use std::path::Path; use cxx::{CxxString, UniquePtr}; -use crate::ffi; +use crate::{ffi, MapDebugOptions}; use crate::ffi::MapMode; /// A rendered map image. @@ -114,6 +114,14 @@ impl ImageRenderer { let path = path.as_ref().to_str().expect("Path is not valid UTF-8"); ffi::MapRenderer_setStyleUrl(self.0.pin_mut(), &format!("file://{path}")); } + + pub fn set_camera(&mut self, lat: f64, lon: f64, zoom: f64, bearing: f64, pitch: f64) { + ffi::MapRenderer_setCamera(self.0.pin_mut(), lat, lon, zoom, bearing, pitch); + } + + pub fn set_debug_flags(&mut self, flags: MapDebugOptions) { + ffi::MapRenderer_setDebugFlags(self.0.pin_mut(), flags); + } } impl ImageRenderer {