Skip to content

Fix #2534 - shared boundary issue: skip extract-largest-component for shared boundary domains#2535

Open
akenmorris wants to merge 3 commits intomasterfrom
amorris/fix-shared-boundary
Open

Fix #2534 - shared boundary issue: skip extract-largest-component for shared boundary domains#2535
akenmorris wants to merge 3 commits intomasterfrom
amorris/fix-shared-boundary

Conversation

@akenmorris
Copy link
Copy Markdown
Contributor

@akenmorris akenmorris commented Apr 13, 2026

Fix shared boundary issue: skip extract-largest-component for shared boundary domains

Before:

Image

After:

image

…boundary domains, add empty mesh crash guards
- MeshUtils: replace fragile is_clockwise atan2 test with summed signed-area
  vector (uses all vertices, immune to branch-cut flips); rotate boundary
  loops to start at canonical max-Y vertex for consistent ordering across
  subjects.
- ContourDomain: return length² from GetSurfaceArea so contours participate
  in sampling-scale auto-scaling at a magnitude comparable to meshes.
- SamplingFunction: apply auto-scale uniformly; contours no longer require
  special-case skipping.
- GroomParameters: skip phantom shared-boundary entry on migration when
  domain names are empty.
- Regenerate shared boundary test ground truth for canonical start vertex.
- Add ElidedLabel class that truncates long domain names with "..." when
  column space is tight, while reporting full-text sizeHint so the layout
  allocates natural width when available. Full name shown as tooltip.
- Cap optimize textboxes to 50-100px (min/max) so they don't expand and
  crowd out the label column; ensures values like "0.05" aren't truncated.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant