Sort out validation #1129
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
The data structures in Fornjot's kernel can represent shapes that aren't actually valid. Vertices whose curve (1D) coordinates don't match their global (3D) coordinates, half-edges that intersect other half-edges, cycles whose half-edges aren't actually connected to each other... you name it. There are lots of ways to mess up the construction of those data structures accidentally.
The way to deal with that is validation. Validation is code that inspects objects (like those vertices, half-edges, or cycles I mentioned) and determines whether they are valid. There are three kinds of validation:
All of this is not fully implemented, and in fact it's a bit of a moving target. In the past, validation has been added to track down specific bugs, or has been removed because it got in the way of changes that had to be made. Because validation is such a moving target, it has been difficult to track it with issues. There are a few open right now, and most of them are out of date in some way.
To simplify things, I've decided to close all of open validation issues and replace them with a single, more general one (this issue). Any information that is relevant can just be added here. Once things settle down again, we can once again split this up and create more specific issues.
The text was updated successfully, but these errors were encountered: