Skip to content

fillContours2D: add tilted-plane regression test#6310

Merged
Grantim merged 1 commit into
masterfrom
pt-fillcontours2d-test
Jun 23, 2026
Merged

fillContours2D: add tilted-plane regression test#6310
Grantim merged 1 commit into
masterfrom
pt-fillcontours2d-test

Conversation

@Grantim

@Grantim Grantim commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Adds a regression test characterizing fillContours2D on a hole in a plane tilted off all axes — the existing test only covers an axis-aligned z=0 cut.

It pins the stable, observable invariants of the fill:

  • the hole closes watertight (no boundaries remain);
  • the boundary vertices are reused in place — vertex count is unchanged, no drift or duplication (the crack-free property);
  • every patch face lies in the cut plane, oriented consistently toward the removed side.

This guards the upcoming rewrite of fillContours2D to triangulate in the mesh's own 3D space — replacing the current project → triangulate → pin-vertices round-trip (part of the PlanarTriangulation input-space refactor, following #6306 / #6309) — so that change can't silently alter the result. Triangle quality is intentionally not pinned (the current fill emits slivers, and the exact triangulation isn't a stable invariant).

Test-only; no production code changed. Verified passing against current fillContours2D.

🤖 Generated with Claude Code

Characterize fillContours2D filling a hole on a plane tilted off all axes (the existing test only covers an axis-aligned z=0 cut). Pins the stable invariants: the hole closes watertight, boundary vertices are reused in place (no drift/duplication), and the patch lies in the cut plane oriented consistently. Guards the upcoming mesh-space rewrite of fillContours2D against silent behavior changes. Test-only.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@Grantim Grantim merged commit d5a5f5a into master Jun 23, 2026
40 checks passed
@Grantim Grantim deleted the pt-fillcontours2d-test branch June 23, 2026 21:15
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