pub fn refine_node(
a: &NurbSurface3D,
b: &NurbSurface3D,
seed: [Scalar; 4],
) -> Option<([Scalar; 4], Vector3)>Expand description
The node near seed where a and b touch at an isolated point —
branches of the curve they meet in cross there, or they touch at that
point alone — as its parameters (u_a, v_a, u_b, v_b) and the point,
or None where Newton finds no such point, or one not isolated: where
the surfaces touch along a curve or over an area, the system is singular
and no node is claimed.
Gauss-Newton on S_a = S_b with the normals parallel, five equations in
four unknowns, each iterate sharpened as the seed of the next but the
last, whose width says how well the data pins the node down (see
AGENTS.md). The answer is then checked against every condition it was
asked to meet, over its box: both surfaces could be there, the normals
could be parallel, and the system is of full rank all over it.