geometry op• 데이터 종류: primitive → position
• 호출: import fullseye as fs; fs.ledger.intersect_line_plane(line_pt, d, plane_pt, n)(구현을 직접 호출하려면 import match3d; match3d.intersect_line_plane(line_pt, d, plane_pt, n), 원장에서 가져오려면 ops3d.get("intersect_line_plane"))
직선 ∩ 평면 → 점(평행이면 None).
t = ((plane_pt − line_pt)·n̂)/(d·n̂)로 line_pt + t·d를 반환한다(float 배열). d는 단위화하지않는다(t는 d의 길이 단위). |d·n̂| < 1e-9이면 None(예외가 아니다. 반환값을 사용하기전에 None 확인). 면에 포함된 직선(거리 0이고 평행)도 None. 인자는 수치 2 또는 3 벡터이며, 차원이 섞이면 ValueError. 2-D에서는 n을 직선의 법선으로 보아 선과 선의 교점이 된다.
용도: 시선(depth_to_points의 점 − 원점)과 fit_plane_3d의 면의 교점, 레이와 기준면.
• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.
• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.
• geometry_metrology — py -3.11 examples_3d/geometry_metrology.py
position 를 입력으로 받는 것)refine_peak_newton · refine_translation_lk · refine_lm · fuse_to_voxel
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 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.