feat(cam-blend): splice G3 junction blends into clearing passes #78

Open
patman wants to merge 1 commit from patman/blend-junctions into main AGit
Owner

Adds a junctions module to cam-blend: blend_pass turns a G1 pass (closed
loop of Line/Arc cam_geom::ContourSegments) into a G3 BlendedPass by
inserting eta^3 blends at curvature discontinuities. Each blend is gated
against a caller-supplied deviation budget, halving the trim up to four
times before giving up and reporting the junction as skipped (original
G1 corner retained, world-jerk step reported rather than hidden).

Also reports a signed outward/inward deviation split (right-of-travel for
a CCW pass = outward/uncut-stock side) so a caller can reason about
engagement-safety impact without this module re-certifying engagement
itself -- that re-certification is explicitly deferred, per the module's
honesty-contract docs.

Co-authored-by: patman-assist patrick-ai@kgroo.co

Adds a junctions module to cam-blend: blend_pass turns a G1 pass (closed loop of Line/Arc cam_geom::ContourSegments) into a G3 BlendedPass by inserting eta^3 blends at curvature discontinuities. Each blend is gated against a caller-supplied deviation budget, halving the trim up to four times before giving up and reporting the junction as skipped (original G1 corner retained, world-jerk step reported rather than hidden). Also reports a signed outward/inward deviation split (right-of-travel for a CCW pass = outward/uncut-stock side) so a caller can reason about engagement-safety impact without this module re-certifying engagement itself -- that re-certification is explicitly deferred, per the module's honesty-contract docs. Co-authored-by: patman-assist <patrick-ai@kgroo.co>
feat(cam-blend): splice G3 junction blends into clearing passes
Some checks are pending
CI / build-test (pull_request) Waiting to run
4c48334128
Adds a junctions module to cam-blend: blend_pass turns a G1 pass (closed
loop of Line/Arc cam_geom::ContourSegments) into a G3 BlendedPass by
inserting eta^3 blends at curvature discontinuities. Each blend is gated
against a caller-supplied deviation budget, halving the trim up to four
times before giving up and reporting the junction as skipped (original
G1 corner retained, world-jerk step reported rather than hidden).

Also reports a signed outward/inward deviation split (right-of-travel for
a CCW pass = outward/uncut-stock side) so a caller can reason about
engagement-safety impact without this module re-certifying engagement
itself -- that re-certification is explicitly deferred, per the module's
honesty-contract docs.

Co-authored-by: patman-assist <patrick-ai@kgroo.co>
patman force-pushed patman/blend-junctions from 4c48334128
Some checks are pending
CI / build-test (pull_request) Waiting to run
to 53e785a25d
Some checks are pending
CI / build-test (pull_request) Waiting to run
2026-07-12 23:27:39 +00:00
Compare
patman force-pushed patman/blend-junctions from 53e785a25d
Some checks are pending
CI / build-test (pull_request) Waiting to run
to 205f006e50
Some checks failed
CI / build-test (pull_request) Has been cancelled
2026-07-12 23:54:44 +00:00
Compare
Some checks failed
CI / build-test (pull_request) Has been cancelled
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin +refs/pull/78/head:patman/blend-junctions
git switch patman/blend-junctions

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch main
git merge --no-ff patman/blend-junctions
git switch patman/blend-junctions
git rebase main
git switch main
git merge --ff-only patman/blend-junctions
git switch patman/blend-junctions
git rebase main
git switch main
git merge --no-ff patman/blend-junctions
git switch main
git merge --squash patman/blend-junctions
git switch main
git merge --ff-only patman/blend-junctions
git switch main
git merge patman/blend-junctions
git push origin main
Sign in to join this conversation.
No description provided.