pub fn rejoin_on_axis(&mut self, p0: &Point3<i32>, p1: &Point3<i32>) {
        let axis = Axis::from_adjacent_coords(p0, p1).unwrap();
        let mut f0 = self
            .atoms
            .get(p0.coords)
            .map_or_else(|| Face::empty(axis), |atom| Face::new(atom.to_set(), axis));
        let mut f1 = self.atoms.get(p1.coords).map_or_else(
            || Face::empty(axis.opposite()),
            |atom| Face::new(atom.to_set(), axis.opposite()),
        );

        f0.join(&mut f1);

        if let Some(c0) = self.hulls.get_mut(p0.coords) {
            c0.exterior_mut().set_face(f0);
        }

        if let Some(c1) = self.hulls.get_mut(p1.coords) {
            c1.exterior_mut().set_face(f1);
        }
    }
/// Recalculate the join on a specific axis between two cells in this map.
Recalculate the join on a specific axis between two cells in this map.
Recalculate the join on a specific axis between two cells in this map .
pub fn rejoin_on_axis(&mut self, p0: &Point3<i32>, p1: &Point3<i32>) {
        let axis = Axis::from_adjacent_coords(p0, p1).unwrap();
        let mut f0 = self
            .atoms
            .get(p0.coords)
            .map_or_else(|| Face::empty(axis), |atom| Face::new(atom.to_set(), axis));
        let mut f1 = self.atoms.get(p1.coords).map_or_else(
            || Face::empty(axis.opposite()),
            |atom| Face::new(atom.to_set(), axis.opposite()),
        );
        f0.join(&mut f1);
        if let Some(c0) = self.hulls.get_mut(p0.coords) {
            c0.exterior_mut().set_face(f0);
        }
        if let Some(c1) = self.hulls.get_mut(p1.coords) {
            c1.exterior_mut().set_face(f1);
        }
    }
pub fn rejoin_on_axis ( & mut self , p0 : & Point3 < i32 > , p1 : & Point3 < i32 > ) { let axis = Axis :: from_adjacent_coords ( p0 , p1 ) . unwrap ( ) ; let mut f0 = self . atoms . get ( p0 . coords ) . map_or_else ( | | Face :: empty ( axis ) , | atom | Face :: new ( atom . to_set ( ) , axis ) ) ; let mut f1 = self . atoms . get ( p1 . coords ) . map_or_else ( | | Face :: empty ( axis . opposite ( ) ) , | atom | Face :: new ( atom . to_set ( ) , axis . opposite ( ) ) , ) ; f0 . join ( & mut f1 ) ; if let Some ( c0 ) = self . hulls . get_mut ( p0 . coords ) { c0 . exterior_mut ( ) . set_face ( f0 ) ; } if let Some ( c1 ) = self . hulls . get_mut ( p1 . coords ) { c1 . exterior_mut ( ) . set_face ( f1 ) ; } }
Recalculate the join on a specific axis between two cells in this map.
Recalculate the join on a specific axis between two cells in this map .
&mut self
p0
&Point3<i32>
p1
&Point3<i32>
&mut self
p0
&Point3<i32>
p1
&Point3<i32>