# HG changeset patch # User unc0rr # Date 1541187022 -3600 # Node ID b2feb190e4bc5f82295fc884d3e9ff2c536eb646 # Parent d0b0d61b7d5eea3625d8e7b8b938e842ee29fbe7 Move flip and mirror to outline methods diff -r d0b0d61b7d5e -r b2feb190e4bc rust/landgen/src/outline.rs --- a/rust/landgen/src/outline.rs Fri Nov 02 21:30:48 2018 +0300 +++ b/rust/landgen/src/outline.rs Fri Nov 02 20:30:22 2018 +0100 @@ -191,6 +191,17 @@ index: 0, } } + + pub fn mirror(&mut self) { + self.iter_mut() + .for_each(|p| p.x = self.size.width() - 1 - p.x); + } + + pub fn flip(&mut self) { + points + .iter_mut() + .for_each(|p| p.y = self.size.height() - 1 - p.y); + } } struct OutlineSegmentsIterator<'a> { diff -r d0b0d61b7d5e -r b2feb190e4bc rust/landgen/src/template_based.rs --- a/rust/landgen/src/template_based.rs Fri Nov 02 21:30:48 2018 +0300 +++ b/rust/landgen/src/template_based.rs Fri Nov 02 20:30:22 2018 +0100 @@ -32,9 +32,7 @@ if self.outline_template.can_mirror { if let Some(b) = random_numbers.next() { if b & 1 != 0 { - points - .iter_mut() - .for_each(|p| p.x = land.width() as i32 - 1 - p.x); + points.mirror(); } } } @@ -43,9 +41,7 @@ if self.outline_template.can_flip { if let Some(b) = random_numbers.next() { if b & 1 != 0 { - points - .iter_mut() - .for_each(|p| p.y = land.height() as i32 - 1 - p.y); + points.flip(); } } }