diff options
Diffstat (limited to 'src/main.rs')
| -rw-r--r-- | src/main.rs | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/main.rs b/src/main.rs index f3838a5..c7cf4f0 100644 --- a/src/main.rs +++ b/src/main.rs @@ -2,11 +2,13 @@ pub mod editor; pub mod grid; pub mod map_data; pub mod math; +pub mod svg; pub mod tool; pub mod transform; use editor::Editor; use raylib::prelude::*; +use svg::DrawSVG; use transform::Transform; fn main() { @@ -15,6 +17,8 @@ fn main() { let mut editor = Editor::new(); + let test_svg = svg::read_svg_file("drawing.svg").expect("Could not load svg file"); + let mut transform = Transform::new(); let mut last_mouse_pos = rl.get_mouse_position(); while !rl.window_should_close() { @@ -29,10 +33,10 @@ fn main() { let mouse_wheel_move = rl.get_mouse_wheel_move(); if mouse_wheel_move != 0 { // Zoom in for positive and zoom out for negative mouse wheel rotations. - let factor = if mouse_wheel_move > 0 { 1.2 } else { 1. / 1.2 }; + let scale_factor = if mouse_wheel_move > 0 { 1.2 } else { 1. / 1.2 }; transform.try_zoom( rl.get_mouse_position().into(), - mouse_wheel_move.abs() as f32 * factor, + mouse_wheel_move.abs() as f32 * scale_factor, ); } @@ -47,6 +51,12 @@ fn main() { d.clear_background(Color::BLACK); grid::draw_grid(&mut d, screen_width, screen_height, &transform); + d.draw_svg( + &test_svg, + transform.pixels_per_m(), + transform.translation_px(), + ); + editor.draw_tools(&mut d, &transform); } } |
