Validate that coordinate systems of curve definitions match #1973
Labels
topic: core
Issues relating to core geometry, operations, algorithms
type: feature
New features and improvements to existing features
The curve that a
HalfEdge
is on is defined in local surface coordinates, through itspath
field. There are usually multiple such local definitions that refer to the same curve.HalfEdge
refers to aCurve
object (and as of this writing, still to a redundantGlobalEdge
object, but that's on its way out; see #1937), to keep track which edges lie on the same curve.There are validation checks to make sure that this all works properly, i.e. that coincident
HalfEdge
s refer to the sameCurve
, and thatHalfEdge
s that refer to the same curve are coincident. However, there is currently no validation check to make sure that the local path coordinate systems match. The path coordinate0
of one edge might refer to a different point of the curve than the coordinate0
on another edge.This is turning out to be problematic (see #1968, for example; but this also affects my work on #1937). I think it's reasonable to expect all of those local coordinate systems to match each other, so each curve has a defined coordinate system. I'm not sure how difficult it would be to make this change, but a reasonable first step might be to enforce this through a validation check and see how much breaks.
Since this directly affects my work on #1937, I'm looking into this now.
The text was updated successfully, but these errors were encountered: