1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
use crate::{
insert::Insert,
objects::{Cycle, Objects},
services::Service,
storage::Handle,
};
use super::Reverse;
impl Reverse for Handle<Cycle> {
fn reverse(self, objects: &mut Service<Objects>) -> Self {
let mut edges = self
.half_edges()
.cloned()
.map(|edge| edge.reverse(objects))
.collect::<Vec<_>>();
edges.reverse();
Cycle::new(edges).insert(objects)
}
}