distance_line_line — 3D geometry op

• Datenarten: primitive → measurement

• Aufruf: import fullseye as fs; fs.ledger.distance_line_line(p1, d1, p2, d2) (die Implementierung direkt: import match3d; match3d.distance_line_line(p1, d1, p2, d2); aus dem Register: ops3d.get("distance_line_line"))

Verwendung

Der Abstand zweier Geraden (auch windschiefer). Bei Parallelität weicht er auf den Punkt-Geraden-Abstand aus.

★Dies ist der Abstand unendlicher Geraden. Bei endlichen Strecken wie Gliedmaßen, Roboterlinks oder Rohren kann 0 herauskommen, obwohl sie getrennt sind (gemessen: (0,0,0)-(1,0,0) und (5,0,0)-(6,0,0) ergeben 0.0, Ground Truth 4.0). Für Streckenpaare distance_segment_segment verwenden — wer das bei der Sicherheitsabstandsprüfung verwechselt, liegt auf der Seite, die die Gefahr unterschätzt.

Bildet n = d̂1 × d̂2; bei |n| < 1e-9 (parallel) distance_point_line(p2, p1, d1), sonst |(p2 − p1)·n̂| (Länge des gemeinsamen Lots) als float. Bei sich schneidenden Geraden 0. p1, d1, p2, d2 sind numerische 2- oder 3-Vektoren; gemischte Dimensionen ergeben ValueError. Nicht parallele Geraden in 2-D schneiden sich, der Abstand müsste also 0 sein, aber da np.cross ein Skalar wird, schlägt @ fehl (in 2-D kommt nur der parallele Fall durch). In 3-D verwenden. Einheit = Einheit der Eingabekoordinaten.

Einsatz: Koaxialität von 2 Achsen (fit_line_3d), Lochabstand.

Referenzen (Beispieldaten, Literatur)

• Katalog der Beispieldaten (Download-URLs / Lizenzen) — 2-D nutzt skimage.data (BSD/Public Domain) plus synthetische Bilder, 3-D nennt Download-URLs echter Datenquellen (Stanford, PDS, …).

• Herkunft und Literatur der Operatoren — die Quellen der Forschung/Verfahren, auf denen diese Operatorfamilie beruht.

Ausführbare Beispiele (verifizierte Samples, die diesen Operator wirklich aufrufen)

• geometry_metrology — py -3.11 examples_3d/geometry_metrology.py

Typkompatible Folge-Operatoren (nehmen measurement als Eingabe)

vol_gaussian_psf · fuse_to_voxel · fresnel_reflectance · snell_angle

Gleiche Kategorie (geometry)

line_from_2points · plane_from_3points · angle_3points · angle_between_lines · angle_between_planes · angle_line_plane · distance_point_plane · distance_point_line


*Provenance: match3d.py — 3D Operator-Registry. Diese Notiz wird von tools/opdocs.py md erzeugt (nicht von Hand bearbeiten).*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.