mirror of
https://github.com/bherbruck/solidcraft.git
synced 2026-11-03 10:35:58 +00:00
solidcore: move the pin to 937a6319 (main, with solidcore#1534, #1537, #1544, #1617, #1608, #1582, #1591, #1625, #1586, #1619, #1620, #1611, #1647, #1646, #1643, #1642, #1638, #1635, #1633: planar section curves, SM_API intersections, cut, HCR silhouettes on solids, UV trim checks on the surface and tiny loops oriented, projection, trimming, tessellated boundaries and knot removal, the fillet refusal that leaves the body unchanged, Cone::lean_cylinder as a cone, and the fork's WR-260, WR-550, WR-545, WR-543, WR-80, WR-534 and WR-532 opt-ins)
CreateParallelProjectionCurves now takes the curve itself (any of the SmBSplineCurve classes), so smlib_project_curves passes its line, arc or B-spline as the capi's GetRootCurve() does. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MNXLXkZLQ6T7TSi4wswcmk
This commit is contained in:
Generated
+1
-1
@@ -4054,7 +4054,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "solidcore"
|
||||
version = "0.0.1"
|
||||
source = "git+https://github.com/tangency-labs/solidcore?rev=b2450cbf941c83a1f9932d4cf629a6363840edb7#b2450cbf941c83a1f9932d4cf629a6363840edb7"
|
||||
source = "git+https://github.com/tangency-labs/solidcore?rev=937a63195fbf5a832c37271b1b3643e1c36bbec1#937a63195fbf5a832c37271b1b3643e1c36bbec1"
|
||||
dependencies = [
|
||||
"thiserror 2.0.21",
|
||||
]
|
||||
|
||||
+1
-1
@@ -35,7 +35,7 @@ solidcraft-3dx-client = { path = "crates/threedx-client" }
|
||||
# they reach parity (crates/smlib/src/route.rs). Pinned; move the rev on its own commit. For a
|
||||
# local checkout, add `[patch."https://github.com/tangency-labs/solidcore"] solidcore = { path =
|
||||
# "../solidcore/crates/solidcore" }` to a `.cargo/config.toml` outside the repository.
|
||||
solidcore = { git = "https://github.com/tangency-labs/solidcore", rev = "b2450cbf941c83a1f9932d4cf629a6363840edb7" }
|
||||
solidcore = { git = "https://github.com/tangency-labs/solidcore", rev = "937a63195fbf5a832c37271b1b3643e1c36bbec1" }
|
||||
|
||||
# foundation
|
||||
thiserror = "2"
|
||||
|
||||
@@ -1478,8 +1478,12 @@ pub(crate) fn project_curves(
|
||||
};
|
||||
let mut out = Vec::new();
|
||||
for c in &given {
|
||||
let Some(root) = bspline(c)? else { return Ok(Err(Error::Argument)) };
|
||||
let made = match create_parallel_projection_curves(k, b, &root, dir, &opts) {
|
||||
// curve->GetRootCurve(): a line, an arc and a B-spline are their own root, and
|
||||
// go in as themselves
|
||||
if !matches!(c.kind(), CurveKind::BSpline(_) | CurveKind::Line(_) | CurveKind::Ellipse(_)) {
|
||||
return Ok(Err(Error::Argument));
|
||||
}
|
||||
let made = match create_parallel_projection_curves(k, b, c, dir, &opts) {
|
||||
Ok(m) => m.curves_3d.unwrap_or_default(),
|
||||
Err(e) => return Ok(Err(status(e))),
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user