diff --git a/apps/solidcraft-cli/tests/action_matrix.rs b/apps/solidcraft-cli/tests/action_matrix.rs index dbb1d94c..5ae35869 100644 --- a/apps/solidcraft-cli/tests/action_matrix.rs +++ b/apps/solidcraft-cli/tests/action_matrix.rs @@ -1051,6 +1051,18 @@ fn a_through_hole_into_a_shelled_box_rim() { ); } +/// #559: a 6 mm hole drilled at an angle through a 920 mm prism, its through-all tool nearly +/// 1.9 m long beside a thin bar it misses. The bar's cut came out empty: the tool filled too +/// little of its own box for the sampled shortcut, and the boolean's tolerances (from the +/// tool's length) were wider than the hole. +#[test] +fn an_oblique_through_hole_beside_a_thin_bar() { + reproduces( + Some("examples/regressions/oblique_cut_of_cylinder.json"), + json!([{"command": "solid.hole", "params": {"diameter": 6.0, "position": [296.66666666666663, -458.66666666666663, 848.7633333333333]}}]), + ); +} + #[test] fn a_hole_through_a_sheet_metal_base() { let mut c: Vec = rectangle(json!("XY"), [0., 0.], [60., 40.]).into(); diff --git a/crates/kernel/src/ops.rs b/crates/kernel/src/ops.rs index eb6016c4..635413e8 100644 --- a/crates/kernel/src/ops.rs +++ b/crates/kernel/src/ops.rs @@ -101,7 +101,12 @@ fn overlap( let bx = inner.bounds(); let s = bx.size(); let (mut n, mut hit) = (0usize, 0usize); - for i in 1..=2000 { + // A slender body lying across its box (a long hole tool drilled at an angle) fills + // little of it: the samples go on past the first 2000 until enough land inside. + for i in 1..=64_000 { + if i > 2000 && n >= 50 { + break; + } let p = bx.min + Vec3::new(s.x * halton(i, 2), s.y * halton(i, 3), s.z * halton(i, 5)); if !inner_i.contains(p) { continue; @@ -648,6 +653,61 @@ fn boolean_whole(a: &Body, b: &Body, op: BoolOp) -> Result> { let mut empty_votes = 0; let mut empty_diagnostics = crate::BooleanDiagnostics::default(); let keep: Vec> = a.split_keep().iter().chain(b.split_keep()).cloned().collect(); + // The tolerances below follow the larger body. Where the bodies meet in a region much + // smaller than that (a hole a few millimetres across drilled through a long part, whose tool + // is longer still), they are as coarse as the tool itself: its intersection curves are + // traced at a step wider than the hole, and the cut comes out empty or fails. When those + // tries fail, the same boolean is asked again at tolerances (and shifts) scaled to where the + // bodies meet. Its result is checked as the others are, and held to the retry guard. + // Bodies in several shells are retried a piece at a time (see [`boolean`]), where each + // piece gets this pass of its own. + let fine_tols: Vec = match &meshes { + (Some(ma), Some(mb)) if a.solid.boundaries().len() == 1 && b.solid.boundaries().len() == 1 => { + let (ba, bb) = (ma.bounds(), mb.bounds()); + let s = solidcraft_geom::Aabb3 { min: ba.min.max(bb.min), max: ba.max.min(bb.max) }.size(); + // The thinner operand's thickness (twice its volume over its area: a plate's + // thickness, a rod's radius) bounds what the tolerance must resolve as well. + let thickness = |m: &solidcraft_geom::Mesh| { + let x = m.measure(); + if x.area > 0.0 { 2.0 * x.volume.abs() / x.area } else { f64::INFINITY } + }; + let feature = s.x.min(s.y).min(s.z).min(thickness(ma)).min(thickness(mb)).max(size * 1e-4); + if feature > 0.0 && feature * 2e-3 < size * 2.5e-4 { vec![(feature * 2e-3).max(1e-6), (feature * 5e-4).max(1e-6)] } else { Vec::new() } + } + _ => Vec::new(), + }; + let fine = |last: &mut String| -> Option { + let feature = fine_tols.first().map(|t| t / 2e-3)?; + // Unshifted, then once shifted: each try at these tolerances costs many coarser ones. + for (attempt, j) in JITTER.iter().enumerate().take(2) { + let shift = mt::Vector3::new(j[0], j[1], j[2]) * (feature * 0.01); + for &tol in &fine_tols { + match truck_boolean(a, b, op, if attempt > 0 { Some(shift) } else { None }, tol) { + Ok((s, _)) if s.boundaries().is_empty() || s.face_iter().next().is_none() => *last = "empty result".into(), + Ok((s, h)) => match guard("boolean result", || recorded::truck_result(s, h, size, &keep, &counts)) { + Ok(body) => { + let (ok, v) = check(&body); + if ok { + let mut event = BooleanFallback::new(if attempt > 0 { + BooleanStrategy::ShiftedOperands + } else { + BooleanStrategy::RefinedTolerance + }); + event.translation_mm = Vec3::new(j[0], j[1], j[2]).len() * (feature * 0.01); + event.tolerance_mm = tol; + record(event); + return Some(body); + } + *last = format!("implausible result volume {v:.4}"); + } + Err(e) => *last = e.to_string(), + }, + Err(e) => *last = e.to_string(), + } + } + } + None + }; for (attempt, j) in JITTER.iter().enumerate() { let shift = mt::Vector3::new(j[0], j[1], j[2]) * (size * 0.01); for k in [2e-3, 5e-4] { @@ -693,6 +753,9 @@ fn boolean_whole(a: &Body, b: &Body, op: BoolOp) -> Result> { } } if empty_votes >= 2 && op != BoolOp::Union { + if let Some(body) = fine(&mut last) { + return Ok(Some(body)); + } merge(empty_diagnostics); return Ok(None); } @@ -750,6 +813,11 @@ fn boolean_whole(a: &Body, b: &Body, op: BoolOp) -> Result> { Err(e) => last = format!("{last}; nudged: {e}"), } } + // The tries at the meeting region's scale come last, after every strategy that answered + // before them, so a result any of those gave is kept as it was. + if let Some(body) = fine(&mut last) { + return Ok(Some(body)); + } match doubted { Some(r) => { let mut event = BooleanFallback::new(BooleanStrategy::UnverifiedShortcut); diff --git a/tests/action_matrix/baseline.json b/tests/action_matrix/baseline.json index a4728f80..6422fa7b 100644 --- a/tests/action_matrix/baseline.json +++ b/tests/action_matrix/baseline.json @@ -200,7 +200,7 @@ "Lid/F10:+x|F10:+z": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F10:+x|F10:-y": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F10:+x|F4:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Lid/F10:+y": "face.angle_plane !face.draft_neutral !face.extrude !face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", + "Lid/F10:+y": "face.angle_plane !face.draft_neutral !face.extrude face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", "Lid/F10:+y|F10:+z": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F10:+y|F1:+z#[F10:+y,F11:-y,F4:side:l6,F5:-x]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F10:+y|F4:side:l6#[F10:+y,F11:-y]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", @@ -209,7 +209,7 @@ "Lid/F10:+z": "face.angle_plane face.draft_neutral !face.extrude face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", "Lid/F10:+z|F10:-y": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F10:+z|F5:-x": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Lid/F10:-y": "face.angle_plane !face.draft_neutral !face.extrude !face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", + "Lid/F10:-y": "face.angle_plane !face.draft_neutral !face.extrude face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", "Lid/F10:-y|F1:+z#[F10:-y,F4:side:l5,F4:side:l6,F4:side:l8,F5:+x,F5:+y,F5:-x,F8:-y]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F10:-y|F4:side:l6#[F10:-y,F4:side:l5]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F10:-y|F4:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", @@ -219,7 +219,7 @@ "Lid/F11:+x|F11:+z": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F11:+x|F11:-y": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F11:+x|F4:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Lid/F11:+y": "face.angle_plane !face.draft_neutral !face.extrude !face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", + "Lid/F11:+y": "face.angle_plane !face.draft_neutral !face.extrude face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", "Lid/F11:+y|F11:+z": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F11:+y|F1:+z#[F11:+y,F1:+x,F1:+y,F1:-x,F1:-y,F2:blend:F1:+x|F1:+y,F2:blend:F1:+x|F1:-y,F2:blend:F1:+y|F1:-x,F2:blend:F1:-x|F1:-y,F4:side:l1,F4:side:l2,F4:side:l3,F4:side:l4,F4:side:l6,F4:side:l7,F4:side:l8,F5:+x,F5:-x,F5:-y,F6:+x,F6:+y,F6:-x,F6:-y,F7:+x,F7:-x,F9:+y]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F11:+y|F4:side:l6#[F11:+y,F4:side:l7]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", @@ -228,7 +228,7 @@ "Lid/F11:+z": "face.angle_plane face.draft_neutral !face.extrude face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", "Lid/F11:+z|F11:-y": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F11:+z|F5:-x": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Lid/F11:-y": "face.angle_plane !face.draft_neutral !face.extrude !face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", + "Lid/F11:-y": "face.angle_plane !face.draft_neutral !face.extrude face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", "Lid/F11:-y|F1:+z#[F10:+y,F11:-y,F4:side:l6,F5:-x]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F11:-y|F4:side:l6#[F10:+y,F11:-y]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F11:-y|F4:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", @@ -387,15 +387,15 @@ "Lid/F6:-y": "face.angle_plane !face.draft_neutral !face.extrude face.hole !face.offset_plane !face.press_pull face.shell !face.sketch", "Lid/F7:+x": "face.angle_plane !face.draft_neutral !face.extrude face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", "Lid/F7:-x": "face.angle_plane !face.draft_neutral !face.extrude face.hole !face.offset_plane !face.press_pull face.shell !face.sketch", - "Lid/F8:+y": "face.angle_plane !face.draft_neutral !face.extrude !face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", + "Lid/F8:+y": "face.angle_plane !face.draft_neutral !face.extrude face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", "Lid/F8:+y|F8:-x": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F8:+y|F9:+z#[F8:+y,F8:-x,F8:-y]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F8:-x": "face.angle_plane !face.draft_neutral !face.extrude face.hole !face.offset_plane !face.press_pull face.shell !face.sketch", "Lid/F8:-x|F8:-y": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F8:-x|F9:+z#[F8:+y,F8:-x,F8:-y]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Lid/F8:-y": "face.angle_plane !face.draft_neutral !face.extrude !face.hole !face.offset_plane !face.press_pull face.shell !face.sketch", + "Lid/F8:-y": "face.angle_plane !face.draft_neutral !face.extrude face.hole !face.offset_plane !face.press_pull face.shell !face.sketch", "Lid/F8:-y|F9:+z#[F8:+y,F8:-x,F8:-y]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Lid/F9:+y": "face.angle_plane !face.draft_neutral !face.extrude !face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", + "Lid/F9:+y": "face.angle_plane !face.draft_neutral !face.extrude face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", "Lid/F9:+y|F9:+z#[F9:+y,F9:-x,F9:-y]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F9:+y|F9:-x": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F9:+z#[F8:+y,F8:-x,F8:-y]": "face.angle_plane face.draft_neutral !face.extrude face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", @@ -404,7 +404,7 @@ "Lid/F9:+z#[F9:+y,F9:-x,F9:-y]|F9:-y": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F9:-x": "face.angle_plane !face.draft_neutral !face.extrude face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", "Lid/F9:-x|F9:-y": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Lid/F9:-y": "face.angle_plane !face.draft_neutral !face.extrude !face.hole !face.offset_plane !face.press_pull face.shell !face.sketch", + "Lid/F9:-y": "face.angle_plane !face.draft_neutral !face.extrude face.hole !face.offset_plane !face.press_pull face.shell !face.sketch", "Lid/body": "body.copy body.mirror body.move body.pattern", "Lid/v[F10:+x & F10:+y & F10:+z]": "vertex.plane_three_points vertex.point", "Lid/v[F10:+x & F10:+y & F4:top]": "vertex.plane_three_points vertex.point", @@ -718,7 +718,7 @@ "Body2/F3:-z|F4:side#2": "edge.chamfer edge.fillet edge.normal_plane edge.project", "Body2/F4:side#1": "curved.axis curved.tangent_plane", "Body2/F4:side#2": "curved.axis curved.tangent_plane", - "Body2/F6:blend:F3:+z|F3:-x": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body2/F6:blend:F3:+z|F3:-x": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body2/body": "body.copy body.mirror body.move body.pattern", "Body2/v[F3:+x & F3:+y & F3:+z]": "vertex.plane_three_points vertex.point", "Body2/v[F3:+x & F3:+y & F3:-z]": "vertex.plane_three_points vertex.point", @@ -846,7 +846,7 @@ "Body1/F1:+y|F1:+z": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F1:+y|F1:-x": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F1:+y|F1:-z": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F1:+z": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F1:+z": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F1:+z|F1:-x": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F1:+z|F1:-y": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F1:+z|F3:blend:F1:+z|F2:inner:F1:+x#[F1:+z]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", @@ -891,20 +891,20 @@ "Body1/F2:inner:F1:-z#[F5:rest:side:4,F5:rest:side:5,F5:rest:side:6,F5:rest:side:7]|F5:rest:side:5": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:inner:F1:-z#[F5:rest:side:4,F5:rest:side:5,F5:rest:side:6,F5:rest:side:7]|F5:rest:side:6": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:inner:F1:-z#[F5:rest:side:4,F5:rest:side:5,F5:rest:side:6,F5:rest:side:7]|F5:rest:side:7": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F3:blend:F1:+z|F2:inner:F1:+x#[F1:+z]": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F3:blend:F1:+z|F2:inner:F1:+x#[F1:+z]": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/F3:blend:F1:+z|F2:inner:F1:+x#[F1:+z]|F3:blend:F1:+z|F2:inner:F1:+y#[F1:+z]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F3:blend:F1:+z|F2:inner:F1:+x#[F1:+z]|F3:blend:F1:+z|F2:inner:F1:-y#[F1:+z]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F3:blend:F1:+z|F2:inner:F1:+x#[F1:+z]|F3:inner:F1:+z": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F3:blend:F1:+z|F2:inner:F1:+y#[F1:+z]": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F3:blend:F1:+z|F2:inner:F1:+y#[F1:+z]": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/F3:blend:F1:+z|F2:inner:F1:+y#[F1:+z]|F3:blend:F1:+z|F2:inner:F1:-x#[F1:+z]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F3:blend:F1:+z|F2:inner:F1:+y#[F1:+z]|F3:inner:F1:+z": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F3:blend:F1:+z|F2:inner:F1:-x#[F1:+z]": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F3:blend:F1:+z|F2:inner:F1:-x#[F1:+z]": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/F3:blend:F1:+z|F2:inner:F1:-x#[F1:+z]|F3:blend:F1:+z|F2:inner:F1:-y#[F1:+z]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F3:blend:F1:+z|F2:inner:F1:-x#[F1:+z]|F3:inner:F1:+z": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F3:blend:F1:+z|F2:inner:F1:-y#[F1:+z]": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull !face.shell face.sketch", + "Body1/F3:blend:F1:+z|F2:inner:F1:-y#[F1:+z]": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull !face.shell face.sketch", "Body1/F3:blend:F1:+z|F2:inner:F1:-y#[F1:+z]|F3:inner:F1:+z": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F3:inner:F1:+z": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull !face.shell face.sketch", - "Body1/F4:hole:base": "face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F3:inner:F1:+z": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull !face.shell face.sketch", + "Body1/F4:hole:base": "face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F4:hole:base|F4:hole:side:0": "edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F4:hole:base|F4:hole:side:1": "edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F4:hole:side:0": "curved.axis curved.tangent_plane", @@ -915,7 +915,7 @@ "Body1/F4:post:side:0|F4:post:top": "edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F4:post:side:1": "curved.axis curved.tangent_plane", "Body1/F4:post:side:1|F4:post:top": "edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F4:post:top": "face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F4:post:top": "face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F5:rest:side:0": "face.angle_plane face.extrude face.hole face.offset_plane face.press_pull !face.shell face.sketch", "Body1/F5:rest:side:0|F5:rest:side:1": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F5:rest:side:0|F5:rest:side:3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", @@ -923,7 +923,7 @@ "Body1/F5:rest:side:1": "face.angle_plane face.extrude face.hole face.offset_plane face.press_pull !face.shell face.sketch", "Body1/F5:rest:side:1|F5:rest:side:2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F5:rest:side:1|F5:rest:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F5:rest:side:2": "face.angle_plane face.extrude !face.hole face.offset_plane face.press_pull !face.shell face.sketch", + "Body1/F5:rest:side:2": "face.angle_plane face.extrude face.hole face.offset_plane face.press_pull !face.shell face.sketch", "Body1/F5:rest:side:2|F5:rest:side:3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F5:rest:side:2|F5:rest:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F5:rest:side:3": "face.angle_plane face.extrude !face.hole face.offset_plane face.press_pull !face.shell face.sketch", @@ -940,8 +940,8 @@ "Body1/F5:rest:side:6|F5:rest:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F5:rest:side:7": "face.angle_plane face.extrude face.hole face.offset_plane face.press_pull !face.shell face.sketch", "Body1/F5:rest:side:7|F5:rest:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F5:rest:top": "face.angle_plane face.extrude !face.hole face.midplane face.offset_plane face.press_pull !face.shell face.sketch", - "Body1/F6:arm:base": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F5:rest:top": "face.angle_plane face.extrude face.hole face.midplane face.offset_plane face.press_pull !face.shell face.sketch", + "Body1/F6:arm:base": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F6:arm:base|F6:arm:side:1": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F6:arm:base|F6:arm:side:2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F6:arm:base|F6:arm:side:3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", @@ -950,18 +950,18 @@ "Body1/F6:arm:side:1": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F6:arm:side:1|F6:arm:side:2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F6:arm:side:1|F6:arm:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F6:arm:side:2": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F6:arm:side:2": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F6:arm:side:2|F6:arm:side:3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F6:arm:side:2|F6:arm:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F6:arm:side:3": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/F6:arm:side:3|F6:arm:side:4": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F6:arm:side:3|F6:arm:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F6:arm:side:4": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F6:arm:side:4": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/F6:arm:side:4|F6:arm:side:5": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F6:arm:side:4|F6:arm:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F6:arm:side:5": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/F6:arm:side:5|F6:arm:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F6:arm:top": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F6:arm:top": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/body": "body.copy body.mirror body.move body.pattern", "Body1/v[F1:+x & F1:+y & F1:+z]": "vertex.plane_three_points vertex.point", "Body1/v[F1:+x & F1:+y & F1:-z]": "vertex.plane_three_points vertex.point", @@ -1297,7 +1297,7 @@ "Body1/F2:top#[F2:side:l3,F4:side:l3]|F4:side:l3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:top#[F2:side:l3,F4:side:l3]|F6:blend:F2:side:l3|F2:top#[F2:side:l3,F4:side:l3]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F4:side:l3": "face.angle_plane face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", - "Body1/F6:blend:F2:side:l3|F2:top#[F2:side:l3,F4:side:l3]": "face.angle_plane face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F6:blend:F2:side:l3|F2:top#[F2:side:l3,F4:side:l3]": "face.angle_plane face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/body": "body.copy body.mirror body.move body.pattern", "Body1/v[F2:side:l2#[F2:side:l3,F4:side:l3] & F2:side:l3 & F2:start#[F2:side:l3,F4:side:l3]]": "vertex.plane_three_points vertex.point", "Body1/v[F2:side:l2#[F2:side:l3,F4:side:l3] & F2:side:l3 & F6:blend:F2:side:l3|F2:top#[F2:side:l3,F4:side:l3]]": "vertex.plane_three_points vertex.point", @@ -1498,11 +1498,11 @@ "Enclosure/F6:side:l1": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Enclosure/F6:side:l1|F6:side:l2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.normal_plane+edit edge.project", "Enclosure/F6:side:l1|F6:side:l4": "edge.axis edge.chamfer edge.fillet edge.fillet+edit edge.normal_plane edge.project", - "Enclosure/F6:side:l2": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Enclosure/F6:side:l2": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Enclosure/F6:side:l2|F6:side:l3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Enclosure/F6:side:l3": "face.angle_plane !face.draft_neutral face.extrude face.extrude+edit face.hole face.offset_plane face.press_pull face.shell face.sketch", "Enclosure/F6:side:l3|F6:side:l4": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.normal_plane+edit edge.project", - "Enclosure/F6:side:l4": "face.angle_plane face.angle_plane+edit !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Enclosure/F6:side:l4": "face.angle_plane face.angle_plane+edit !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Enclosure/F7:hole:base": "face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Enclosure/F7:hole:base|F7:hole:side:0": "edge.chamfer edge.fillet edge.normal_plane edge.project edge.project+edit", "Enclosure/F7:hole:base|F7:hole:side:1": "edge.chamfer edge.fillet edge.normal_plane edge.normal_plane+edit edge.project", @@ -1668,7 +1668,7 @@ "Body1/F11:side:l5|F11:side:l8": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F11:side:l5|F2:side:l2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project edge.project+edit", "Body1/F11:side:l5|F4:inner:F2:side:l2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F11:side:l6": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F11:side:l6": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F11:side:l6|F11:side:l7": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F11:side:l6|F2:side:l2~1": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F11:side:l6|F2:side:l2~2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", @@ -1678,7 +1678,7 @@ "Body1/F11:side:l7|F11:side:l8": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F11:side:l7|F2:side:l2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project edge.project+edit", "Body1/F11:side:l7|F4:inner:F2:side:l2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F11:side:l8": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F11:side:l8": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F11:side:l8|F2:side:l2~1": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.normal_plane+edit edge.project", "Body1/F11:side:l8|F2:side:l2~2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.normal_plane+edit edge.project", "Body1/F11:side:l8|F4:inner:F2:side:l2~1": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", @@ -2654,7 +2654,7 @@ "Case/F11:side:bs_hole#[F4:inner:F2:start]#1|F4:inner:F2:start#[F11:side:bs_hole]": "edge.chamfer edge.fillet edge.normal_plane edge.project", "Case/F11:side:bs_hole#[F4:inner:F2:start]#2": "curved.axis curved.tangent_plane", "Case/F11:side:bs_hole#[F4:inner:F2:start]#2|F4:inner:F2:start#[F11:side:bs_hole]": "edge.chamfer edge.fillet edge.normal_plane edge.project", - "Case/F11:top": "!face.extrude !face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", + "Case/F11:top": "!face.extrude face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", "Case/F12:face:103": "curved.axis curved.tangent_plane", "Case/F12:face:103|F12:face:147": "edge.chamfer edge.fillet edge.normal_plane edge.project", "Case/F12:face:104": "curved.axis curved.tangent_plane", @@ -2679,7 +2679,7 @@ "Case/F12:face:113|F12:face:149": "edge.chamfer edge.fillet edge.normal_plane edge.project edge.project+edit", "Case/F12:face:114": "curved.axis curved.tangent_plane", "Case/F12:face:114|F12:face:149": "edge.chamfer edge.fillet edge.normal_plane edge.normal_plane+edit edge.project", - "Case/F12:face:147": "!face.extrude !face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", + "Case/F12:face:147": "!face.extrude face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", "Case/F12:face:148": "!face.extrude !face.hole face.midplane !face.offset_plane !face.press_pull face.shell !face.sketch", "Case/F12:face:149": "!face.extrude !face.hole face.midplane !face.offset_plane !face.press_pull face.shell face.shell+edit !face.sketch", "Case/F12:face:28": "curved.axis curved.tangent_plane curved.tangent_plane+edit", @@ -4888,7 +4888,7 @@ "Box/F3:inner:F2:side:l4|F5:blend:F3:inner:F2:side:l1|F3:inner:F2:side:l4": "edge.axis edge.normal_plane edge.project", "Box/F3:inner:F2:side:l4|F5:blend:F3:inner:F2:side:l3|F3:inner:F2:side:l4": "edge.axis edge.normal_plane edge.project", "Box/F3:inner:F2:side:l4|F6:blend:F3:inner:F2:side:l4|F3:inner:F2:start": "edge.axis edge.normal_plane edge.project", - "Box/F3:inner:F2:start": "face.angle_plane face.extrude face.hole face.offset_plane face.press_pull !face.shell face.sketch", + "Box/F3:inner:F2:start": "face.angle_plane face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Box/F3:inner:F2:start|F6:blend:F3:inner:F2:side:l1|F3:inner:F2:start": "edge.axis edge.normal_plane edge.project", "Box/F3:inner:F2:start|F6:blend:F3:inner:F2:side:l2|F3:inner:F2:start": "edge.axis edge.normal_plane edge.project", "Box/F3:inner:F2:start|F6:blend:F3:inner:F2:side:l3|F3:inner:F2:start": "edge.axis edge.normal_plane edge.project", @@ -5542,7 +5542,7 @@ "Tee/F4:side:c1#1|F4:top": "edge.chamfer edge.fillet edge.normal_plane edge.project", "Tee/F4:side:c1#2": "curved.axis curved.tangent_plane", "Tee/F4:side:c1#2|F4:top": "edge.chamfer edge.fillet edge.normal_plane edge.project", - "Tee/F4:top": "face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Tee/F4:top": "face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Tee/F4:top|F8:side:c1#1": "edge.chamfer edge.fillet edge.normal_plane edge.project", "Tee/F4:top|F8:side:c1#2": "edge.chamfer edge.fillet edge.normal_plane edge.project", "Tee/F6:side:c1#1": "curved.axis curved.tangent_plane", @@ -9529,7 +9529,7 @@ "Slat/F2:side:a1|F2:side:l3": "edge.axis edge.normal_plane edge.project", "Slat/F2:side:a1|F2:start": "edge.chamfer edge.fillet edge.normal_plane edge.project", "Slat/F2:side:a1|F2:top": "edge.chamfer edge.fillet edge.normal_plane edge.project", - "Slat/F2:side:l1": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Slat/F2:side:l1": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Slat/F2:side:l1|F2:side:l2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Slat/F2:side:l1|F2:start": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Slat/F2:side:l1|F2:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", @@ -9539,11 +9539,11 @@ "Slat/F2:side:l2|F2:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Slat/F2:side:l2|F4:side:c1#1": "edge.chamfer edge.fillet edge.normal_plane edge.project", "Slat/F2:side:l2|F4:side:c1#2": "edge.chamfer edge.fillet edge.normal_plane edge.project", - "Slat/F2:side:l3": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Slat/F2:side:l3": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Slat/F2:side:l3|F2:start": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Slat/F2:side:l3|F2:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Slat/F2:start": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", - "Slat/F2:top": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Slat/F2:top": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Slat/F4:side:c1#1": "curved.axis curved.tangent_plane", "Slat/F4:side:c1#1|F4:top": "edge.chamfer edge.fillet edge.normal_plane edge.project", "Slat/F4:side:c1#2": "curved.axis curved.tangent_plane", @@ -9709,7 +9709,7 @@ "Lid/F10:+x|F10:+z": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F10:+x|F10:-y": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F10:+x|F4:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Lid/F10:+y": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Lid/F10:+y": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Lid/F10:+y|F10:+z": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F10:+y|F1:+z#[F4:side:l5,F4:side:l6,F4:side:l7,F4:side:l8,F5:+x,F5:+y,F5:-x,F5:-y]#[F10:+y,F11:-y,F4:side:l6,F5:-x]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F10:+y|F4:side:l6#[F10:+y,F4:side:l7]#[F10:+y,F11:-y]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", @@ -9718,7 +9718,7 @@ "Lid/F10:+z": "face.angle_plane face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Lid/F10:+z|F10:-y": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F10:+z|F5:-x": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Lid/F10:-y": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Lid/F10:-y": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Lid/F10:-y|F1:+z#[F4:side:l5,F4:side:l6,F4:side:l7,F4:side:l8,F5:+x,F5:+y,F5:-x,F5:-y]#[F10:-y,F4:side:l5,F4:side:l6,F4:side:l8,F5:+x,F5:+y,F5:-x,F8:-y]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F10:-y|F4:side:l6#[F10:-y,F4:side:l5]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F10:-y|F4:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", @@ -9728,7 +9728,7 @@ "Lid/F11:+x|F11:+z": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F11:+x|F11:-y": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F11:+x|F4:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Lid/F11:+y": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Lid/F11:+y": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Lid/F11:+y|F11:+z": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F11:+y|F1:+z#[F4:side:l5,F4:side:l6,F4:side:l7,F4:side:l8,F5:+x,F5:+y,F5:-x,F5:-y]#[F11:+y,F1:+x,F1:+y,F1:-x,F1:-y,F2:blend:F1:+x|F1:+y,F2:blend:F1:+x|F1:-y,F2:blend:F1:+y|F1:-x,F2:blend:F1:-x|F1:-y,F4:side:l1,F4:side:l2,F4:side:l3,F4:side:l4,F4:side:l6,F4:side:l7,F4:side:l8,F5:+x,F5:-x,F5:-y,F6:+x,F6:+y,F6:-x,F6:-y,F7:+x,F7:-x,F9:+y]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F11:+y|F4:side:l6#[F10:+y,F4:side:l7]#[F11:+y,F4:side:l7]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", @@ -9737,7 +9737,7 @@ "Lid/F11:+z": "face.angle_plane face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Lid/F11:+z|F11:-y": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F11:+z|F5:-x": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Lid/F11:-y": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Lid/F11:-y": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Lid/F11:-y|F1:+z#[F4:side:l5,F4:side:l6,F4:side:l7,F4:side:l8,F5:+x,F5:+y,F5:-x,F5:-y]#[F10:+y,F11:-y,F4:side:l6,F5:-x]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F11:-y|F4:side:l6#[F10:+y,F4:side:l7]#[F10:+y,F11:-y]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F11:-y|F4:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", @@ -9896,15 +9896,15 @@ "Lid/F6:-y": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Lid/F7:+x": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Lid/F7:-x": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", - "Lid/F8:+y": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Lid/F8:+y": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Lid/F8:+y|F8:-x": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F8:+y|F9:+z#[F8:+y,F8:-x,F8:-y]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F8:-x": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Lid/F8:-x|F8:-y": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F8:-x|F9:+z#[F8:+y,F8:-x,F8:-y]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Lid/F8:-y": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Lid/F8:-y": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Lid/F8:-y|F9:+z#[F8:+y,F8:-x,F8:-y]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Lid/F9:+y": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Lid/F9:+y": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Lid/F9:+y|F9:+z#[F9:+y,F9:-x,F9:-y]": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F9:+y|F9:-x": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F9:+z#[F8:+y,F8:-x,F8:-y]": "face.angle_plane face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", @@ -9913,7 +9913,7 @@ "Lid/F9:+z#[F9:+y,F9:-x,F9:-y]|F9:-y": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Lid/F9:-x": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Lid/F9:-x|F9:-y": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Lid/F9:-y": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Lid/F9:-y": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Lid/body": "body.copy body.mirror body.move body.pattern", "Lid/v[F10:+x & F10:+y & F10:+z]": "vertex.plane_three_points vertex.point", "Lid/v[F10:+x & F10:+y & F4:top]": "vertex.plane_three_points vertex.point", @@ -10022,31 +10022,31 @@ "design": "load" }, "regressions/loft_cut_beside_round_hole": { - "Body1/F2:side:l1": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F2:side:l1": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F2:side:l1|F2:side:l2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l1|F2:side:l4": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l1|F2:start": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l1|F2:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F2:side:l2": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F2:side:l2": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F2:side:l2|F2:side:l3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l2|F2:start": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l2|F2:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F2:side:l3": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F2:side:l3": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F2:side:l3|F2:side:l4": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l3|F2:start": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l3|F2:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F2:side:l4": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F2:side:l4": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F2:side:l4|F2:start": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l4|F2:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F2:start": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", - "Body1/F2:top": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F2:start": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F2:top": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F2:top|F4:side:l1": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:top|F4:side:l2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:top|F4:side:l3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:top|F4:side:l4": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:top|F6:side:c1#1": "edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:top|F6:side:c1#2": "edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F4:bottom": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F4:bottom": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F4:bottom|F4:side:l1": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F4:bottom|F4:side:l2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F4:bottom|F4:side:l3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", @@ -10055,32 +10055,32 @@ "Body1/F4:bottom|F9:side:l2": "edge.axis edge.normal_plane edge.project", "Body1/F4:bottom|F9:side:l3": "edge.axis !edge.chamfer !edge.fillet edge.normal_plane edge.project", "Body1/F4:bottom|F9:side:l4": "edge.axis edge.normal_plane edge.project", - "Body1/F4:side:l1": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F4:side:l1": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F4:side:l1|F4:side:l2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F4:side:l1|F4:side:l4": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F4:side:l2": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F4:side:l2": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/F4:side:l2|F4:side:l3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F4:side:l3": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F4:side:l3": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/F4:side:l3|F4:side:l4": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F4:side:l4": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", - "Body1/F6:bottom": "face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F4:side:l4": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F6:bottom": "face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F6:bottom|F6:side:c1#1": "edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F6:bottom|F6:side:c1#2": "edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F6:side:c1#1": "curved.axis curved.tangent_plane", "Body1/F6:side:c1#2": "curved.axis curved.tangent_plane", - "Body1/F9:end": "face.angle_plane face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F9:end": "face.angle_plane face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/F9:end|F9:side:l1": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F9:end|F9:side:l2": "edge.axis edge.normal_plane edge.project", "Body1/F9:end|F9:side:l3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F9:end|F9:side:l4": "edge.axis edge.normal_plane edge.project", - "Body1/F9:side:l1": "face.angle_plane face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F9:side:l1": "face.angle_plane face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/F9:side:l1|F9:side:l2": "edge.axis !edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F9:side:l1|F9:side:l4": "edge.axis !edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F9:side:l2": "face.angle_plane face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F9:side:l2": "face.angle_plane face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/F9:side:l2|F9:side:l3": "edge.axis !edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F9:side:l3": "face.angle_plane face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F9:side:l3": "face.angle_plane face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/F9:side:l3|F9:side:l4": "edge.axis !edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F9:side:l4": "face.angle_plane face.extrude !face.hole face.offset_plane face.press_pull !face.shell face.sketch", + "Body1/F9:side:l4": "face.angle_plane face.extrude face.hole face.offset_plane face.press_pull !face.shell face.sketch", "Body1/body": "body.copy body.mirror body.move body.pattern", "Body1/v[F2:side:l1 & F2:side:l2 & F2:start]": "vertex.plane_three_points vertex.point", "Body1/v[F2:side:l1 & F2:side:l2 & F2:top]": "vertex.plane_three_points vertex.point", @@ -10118,17 +10118,17 @@ "ClipBody/F4:bottom|F4:side:l2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "ClipBody/F4:bottom|F4:side:l3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "ClipBody/F4:bottom|F4:side:l4": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "ClipBody/F4:side:l1": "face.angle_plane face.draft_neutral !face.extrude !face.hole face.offset_plane !face.press_pull face.shell face.sketch", + "ClipBody/F4:side:l1": "face.angle_plane face.draft_neutral !face.extrude face.hole face.offset_plane !face.press_pull face.shell face.sketch", "ClipBody/F4:side:l1|F4:side:l2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "ClipBody/F4:side:l1|F4:side:l4": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "ClipBody/F4:side:l1|F4:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "ClipBody/F4:side:l2": "face.angle_plane face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "ClipBody/F4:side:l2": "face.angle_plane face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "ClipBody/F4:side:l2|F4:side:l3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "ClipBody/F4:side:l2|F4:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "ClipBody/F4:side:l3": "face.angle_plane face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "ClipBody/F4:side:l3|F4:side:l4": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "ClipBody/F4:side:l3|F4:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "ClipBody/F4:side:l4": "face.angle_plane face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "ClipBody/F4:side:l4": "face.angle_plane face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "ClipBody/F4:side:l4|F4:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "ClipBody/F4:top": "face.angle_plane face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "ClipBody/body": "body.copy body.mirror body.move body.pattern", @@ -10187,11 +10187,11 @@ "ClipBody/F4:bottom|F4:side:l2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "ClipBody/F4:bottom|F4:side:l3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "ClipBody/F4:bottom|F4:side:l4": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "ClipBody/F4:side:l1": "face.angle_plane face.draft_neutral !face.extrude !face.hole face.offset_plane !face.press_pull face.shell face.sketch", + "ClipBody/F4:side:l1": "face.angle_plane face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "ClipBody/F4:side:l1|F4:side:l2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "ClipBody/F4:side:l1|F4:side:l4": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "ClipBody/F4:side:l1|F4:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "ClipBody/F4:side:l2": "face.angle_plane face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "ClipBody/F4:side:l2": "face.angle_plane face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "ClipBody/F4:side:l2|F4:side:l3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "ClipBody/F4:side:l2|F4:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "ClipBody/F4:side:l3": "face.angle_plane face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", @@ -10223,7 +10223,7 @@ "Tool/F2:side:l1|F2:side:l2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Tool/F2:side:l1|F2:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Tool/F2:side:l1|F4:side:l1": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Tool/F2:side:l2": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Tool/F2:side:l2": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Tool/F2:side:l2|F2:side:l3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Tool/F2:side:l2|F2:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Tool/F2:side:l3": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull !face.shell face.sketch", @@ -10234,7 +10234,7 @@ "Tool/F2:side:l4|F2:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Tool/F2:side:l4|F4:side:l1": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Tool/F2:top": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull !face.shell face.sketch", - "Tool/F4:side:l1": "face.angle_plane !face.draft_neutral !face.extrude !face.hole face.offset_plane !face.press_pull !face.shell face.sketch", + "Tool/F4:side:l1": "face.angle_plane !face.draft_neutral !face.extrude face.hole face.offset_plane !face.press_pull !face.shell face.sketch", "Tool/body": "body.copy body.mirror body.move body.pattern", "Tool/v[F2:bottom & F2:side:l1 & F2:side:l2]": "vertex.plane_three_points vertex.point", "Tool/v[F2:bottom & F2:side:l1 & F4:side:l1]": "vertex.plane_three_points vertex.point", @@ -10500,31 +10500,31 @@ "design": "load" }, "regressions/shallow_loft_cut_from_top_face": { - "Body1/F2:side:l1": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F2:side:l1": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F2:side:l1|F2:side:l2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l1|F2:side:l4": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l1|F2:start": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l1|F2:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F2:side:l2": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F2:side:l2": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F2:side:l2|F2:side:l3~1": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l2|F2:side:l3~2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l2|F2:start": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l2|F2:top~1": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l2|F2:top~2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F2:side:l3": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F2:side:l3": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/F2:side:l3|F2:side:l4~1": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l3|F2:side:l4~2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l3|F2:side:l4~3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l3|F2:start": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l3|F2:top~1": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l3|F2:top~2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F2:side:l4": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F2:side:l4": "face.angle_plane !face.draft_neutral face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/F2:side:l4|F2:start": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l4|F2:top~1": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l4|F2:top~2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:side:l4|F2:top~3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F2:start": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", - "Body1/F2:top": "face.angle_plane !face.draft_neutral face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F2:start": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F2:top": "face.angle_plane !face.draft_neutral face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F2:top|F5:side:l1~1": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:top|F5:side:l1~2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:top|F5:side:l1~3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", @@ -10535,19 +10535,19 @@ "Body1/F2:top|F5:side:l3~2": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F2:top|F5:side:l4~1": "edge.axis edge.normal_plane edge.project", "Body1/F2:top|F5:side:l4~2": "edge.axis edge.normal_plane edge.project", - "Body1/F5:end": "face.angle_plane face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F5:end": "face.angle_plane face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/F5:end|F5:side:l1": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F5:end|F5:side:l2": "edge.axis edge.normal_plane edge.project", "Body1/F5:end|F5:side:l3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F5:end|F5:side:l4": "edge.axis edge.normal_plane edge.project", - "Body1/F5:side:l1": "face.angle_plane face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F5:side:l1": "face.angle_plane face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/F5:side:l1|F5:side:l2": "edge.axis !edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F5:side:l1|F5:side:l4": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F5:side:l2": "face.angle_plane face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F5:side:l2": "face.angle_plane face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/F5:side:l2|F5:side:l3": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F5:side:l3": "face.angle_plane face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F5:side:l3": "face.angle_plane face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/F5:side:l3|F5:side:l4": "edge.axis !edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F5:side:l4": "face.angle_plane face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F5:side:l4": "face.angle_plane face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/body": "body.copy body.mirror body.move body.pattern", "Body1/v[F2:side:l1 & F2:side:l2 & F2:start]": "vertex.plane_three_points vertex.point", "Body1/v[F2:side:l1 & F2:side:l2 & F2:top]": "vertex.plane_three_points vertex.point", @@ -10770,20 +10770,20 @@ "Body1/F3:bore:side:1@F4.5": "curved.axis curved.tangent_plane", "Body1/F3:bore:side:1@F4.5|F3:cbore:base@F4.5": "edge.chamfer edge.fillet edge.fillet+edit edge.normal_plane edge.project", "Body1/F3:bore:side:1|F3:cbore:base": "edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F3:cbore:base": "face.extrude face.extrude+edit !face.hole face.midplane face.offset_plane face.press_pull face.press_pull+edit face.shell face.sketch", - "Body1/F3:cbore:base@F4.1": "face.extrude !face.hole face.midplane face.midplane+edit face.offset_plane face.press_pull face.shell face.shell+edit face.sketch", + "Body1/F3:cbore:base": "face.extrude face.extrude+edit face.hole face.midplane face.offset_plane face.press_pull face.press_pull+edit face.shell face.sketch", + "Body1/F3:cbore:base@F4.1": "face.extrude face.hole face.midplane face.midplane+edit face.offset_plane face.press_pull face.shell face.shell+edit face.sketch", "Body1/F3:cbore:base@F4.1|F3:cbore:side:0@F4.1": "edge.chamfer edge.chamfer+edit edge.fillet edge.normal_plane edge.project", "Body1/F3:cbore:base@F4.1|F3:cbore:side:1@F4.1": "edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F3:cbore:base@F4.2": "face.extrude face.extrude+edit !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F3:cbore:base@F4.2": "face.extrude face.extrude+edit face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F3:cbore:base@F4.2|F3:cbore:side:0@F4.2": "edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F3:cbore:base@F4.2|F3:cbore:side:1@F4.2": "edge.chamfer edge.fillet edge.normal_plane edge.project edge.project+edit", - "Body1/F3:cbore:base@F4.3": "face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch face.sketch+edit", + "Body1/F3:cbore:base@F4.3": "face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch face.sketch+edit", "Body1/F3:cbore:base@F4.3|F3:cbore:side:0@F4.3": "edge.chamfer edge.chamfer+edit edge.fillet edge.fillet+edit edge.normal_plane edge.project", "Body1/F3:cbore:base@F4.3|F3:cbore:side:1@F4.3": "edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F3:cbore:base@F4.4": "face.extrude !face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F3:cbore:base@F4.4": "face.extrude face.hole face.midplane face.offset_plane face.press_pull face.shell face.sketch", "Body1/F3:cbore:base@F4.4|F3:cbore:side:0@F4.4": "edge.chamfer edge.chamfer+edit edge.fillet edge.normal_plane edge.project", "Body1/F3:cbore:base@F4.4|F3:cbore:side:1@F4.4": "edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F3:cbore:base@F4.5": "face.extrude !face.hole face.offset_plane face.offset_plane+edit face.press_pull face.shell face.sketch", + "Body1/F3:cbore:base@F4.5": "face.extrude face.hole face.offset_plane face.offset_plane+edit face.press_pull face.shell face.sketch", "Body1/F3:cbore:base@F4.5|F3:cbore:side:0@F4.5": "edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F3:cbore:base@F4.5|F3:cbore:side:1@F4.5": "edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F3:cbore:base|F3:cbore:side:0": "edge.chamfer edge.chamfer+edit edge.fillet edge.normal_plane edge.project", @@ -10800,14 +10800,14 @@ "Body1/F3:cbore:side:1@F4.3": "curved.axis curved.axis+edit curved.tangent_plane", "Body1/F3:cbore:side:1@F4.4": "curved.axis curved.tangent_plane curved.tangent_plane+edit", "Body1/F3:cbore:side:1@F4.5": "curved.axis curved.tangent_plane", - "Body1/F5:blend:F2:side:l1|F2:top": "face.angle_plane face.extrude !face.hole face.offset_plane face.press_pull face.press_pull+edit face.shell face.sketch", + "Body1/F5:blend:F2:side:l1|F2:top": "face.angle_plane face.extrude face.hole face.offset_plane face.press_pull face.press_pull+edit face.shell face.sketch", "Body1/F5:blend:F2:side:l1|F2:top|F5:blend:F2:side:l2|F2:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", "Body1/F5:blend:F2:side:l1|F2:top|F5:blend:F2:side:l4|F2:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project", - "Body1/F5:blend:F2:side:l2|F2:top": "face.angle_plane face.angle_plane+edit face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F5:blend:F2:side:l2|F2:top": "face.angle_plane face.angle_plane+edit face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/F5:blend:F2:side:l2|F2:top|F5:blend:F2:side:l3|F2:top": "edge.axis edge.axis+edit edge.chamfer edge.fillet edge.normal_plane edge.project edge.project+edit", - "Body1/F5:blend:F2:side:l3|F2:top": "face.angle_plane face.extrude !face.hole face.offset_plane face.press_pull face.shell face.sketch", + "Body1/F5:blend:F2:side:l3|F2:top": "face.angle_plane face.extrude face.hole face.offset_plane face.press_pull face.shell face.sketch", "Body1/F5:blend:F2:side:l3|F2:top|F5:blend:F2:side:l4|F2:top": "edge.axis edge.chamfer edge.fillet edge.normal_plane edge.project edge.project+edit", - "Body1/F5:blend:F2:side:l4|F2:top": "face.angle_plane face.extrude !face.hole face.offset_plane face.offset_plane+edit face.press_pull face.shell face.sketch", + "Body1/F5:blend:F2:side:l4|F2:top": "face.angle_plane face.extrude face.hole face.offset_plane face.offset_plane+edit face.press_pull face.shell face.sketch", "Body1/body": "body.copy body.mirror body.move body.move+edit body.pattern", "Body1/v[F2:side:l1 & F2:side:l2 & F2:start]": "vertex.plane_three_points vertex.point", "Body1/v[F2:side:l1 & F2:side:l2 & F5:blend:F2:side:l1|F2:top & F5:blend:F2:side:l2|F2:top]": "vertex.plane_three_points vertex.point",