Add missing sweep edges for open surface extrudes - #12437
Conversation
Merging this PR will not alter performance
Comparing Footnotes
|
| let mut new_sweep = sweep.clone(); | ||
| new_sweep.edge_ids = vec![previous_edge_id]; | ||
| let mut new_wall = wall.clone(); | ||
| new_wall.edge_cut_edge_ids = vec![previous_edge_id]; |
There was a problem hiding this comment.
I don't really understand why we update all these, but it's what we do for Solid3dGetAdjacencyInfo, so it's probably fine.
|
Keeping as draft for now, depending on root causing of https://github.com/KittyCAD/engine/issues/4785 |
|
Will be able to rewrite this based on KittyCAD/modeling-api#1280 |
Codex did pretty good plumbing work here to get the previous adjacent edge at the start of each open profile component. It maps these artifacts togetPreviousAdjacentEdge(...), allowing point-and-click extrusion to use it and avoid falling back toedgeId. There's a single open single-segment surface extrusion case.Likely not needed after #11727 but could be a good interim fix?Rescoped after reporting the missing edge from GetAdjacencyInfo https://github.com/KittyCAD/engine/issues/4785, now that it's live we can simply do the plumbing bits, no need for a frontend patch anymore!
Allows extruding all four edges from a segment-extrude like this without falling back to faceId, as found in #12018 (review)