aboutsummaryrefslogtreecommitdiff
path: root/evc/src/pixel.rs
diff options
context:
space:
mode:
authormetamuffin <metamuffin@disroot.org>2022-12-05 22:27:49 +0100
committermetamuffin <metamuffin@disroot.org>2022-12-05 22:27:49 +0100
commit4b12b320d48abf90a6f524a226604ad738e5684f (patch)
tree84aff2f65bd0714ad770ea8928ad9fabfa7263ea /evc/src/pixel.rs
parent8e4ec0943973b96addbe01f4c02f91cf04d081a7 (diff)
downloadvideo-codec-experiments-4b12b320d48abf90a6f524a226604ad738e5684f.tar
video-codec-experiments-4b12b320d48abf90a6f524a226604ad738e5684f.tar.bz2
video-codec-experiments-4b12b320d48abf90a6f524a226604ad738e5684f.tar.zst
even more code
Diffstat (limited to 'evc/src/pixel.rs')
-rw-r--r--evc/src/pixel.rs11
1 files changed, 11 insertions, 0 deletions
diff --git a/evc/src/pixel.rs b/evc/src/pixel.rs
index adeaf84..559dedc 100644
--- a/evc/src/pixel.rs
+++ b/evc/src/pixel.rs
@@ -17,3 +17,14 @@ impl Ser for Pixel {
Ok(Self { r, g, b })
}
}
+
+impl Pixel {
+ pub fn distance(a: Pixel, b: Pixel) -> f64 {
+ let (rd, gd, bd) = (
+ a.r.abs_diff(b.r) as f64,
+ a.r.abs_diff(b.r) as f64,
+ a.r.abs_diff(b.r) as f64,
+ );
+ (rd * rd + gd * gd + bd * bd).sqrt()
+ }
+}