diff --git a/src/bin/wireframe/meshes.rs b/src/bin/wireframe/meshes.rs index e0e1798..c439334 100644 --- a/src/bin/wireframe/meshes.rs +++ b/src/bin/wireframe/meshes.rs @@ -37,10 +37,10 @@ pub struct Mesh { } impl Mesh { - pub fn new_list(device: &wgpu::Device, attrs: Attrs, tris: Vec<(Vec3, Vec3, Vec3)>) -> Self { + pub fn new_list(device: &wgpu::Device, attrs: Attrs, tris: Vec<[Vec3; 3]>) -> Self { let data: Vec = tris .into_iter() - .flat_map(|(a, b, c)| { + .flat_map(|[a, b, c]| { let n = (b - a).cross(c - a).normalize(); [ Vertex { diff --git a/src/bin/wireframe/scene.rs b/src/bin/wireframe/scene.rs index d7961d5..009a9aa 100644 --- a/src/bin/wireframe/scene.rs +++ b/src/bin/wireframe/scene.rs @@ -17,7 +17,7 @@ pub struct FancyLine { pub pts: Vec, } -pub type Face = (Vec3, Vec3, Vec3); +pub type Face = [Vec3; 3]; pub enum Mesh { List(Vec), @@ -166,12 +166,12 @@ impl Renderable for Tube { let inner = (0..sides).flat_map(|k| { let a = r1 * dir(k); let b = r1 * dir(k + 1); - [(a - side, b - side, a + side), (b - side, b + side, a + side)] + [[a - side, b - side, a + side], [b - side, b + side, a + side]] }); let outer = (0..sides).flat_map(|k| { let a = r2 * dir(k); let b = r2 * dir(k + 1); - [(a - side, b - side, a + side), (b - side, b + side, a + side)] + [[a - side, b - side, a + side], [b - side, b + side, a + side]] }); let cap = (0..sides).flat_map(|k| { let a = r1 * dir(k); @@ -179,10 +179,10 @@ impl Renderable for Tube { let c = r2 * dir(k + 1); let d = r2 * dir(k); [ - (a - side, b - side, c - side), - (a - side, c - side, d - side), - (a + side, b + side, c + side), - (a + side, c + side, d + side), + [a - side, b - side, c - side], + [a - side, c - side, d - side], + [a + side, b + side, c + side], + [a + side, c + side, d + side], ] }); chain!(inner, outer, cap).collect()