1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
use crate::{
objects::{HalfEdge, Objects},
storage::Handle,
validate::ValidationError,
};
use super::Reverse;
impl Reverse for Handle<HalfEdge> {
fn reverse(self, objects: &Objects) -> Result<Self, ValidationError> {
let vertices = {
let [a, b] = self.vertices().clone();
[b, a]
};
Ok(objects
.half_edges
.insert(HalfEdge::new(vertices, self.global_form().clone()))?)
}
}