From 46cd0891d25c2dd48e182747d8c1f9579b066490 Mon Sep 17 00:00:00 2001 From: Héctor Ramón Jiménez Date: Tue, 14 Apr 2020 06:54:12 +0200 Subject: Implement `canvas::Path::circle` helper method --- examples/clock/src/main.rs | 4 +++- examples/solar_system/src/main.rs | 14 ++++---------- 2 files changed, 7 insertions(+), 11 deletions(-) (limited to 'examples') diff --git a/examples/clock/src/main.rs b/examples/clock/src/main.rs index 1379d3a6..dab91eab 100644 --- a/examples/clock/src/main.rs +++ b/examples/clock/src/main.rs @@ -95,11 +95,13 @@ impl From> for LocalTime { impl canvas::Drawable for LocalTime { fn draw(&self, frame: &mut canvas::Frame) { + use canvas::Path; + let center = frame.center(); let radius = frame.width().min(frame.height()) / 2.0; let offset = Vector::new(center.x, center.y); - let clock = canvas::Path::new(|path| path.circle(center, radius)); + let clock = Path::circle(center, radius); frame.fill(&clock, Color::from_rgb8(0x12, 0x93, 0xD8)); diff --git a/examples/solar_system/src/main.rs b/examples/solar_system/src/main.rs index 067f8ff2..bcd1dc71 100644 --- a/examples/solar_system/src/main.rs +++ b/examples/solar_system/src/main.rs @@ -141,8 +141,8 @@ impl canvas::Drawable for State { } }); - let sun = Path::new(|path| path.circle(center, Self::SUN_RADIUS)); - let orbit = Path::new(|path| path.circle(center, Self::ORBIT_RADIUS)); + let sun = Path::circle(center, Self::SUN_RADIUS); + let orbit = Path::circle(center, Self::ORBIT_RADIUS); frame.fill(&space, Color::BLACK); frame.fill(&stars, Color::WHITE); @@ -168,10 +168,7 @@ impl canvas::Drawable for State { ); frame.translate(Vector::new(Self::ORBIT_RADIUS, 0.0)); - let earth = Path::new(|path| { - path.circle(Point::ORIGIN, Self::EARTH_RADIUS) - }); - + let earth = Path::circle(Point::ORIGIN, Self::EARTH_RADIUS); let shadow = Path::rectangle( Point::new(0.0, -Self::EARTH_RADIUS), Size::new(Self::EARTH_RADIUS * 4.0, Self::EARTH_RADIUS * 2.0), @@ -186,10 +183,7 @@ impl canvas::Drawable for State { ); frame.translate(Vector::new(0.0, Self::MOON_DISTANCE)); - let moon = Path::new(|path| { - path.circle(Point::ORIGIN, Self::MOON_RADIUS) - }); - + let moon = Path::circle(Point::ORIGIN, Self::MOON_RADIUS); frame.fill(&moon, Color::WHITE); }); -- cgit