mirror of
https://github.com/hannobraun/Fornjot
synced 2025-02-26 17:15:52 +00:00
Prevent write access to faces of Shape
This commit is contained in:
parent
a932ce5fe8
commit
4d5a279f71
@ -10,12 +10,11 @@ use super::{
|
|||||||
};
|
};
|
||||||
|
|
||||||
/// The faces of a shape
|
/// The faces of a shape
|
||||||
#[derive(Clone, Debug, Eq, PartialEq, Hash, Ord, PartialOrd)]
|
pub struct Faces<'r> {
|
||||||
pub struct Faces {
|
pub(super) faces: &'r mut FacesInner,
|
||||||
pub(super) faces: FacesInner,
|
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Faces {
|
impl Faces<'_> {
|
||||||
/// Add a face to the shape
|
/// Add a face to the shape
|
||||||
pub fn add(&mut self, face: Face) -> Handle<Face> {
|
pub fn add(&mut self, face: Face) -> Handle<Face> {
|
||||||
self.faces.push(face.clone());
|
self.faces.push(face.clone());
|
||||||
@ -39,7 +38,7 @@ impl Faces {
|
|||||||
out: &mut Vec<Triangle<3>>,
|
out: &mut Vec<Triangle<3>>,
|
||||||
debug_info: &mut DebugInfo,
|
debug_info: &mut DebugInfo,
|
||||||
) {
|
) {
|
||||||
for face in &self.faces {
|
for face in &*self.faces {
|
||||||
face.triangles(tolerance, out, debug_info);
|
face.triangles(tolerance, out, debug_info);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -29,7 +29,7 @@ pub struct Shape {
|
|||||||
|
|
||||||
vertices: VerticesInner,
|
vertices: VerticesInner,
|
||||||
cycles: CyclesInner,
|
cycles: CyclesInner,
|
||||||
faces: Faces,
|
faces: FacesInner,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Shape {
|
impl Shape {
|
||||||
@ -43,7 +43,7 @@ impl Shape {
|
|||||||
|
|
||||||
vertices: VerticesInner::new(),
|
vertices: VerticesInner::new(),
|
||||||
cycles: CyclesInner::new(),
|
cycles: CyclesInner::new(),
|
||||||
faces: Faces { faces: Vec::new() },
|
faces: FacesInner::new(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -83,8 +83,10 @@ impl Shape {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Access the shape's faces
|
/// Access the shape's faces
|
||||||
pub fn faces(&mut self) -> &mut Faces {
|
pub fn faces(&mut self) -> Faces {
|
||||||
&mut self.faces
|
Faces {
|
||||||
|
faces: &mut self.faces,
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user