forked from 1b-agent/fieldcraft-upstream
A region's corners are its interior angles below 135 degrees, and an O-grid's 45-degree cuts meet straight sides at exactly that angle. The computed angle then rounds either way with the last bits of its points, which differ between platforms' sin and cos and between tessellations: one ulp in three points of the slot test's arcs, Windows' sin against glibc's, turned a mapped region into a triangle and the whole blocking into a different one with a corner scaled Jacobian of 0.375 for 0.707. Angles within 1e-9 rad of the corner and reflex thresholds now count as on them, and on a threshold is smooth (neither a corner nor reflex), which keeps the slot's intended O-grid of 9 regions and 848 quads on Linux, macOS and Windows. The region classification and the O-grid's own corner tests share the rule, the slot test pins the blocking, and its arc helper uses the mesher's portable trig. Part of #556.