frame_axis — REPRCONV structure op

• Data kinds: frame → normals

• Call: import fullseye as fs; fs.ledger.frame_axis(frame, axis='tangent') (implementation को सीधे call करना हो तो import reprconv; reprconv.frame_axis(frame, axis='tangent'), registry से लेना हो तो opsreprconv.get("frame_axis"))

• GPU: नहीं (केवल CPU reference implementation)

उपयोग

Frenet frame frame → एक axis के unit vectors normals (N,3)। frame प्रकार से निकास।

> नीचे का विस्तृत विवरण मूल text में है — सारांश और headings का अनुवाद हो चुका है।

frenet_frame の返り (T, N, B)(各 (N,3))から axis の 1 本を取り出す:

"tangent" = 接線 T、"normal" = 主法線 N、"binormal" = 陪法線 B。取り出した列は点ごとの単位ベクトルなので normals 型に載る(normals_to_angles / normals_to_egi などがそのまま掛かる)。

frenet_frame は直線区間で N・B がほぼゼロベクトルになる(向き不定)。ここでは 長さ 0.5 未満の行を拒否する(黙って単位ベクトルのふりをさせない)。直線を含む曲線で N/B を使うなら、先に fit_spline_curve で滑らかにするか接線だけを使う。

Args:

frame: (T, N, B) の 3-tuple、各 (N,3)。

axis: "tangent" / "normal" / "binormal"。

Returns:

(N, 3) float64、各行は単位長(frenet_frame が正規化した値そのまま)。

Raises:

ValueError: 3-tuple でない / 形がそろわない / axis が不正 / 長さ 0.5 未満の行がある。

संदर्भ (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 के स्रोत।

• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।

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

• type_connectivity_tour — py -3.11 examples/type_connectivity_tour.py

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

normals_to_angles · normals_to_egi

इसी category के (structure)

knn_graph_to_conn_graph · pointmap_to_points · match_component


*Provenance: reprconv.py — REPRCONV operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*

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