From: Ian Jackson Date: Sat, 29 Oct 2022 19:44:29 +0000 (+0100) Subject: settlings wip X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=commitdiff_plain;h=c344e724ca52fdff0c3f9a6b94d030c1081b6b6f;p=z3-treefoil settlings wip --- diff --git a/src/bin/settlings.rs b/src/bin/settlings.rs new file mode 100644 index 0000000..7f9bb74 --- /dev/null +++ b/src/bin/settlings.rs @@ -0,0 +1,43 @@ + +use z3_treefoil::*; + +fn main() -> io::Result<()> { + for shape in read_vertices() { + + + + let has_all_corners = + iter::repeat([0,MAX].into_iter()) + .take(DIM) + .multi_cartesian_product() + .all(|need| shape.iter().any(|got| &got[..]==need)); + + if !has_all_corners { continue } + + if !has_all_corners { continue } + + let middle_vertices = + iter::repeat([1,2].into_iter()) + .take(DIM) + .multi_cartesian_product() + .filter(|need| shape.iter().any(|got| &got[..]==need)) + .count(); + + print!("{} ", middle_vertices); + + let mut edges_middlish = [0; 3]; + + for ab in shape_edges(&shape) { + let middles = ab.iter().filter(|p| point_middle(p)).count(); + edges_middlish[middles] += 1; + } + + for em in &edges_middlish { + print!("{:2} ", em); + } + + print_shape(&shape)?; + } + + Ok(()) +}