diff options
Diffstat (limited to 'src/sim/entity/mod.rs')
| -rw-r--r-- | src/sim/entity/mod.rs | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/sim/entity/mod.rs b/src/sim/entity/mod.rs index 59479a2..61f9d84 100644 --- a/src/sim/entity/mod.rs +++ b/src/sim/entity/mod.rs @@ -34,6 +34,18 @@ impl EntityCells { .fold(0.0, |acc, cur| acc + cur.material.def().density as f32) * MASS_SCALING } + + pub fn flip_x(&mut self) { + let mut new_cells = Vec::with_capacity(self.cells.len()); + for y in 0..self.size.y { + for rx in 0..self.size.x { + let x = self.size.x - rx - 1; + new_cells.push(self.get_cell_at_local_position(IVec2::new(x, y))); + } + } + + self.cells = new_cells; + } } impl Marchable for EntityCells { |
