From ed2ff677f1977d2c163322ce9e7a55f0740d1f1a Mon Sep 17 00:00:00 2001 From: metamuffin Date: Sun, 5 Jun 2022 17:19:53 +0200 Subject: thing --- src/pattern.rs | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'src/pattern.rs') diff --git a/src/pattern.rs b/src/pattern.rs index ba9899e..042d0be 100644 --- a/src/pattern.rs +++ b/src/pattern.rs @@ -16,16 +16,15 @@ impl Sample for Rainbow { pub struct Sequence(pub Vec); impl Sample for Sequence { fn sample(&mut self, x: f64, _y: f64) -> Color { - self.0[(x * self.0.len() as f64).floor() as usize % self.0.len()] + self.0[x.rem_euclid(self.0.len() as f64) as usize] } } pub struct Gradient(pub Vec); impl Sample for Gradient { fn sample(&mut self, x: f64, _y: f64) -> Color { - let index = x * self.0.len() as f64; - let index_int = index.floor() as usize; - let index_error = index % 1.0; + let index_int = x.floor() as usize; + let index_error = x % 1.0; let a = self.0[index_int % self.0.len()]; let b = self.0[(index_int + 1) % self.0.len()]; Color::mix(a, b, index_error) -- cgit v1.2.3-70-g09d2