plane_from_3points — 3D geometry op

• Data kinds: points → primitive

• Call: import fullseye as fs; fs.ledger.plane_from_3points(a, b, c) (implementation को सीधे call करना हो तो import match3d; match3d.plane_from_3points(a, b, c), registry से लेना हो तो ops3d.get("plane_from_3points"))

उपयोग

3 points → plane (उस पर एक point, unit normal)। 3 coordinates से plane तय होता है (2D/3D दोनों में)।

लौटाता है (a, n): a पहला (1) point है, n, n = (b−a)×(c−a) का unit किया गया रूप है (दिशा a→b→c के right-hand screw के अनुसार)। arguments संख्यात्मक 2 या 3 vector हैं (अन्य कुछ या आयामों का मिश्रण ValueError देता है)। 3 points एक ही रेखा पर हों तो n zero vector ही लौटता है (exception नहीं आता)। 2 आयामी points देने पर np.cross scalar (signed area का 2 गुना) लौटाता है, इसलिए n vector नहीं बल्कि ±1 का scalar बनता है। 2-D में रेखा का normal चाहिए तो line_from_2points की दिशा को 90° घुमाकर उपयोग करें।

आगे: इस (a, n) को distance_point_plane / intersect_line_plane / intersect_planes / angle_between_planes को दें। point cloud से fit_plane_3d।

संदर्भ (sample data, साहित्य)

• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।

• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।

चलाए जा सकने वाले उदाहरण (verified samples जो सच में यह op call करते हैं)

• geometry_metrology — py -3.11 examples_3d/geometry_metrology.py

वे अगले ops जिनसे type जुड़ता है (primitive को input के रूप में लेते हैं)

fuse_to_voxel · angle_between_lines · angle_between_planes · angle_line_plane · distance_point_plane · distance_point_line · distance_line_line · distance_segment_segment

इसी category के (geometry)

line_from_2points · angle_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. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*

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