summaryrefslogtreecommitdiff
path: root/racer-tracer/src/image.rs
diff options
context:
space:
mode:
Diffstat (limited to 'racer-tracer/src/image.rs')
-rw-r--r--racer-tracer/src/image.rs65
1 files changed, 1 insertions, 64 deletions
diff --git a/racer-tracer/src/image.rs b/racer-tracer/src/image.rs
index 1df4cc5..094b1f8 100644
--- a/racer-tracer/src/image.rs
+++ b/racer-tracer/src/image.rs
@@ -1,3 +1,4 @@
+#[derive(Clone)]
pub struct Image {
pub aspect_ratio: f64,
pub width: usize,
@@ -14,20 +15,6 @@ impl Image {
}
}
-// TODO: SubImage and Image can probably be the same struct
-impl From<&Image> for SubImage {
- fn from(image: &Image) -> Self {
- SubImage {
- x: 0,
- y: 0,
- width: image.width,
- height: image.height,
- screen_width: image.width,
- screen_height: image.height,
- }
- }
-}
-
pub struct SubImage {
pub x: usize,
pub y: usize,
@@ -36,53 +23,3 @@ pub struct SubImage {
pub width: usize,
pub height: usize,
}
-
-pub trait QuadSplit {
- fn quad_split(&self) -> [SubImage; 4];
-}
-
-impl QuadSplit for SubImage {
- fn quad_split(&self) -> [SubImage; 4] {
- let half_w = self.width / 2;
- let half_h = self.height / 2;
-
- [
- // Top Left
- SubImage {
- x: self.x,
- y: self.y,
- width: half_w,
- height: half_h,
- screen_width: self.screen_width,
- screen_height: self.screen_height,
- },
- // Top Right
- SubImage {
- x: self.x + half_w,
- y: self.y,
- width: half_w,
- height: half_h,
- screen_width: self.screen_width,
- screen_height: self.screen_height,
- },
- // Bottom Left
- SubImage {
- x: self.x,
- y: self.y + half_h,
- width: half_w,
- height: half_h,
- screen_width: self.screen_width,
- screen_height: self.screen_height,
- },
- // Bottom Right
- SubImage {
- x: self.x + half_w,
- y: self.y + half_h,
- width: half_w,
- height: half_h,
- screen_width: self.screen_width,
- screen_height: self.screen_height,
- },
- ]
- }
-}