Skip to content

Conversation

@Exceluyi
Copy link

@Exceluyi Exceluyi commented Nov 7, 2025

/claim #46
/closes #46

This PR introduces a new rerouting strategy to the TraceLabelOverlapAvoidanceSolver to prevent traces from overlapping with net labels.

Problem

In some cases, a trace segment would overlap with a net label, making the schematic difficult to read. This was happening because the existing rerouting strategies were not always able to find a valid path that avoided the label.

Before:
Image

Solution

A new rerouting strategy, generateMoveTraceSegmentsCandidates, has been added. This strategy identifies the trace segments that are overlapping with a net label and moves them out of the way. The new path is then simplified to ensure it's a valid trace.

This new strategy is added to the existing generateRerouteCandidates function, which now has more options to find a valid path that avoids the overlap.

After:
Image

Verification

A new test case has been added to reproduce the overlap issue. The snapshot of the test case now shows that the overlap is resolved.

@vercel
Copy link

vercel bot commented Nov 7, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
schematic-trace-solver Ready Ready Preview Comment Nov 8, 2025 4:47am

@Exceluyi
Copy link
Author

Exceluyi commented Nov 7, 2025

@seveibar ready for review. proof of fix in description

@Exceluyi
Copy link
Author

Exceluyi commented Nov 7, 2025

no tests are failing which is good

Copy link
Contributor

@seveibar seveibar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

get reviews from @0hmX before requesting me for this repo, also the snapshots are clearly broken

Copy link
Member

@techmannih techmannih left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

look like you have broken all snapshots, you have removed traces in updated snapshot

@Exceluyi
Copy link
Author

Exceluyi commented Nov 8, 2025

look like you have broken all snapshots, you have removed traces in updated snapshot

@techmannih no snapshots are broken now

@Exceluyi Exceluyi marked this pull request as ready for review November 8, 2025 03:56
@Exceluyi Exceluyi requested a review from techmannih November 8, 2025 03:57
@techmannih
Copy link
Member

CC @0hmX

@Exceluyi
Copy link
Author

Exceluyi commented Nov 8, 2025

@0hmX please review

@0hmX
Copy link
Contributor

0hmX commented Nov 8, 2025

Look at example-14, that is the exact problem you need to solve for

@Exceluyi
Copy link
Author

Exceluyi commented Nov 8, 2025

@0hmX please re-review and approve if you find it good

Copy link
Contributor

@0hmX 0hmX left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same as before you did not fix the issue

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks broken, the labels are totally in the wrong orientation/position, and the trace is also removed

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i created the snapshot to reproduce the issue

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the trace being removed is the fix

@0hmX
Copy link
Contributor

0hmX commented Nov 8, 2025

@Exceluyi #46 (comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

New phase to move trace segments "out of the way" of traces

4 participants