geometry op• Data kinds: points → measurement
• Call: import fullseye as fs; fs.ledger.angle_3points(a, b, c) (to call the implementation directly, import match3d; match3d.angle_3points(a, b, c); from the registry, ops3d.get("angle_3points"))
The angle at three points (vertex b, in degrees). ∠ABC.
Returns arccos(û·v̂) (u = a − b, v = c − b) in degrees (float). The value is in [0, 180] and has no sign (even in 2-D the direction of rotation is not distinguished). The arguments are numeric 2- or 3-vectors; mixed dimensions raise ValueError. If a == b or c == b, the dot product with the zero vector is 0 and 90 is returned (no exception). The dot product is clipped to [−1,1], so numerical error does not produce NaN.
Uses: measuring bend angles and joint angles, the angle around the intersection of 2 lines obtained by fit_line_3d.
• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).
• Operator provenance and references — the sources of the research/methods this op family came from.
• geometry_metrology — py -3.11 examples_3d/geometry_metrology.py
measurement as input)vol_gaussian_psf · fuse_to_voxel · fresnel_reflectance · snell_angle
geometry)line_from_2points · plane_from_3points · angle_between_lines · angle_between_planes · angle_line_plane · distance_point_plane · distance_point_line · distance_line_line
*Provenance: match3d.py — 3D operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.