Skip to content

Add igl::predicates, igl::spectra, and lexicographic_triangulation bi…#303

Merged
alecjacobson merged 1 commit into
mainfrom
spectra-and-lexicographic-triangulation
Jul 14, 2026
Merged

Add igl::predicates, igl::spectra, and lexicographic_triangulation bi…#303
alecjacobson merged 1 commit into
mainfrom
spectra-and-lexicographic-triangulation

Conversation

@alecjacobson

Copy link
Copy Markdown
Contributor

…ndings

  • src/predicates/: full igl::predicates submodule (14 binding files) covering Orientation enum, orient2d/3d (scalar + vectorized), incircle, insphere, ear_clipping, delaunay_triangulation, lexicographic_triangulation, find_intersections, find_self_intersections, point_inside_convex_polygon, polygons_to_triangles, segment_segment_intersect, triangle_triangle_intersect; exactinit() called at module load time
  • src/spectra/: igl::spectra submodule with eigs (SM/LM + sigma overloads), lscm, and EigsType enum
  • src/lexicographic_triangulation.cpp: floating-point variant in igl:: namespace
  • CMakeLists.txt: LIBIGL_SPECTRA and LIBIGL_PREDICATES options enable the respective libigl cmake targets (Spectra, Shewchuk predicates) via FetchContent
  • README.md: fix typo; add wheel-from-existing-build section
  • pyproject.toml: bump version to 2.6.3.dev3
  • .gitignore: broaden out.obj → out.*; add wheelhouse/
  • tests/test_all.py: 17 new tests (3 spectra/lexicographic, 14 predicates)

…ndings

- src/predicates/: full igl::predicates submodule (14 binding files) covering
  Orientation enum, orient2d/3d (scalar + vectorized), incircle, insphere,
  ear_clipping, delaunay_triangulation, lexicographic_triangulation,
  find_intersections, find_self_intersections, point_inside_convex_polygon,
  polygons_to_triangles, segment_segment_intersect, triangle_triangle_intersect;
  exactinit() called at module load time
- src/spectra/: igl::spectra submodule with eigs (SM/LM + sigma overloads),
  lscm, and EigsType enum
- src/lexicographic_triangulation.cpp: floating-point variant in igl:: namespace
- CMakeLists.txt: LIBIGL_SPECTRA and LIBIGL_PREDICATES options enable the
  respective libigl cmake targets (Spectra, Shewchuk predicates) via FetchContent
- README.md: fix typo; add wheel-from-existing-build section
- pyproject.toml: bump version to 2.6.3.dev3
- .gitignore: broaden out.obj → out.*; add wheelhouse/
- tests/test_all.py: 17 new tests (3 spectra/lexicographic, 14 predicates)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@alecjacobson alecjacobson merged commit 394ec4b into main Jul 14, 2026
39 checks passed
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