symmetry op• Datenarten: points → points
• Aufruf: import fullseye as fs; fs.ledger.reflect_points(points, plane_point, plane_normal) (die Implementierung direkt: import symmetry3d; symmetry3d.reflect_points(points, plane_point, plane_normal); aus dem Register: ops3d.get("reflect_points"))
Spiegelt eine Punktmenge an einer Ebene (Punkt plane_point, Normale plane_normal). → (N,3).
Bestimmt für jeden Punkt p den vorzeichenbehafteten Abstand zur Ebene d = (p - plane_point) · n (n ist die normierte Normale) und gibt p' = p - 2 d n zurück (Householder-Spiegelung). Punkte auf der Ebene bewegen sich nicht; Punkte beiderseits der Ebene tauschen die Seiten. Die Reihenfolge der Punkte bleibt erhalten, daher ist p'[i] das Spiegelbild von p[i]. Die Koordinateneinheit bleibt unverändert.
• points: Array (N,3) (in float umgewandelt). Die Form wird nicht geprüft.
• plane_point: 1 Punkt auf der Ebene (3,). plane_normal: Normale (3,) (beliebige Länge, intern normiert. Das Vorzeichen beeinflusst das Ergebnis nicht).
Hinweis: Die Normale wird durch ihre Norm plus 1e-12 geteilt, daher löst ein Nullvektor keine Ausnahme aus, und die Punktwolke wird nahezu unverändert zurückgegeben (nicht fail-closed). Neben der internen Verwendung in reflection_symmetry_score / detect_reflection_symmetry eignet es sich auch zur Formvervollständigung, die die fehlende Seite mit einer erkannten Symmetrieebene auffüllt (Spiegelbild an die ursprüngliche Punktwolke anhängen).
• 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.
• reflection_symmetry — py -3.11 examples_3d/reflection_symmetry.py
points als Eingabe)points_to_voxel · gaussians_to_voxel · estimate_point_normals · to_points · match_points_ncc · match_pca · moment_axes · icp_point2point_3d
symmetry)detect_reflection_symmetry · detect_rotational_symmetry · reflection_symmetry_score
*Provenance: symmetry3d.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.