Skip to content

Add cross-field-related python bindings#295

Merged
alecjacobson merged 7 commits into
libigl:mainfrom
qnzhou:main
Jan 27, 2026
Merged

Add cross-field-related python bindings#295
alecjacobson merged 7 commits into
libigl:mainfrom
qnzhou:main

Conversation

@qnzhou

@qnzhou qnzhou commented Dec 29, 2025

Copy link
Copy Markdown
Contributor

Summary:

  • Add python binding to the following functions:
    • comb_cross_field
    • comb_frame_field
    • compute_frame_field_bisectors
    • cross_field_mismatch
    • find_cross_field_singularities
    • rotate_vectors

@alecjacobson

Copy link
Copy Markdown
Contributor

Thanks. Do you mind adding tests? Just calling the function with valid input is enough.

@alecjacobson

Copy link
Copy Markdown
Contributor

I'm not sure why the CI isn't launching...

@qnzhou

qnzhou commented Jan 22, 2026

Copy link
Copy Markdown
Contributor Author

I'm not sure why the CI isn't launching...

It seems the result of igl.find_cross_field_singularities is incorrect on ubuntu nodes.

@qnzhou

qnzhou commented Jan 22, 2026

Copy link
Copy Markdown
Contributor Author

I updated the unit test to avoid using principal curvatures (which is a per-vertex quantity). However, the unit test is still failing the Poincaré-Hopf test. Not sure why. Maybe I am interpreting SingularityIndex wrong?

@alecjacobson

Copy link
Copy Markdown
Contributor

Oh cool. You put real tests. So far the python tests have been mostly of the style does this function not crash when called with valid input. (and relying on C++ libigl unit tests to do more real testing of functional correctness).

@alecjacobson alecjacobson merged commit 0918771 into libigl:main Jan 27, 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.

2 participants