Live Geometry Validation & Feedback
Most geometry errors currently go unhandled until well into the internals of the library, at which point the error might be hard to trace back to the geometry that caused it. This is especially true for errors raised by the Triangle binaries.
A solution to this would be parsing and validating the geometry before it is loaded into any external tools. These checks would be available as standalone tools, via the processing toolbox, as well as called by the GUI before running any other expensive operations.
Potential Checks
The following list tracks any checks that could be performed as part of this validation.
- Break line segments whos length is greater than the snapping tolerance within the same order of magnitude
- Individual points whos distance is greater than the snapping tolerance, but that are in the same order of magnitude
- Very short line segments
- Collinear line segments (break lines on leading edge of mesh)
- Duplicate lines
- Empty input geometry
- Non-closed breakline loop
- Any segments or points that would be deleted by shrink-to-segments
- Any points or break lines that are destroyed by the current snapping tolerance settings