mirror of
https://github.com/bherbruck/solidcraft.git
synced 2026-11-03 18:45:55 +00:00
kernel: crate root follows the emboss, lip and delete-face port
assemble (records rebuilt after removing and adding faces) joins; the boolean guards that re-ran a failed boolean with a changed tool (bore_guard, candidate_reach, sphere_lens, tangent_cylinders, touching_walls) are gone; the lens-cut result stays as a boolean test. SMLIB_REV at the fork's integration head with smlib_merge_faces. (not built: base in progress) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017itGh5fpMEousnZ91cYcVt
This commit is contained in:
@@ -12,6 +12,7 @@
|
||||
#![deny(clippy::unwrap_used, clippy::expect_used, clippy::panic, clippy::unimplemented, clippy::todo, clippy::unreachable)]
|
||||
#![forbid(unsafe_code)]
|
||||
|
||||
mod assemble;
|
||||
mod backend;
|
||||
mod blend;
|
||||
mod blend_corner;
|
||||
@@ -24,12 +25,10 @@ mod body;
|
||||
mod boolean_diagnostics;
|
||||
mod boolean_guard;
|
||||
mod boolean_record;
|
||||
mod bore_guard;
|
||||
mod boundary;
|
||||
mod boundary_network;
|
||||
mod bridge;
|
||||
mod build;
|
||||
mod candidate_reach;
|
||||
#[cfg(test)]
|
||||
mod chamfer_sides_curved_tests;
|
||||
mod clearance;
|
||||
@@ -125,7 +124,8 @@ mod smlib_sweeps;
|
||||
#[cfg(test)]
|
||||
mod smlib_sweeps_tests;
|
||||
mod smooth_edges;
|
||||
mod sphere_lens;
|
||||
#[cfg(test)]
|
||||
mod sphere_lens_tests;
|
||||
mod spline_conv;
|
||||
mod splitface;
|
||||
mod step;
|
||||
@@ -143,7 +143,6 @@ mod surfaces;
|
||||
mod sweep_path;
|
||||
#[cfg(test)]
|
||||
mod sweep_rails_tests;
|
||||
mod tangent_cylinders;
|
||||
mod tess;
|
||||
#[cfg(test)]
|
||||
mod thin_face_tests;
|
||||
@@ -152,7 +151,6 @@ mod thread_display_tests;
|
||||
#[cfg(test)]
|
||||
mod thread_tests;
|
||||
mod topo;
|
||||
mod touching_walls;
|
||||
mod tspline;
|
||||
#[cfg(test)]
|
||||
mod untouched_faces_tests;
|
||||
|
||||
@@ -51,7 +51,7 @@ fn points(p: &[Vec3]) -> Vec<[f64; 3]> {
|
||||
|
||||
/// Runs `op` on `b` in SMLib, tagged as operand 0, and brings the result back with SMLib's
|
||||
/// history over `[b]` (none where an order cannot be matched).
|
||||
fn run(name: &str, b: &Body, op: impl FnOnce(&Brep) -> std::result::Result<Brep, SmError>) -> Result<(Body, Option<History>)> {
|
||||
pub(crate) fn run(name: &str, b: &Body, op: impl FnOnce(&Brep) -> std::result::Result<Brep, SmError>) -> Result<(Body, Option<History>)> {
|
||||
b.require_brep(name)?;
|
||||
let (sb, ob) = smlib_body_ordered(b)?;
|
||||
let tagged = sb.tagged(0).map_err(|e| failed(name, "tag", e))?;
|
||||
|
||||
@@ -1 +1 @@
|
||||
c899502f2bdd0e8e21c25e69eca423f659c9da8f
|
||||
9c97a665559072ab58b2483465ad8378fc623317
|
||||
|
||||
Reference in New Issue
Block a user