-
Notifications
You must be signed in to change notification settings - Fork 97
Updated the circularise command to better handle mirrored selections #618
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
|
@dgud , I hope you can evaluate this PR and suggest me any change you think it would be necessary in order to Circularise [LMB] - Edge loops - CHANGED behaviour (Video) Circularise [LMB] - Edge links - NOTHING was changed (Video) Circularise [LMB] - Mixed mode - Forbidden - NOTHING was changed (Video) Circularise [LMB] - with Options (Video) Circularise [RMB] - with Options (Video) Circularise [MMB] - Accept only one edge loop/link selection, so it works fine in every situation |
|
I have let co-pilot review this, fix stuff that seems valid and write when your are done, or nothing needs fixing. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR enhances the circularise command to properly handle edge selections on mirrored objects. When edges lie on mirror face boundaries, they are now treated as edge loops, allowing the circularise operation to work as if applied on a non-mirrored object. The implementation adds detection logic for mirror boundary edges and provides special handling for computing circular arcs across mirror planes.
- Added
mixed_mirrorreturn value to differentiate mirror boundary edges from regular mixed selections - Introduced
arc_mirrored_setupfunction to handle arc calculations for edges on mirror boundaries using matrix transformations - Implemented helper functions
check_mirror,is_mirror, andprocess_mixedto identify and filter mirror boundary edges - Modified
get_radiusfunction to support different modes (full vs. mirrored) for radius calculation
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
It was changed the code in order to evaluate the linked edges selection and see if they lay on the mirror face boundaries. In this case, the linked edges are handled as they were edge loops and we get the command working as it was applied in a non mirrored object. In case other linked edges exists and not laying on mirror face boundaries then the error message caused by mixed mode is displayed, just as it uses to be for non mirrored objects. NOTE: - Updated the circularise command to better handle mirrored selections;
f57a347 to
c4a69aa
Compare





It was changed the code in order to evaluate the linked edges selection and see if they lay on the mirror face boundaries. In this case, the linked edges are handled as they were edge loops and we get the command working as it was applied in a non mirrored object. In case other linked edges exists and not laying on mirror face boundaries then the error message caused by mixed mode is displayed, just as it uses to be for non mirrored objects.
NOTE: