diff options
author | 2023-09-07 05:51:39 +0200 | |
---|---|---|
committer | 2023-09-07 05:51:39 +0200 | |
commit | 09965b686ea6bf82e6c13ed5331bbeb059848e4f (patch) | |
tree | f19bfc7558c874c981ddb7d8a2046858bd04a6b8 /tiny_skia | |
parent | 1f263051b6c2d2f2a02633d8a6277c772ae8e7f9 (diff) | |
download | iced-09965b686ea6bf82e6c13ed5331bbeb059848e4f.tar.gz iced-09965b686ea6bf82e6c13ed5331bbeb059848e4f.tar.bz2 iced-09965b686ea6bf82e6c13ed5331bbeb059848e4f.zip |
Make `scale` methods in `Frame` generic over `f32` and `Vector`
Diffstat (limited to 'tiny_skia')
-rw-r--r-- | tiny_skia/src/geometry.rs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/tiny_skia/src/geometry.rs b/tiny_skia/src/geometry.rs index ced5b408..1df5aa18 100644 --- a/tiny_skia/src/geometry.rs +++ b/tiny_skia/src/geometry.rs @@ -154,11 +154,15 @@ impl Frame { .pre_concat(tiny_skia::Transform::from_rotate(angle.to_degrees())); } - pub fn scale(&mut self, scale: f32) { + pub fn scale(&mut self, scale: impl Into<f32>) { + let scale = scale.into(); + self.scale_nonuniform(Vector { x: scale, y: scale }); } - pub fn scale_nonuniform(&mut self, scale: Vector) { + pub fn scale_nonuniform(&mut self, scale: impl Into<Vector>) { + let scale = scale.into(); + self.transform = self.transform.pre_scale(scale.x, scale.y); } |