Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add integration test for triangle mesh quality #54

Closed
hannobraun opened this issue Jan 20, 2022 · 1 comment · Fixed by #481
Closed

Add integration test for triangle mesh quality #54

hannobraun opened this issue Jan 20, 2022 · 1 comment · Fixed by #481
Assignees
Labels
topic: core Issues relating to core geometry, operations, algorithms type: development Work to ease development or maintenance, without direct effect on features or bugs

Comments

@hannobraun
Copy link
Owner

To prevent any regressions to the quality of the generated triangle meshes, it would be great to have some kind of test suite that builds a triangle mesh for each of the models in this repository, and checks that mesh for quality. Either by using parts of Fornjot as a library and checking internal data structures directly, or by exporting a 3MF/STL/... file and checking that.

This test suite wouldn't check if the generated mesh was correct for the specific model, but would just check the mesh itself for correctness:

  • Is the mesh manifold?
  • Are triangle normals consistent?
  • Are there duplicate or overlapping triangles?

And whatever other ways a mesh can be wrong (please comment, if you can think of another one).

Maybe there are libraries in the Rust ecosystem we could use for this, or maybe there's some suitable command-line tool. (I do know that slicers routinely do this kind of check, so maybe it's possible to use one from the command-line for this purpose. But a Rust library would be nicer, all else being equal.)

@hannobraun hannobraun added type: development Work to ease development or maintenance, without direct effect on features or bugs topic: core Issues relating to core geometry, operations, algorithms labels Jan 20, 2022
@hannobraun
Copy link
Owner Author

I've started looking into this, as part of addressing #339 and #451. Most likely, I'll address this by including a 3MF validator in the CI build somehow.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
topic: core Issues relating to core geometry, operations, algorithms type: development Work to ease development or maintenance, without direct effect on features or bugs
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant