You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I keep having headaches with using emeraldtriangles because I try to run a process that involves adding triangles to an existing mesh, the process fails but does not return an error message. I know that this is the cause in supplant_triangles because the external function triangle.triangulate fails without throwing an error; instead, the inputs are simply returned. (I suspect there may be a similar issue with scipy.spatial.Delaunay in replace_triangles). Almost every time, I find that the error is caused by some issue in the triangulation that I give as input. It might be overlapping triangles, triangles with 0 area, duplicate vertices, and many other things. But it takes me ages to dig and uncover these issues.
goal
make a standard set of validations and checks, and warn users of potential issues with their triangulation.
running list of checks to run and implement
triangles with 0 area
duplicate vertices
overlapping points and vertices
overlapping triangles (this one might be hard to implement)
other requirements
Rather than throwing a warning at the first validation check, I recommend doing all the tests, then throwing a warning giving details for all the ways the triangulation is invalid. One triangulation can fail multiple validation tests above.
Maybe we should have a setting where if there is a cleanup function to address one of the issues above, we run the cleanup on the function?
For example, for cases with duplicated vertices and points, we could use the function emeraldtriangles.cleanup.remove_overlapping_points_vertices.
one complication: some cleanup functions have keyword parameters whose default value is not always appropriate (e.g., "keep" for remove_overlapping_points_vertices). Where does the user set those parameter values for the auto-run cleanup after validation checks?
The text was updated successfully, but these errors were encountered:
Motivation
I keep having headaches with using emeraldtriangles because I try to run a process that involves adding triangles to an existing mesh, the process fails but does not return an error message. I know that this is the cause in supplant_triangles because the external function
triangle.triangulate
fails without throwing an error; instead, the inputs are simply returned. (I suspect there may be a similar issue withscipy.spatial.Delaunay
in replace_triangles). Almost every time, I find that the error is caused by some issue in the triangulation that I give as input. It might be overlapping triangles, triangles with 0 area, duplicate vertices, and many other things. But it takes me ages to dig and uncover these issues.goal
make a standard set of validations and checks, and warn users of potential issues with their triangulation.
running list of checks to run and implement
other requirements
emeraldtriangles.cleanup.remove_overlapping_points_vertices
.remove_overlapping_points_vertices
). Where does the user set those parameter values for the auto-run cleanup after validation checks?The text was updated successfully, but these errors were encountered: