diff --git a/src/main.rs b/src/main.rs index b97f251..d814264 100644 --- a/src/main.rs +++ b/src/main.rs @@ -5,6 +5,7 @@ use turtle::{defaults, Turtle}; #[allow(dead_code)] fn polygon(corners_number: u32, steps_count: u32, output_path: &'static str) { let mut turtle = Turtle::new(); + let default_pos = defaults::position(); let side_length = turtle.step_length() * steps_count; diff --git a/src/turtle.rs b/src/turtle.rs index 55c1871..0a8e987 100644 --- a/src/turtle.rs +++ b/src/turtle.rs @@ -3,6 +3,7 @@ use imageproc::{drawing}; use imageproc::image::{ImageBuffer, ImageResult, Rgb}; use std::path::Path; +use std::fmt; type ImgBufU8 = ImageBuffer, Vec>; type Colour = Rgb; @@ -50,6 +51,17 @@ pub struct Turtle { angle: f64, } +impl fmt::Debug for Turtle { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + f.debug_struct("Turtle") + .field("colour", &self.colour) + .field("pos", &self.pos) + .field("step_length", &self.step_length) + .field("angle", &self.angle) + .finish() + } +} + impl Turtle { pub fn new() -> Self { let mut buf = ImageBuffer::new(defaults::WIDTH, defaults::HEIGHT);