direction op• データ種: pairs → normals
• 呼び出し: import reprconv; reprconv.angles_to_normals(pairs) (または opsreprconv.get("angles_to_normals"))
方位・仰角の対 `(N,2) **[度]** → 単位法線 (N,3)。pairs` の出口。
:func:normals_to_angles の厳密な逆(単位長に正規化した意味で)。
仰角は [-90, 90] の外を拒否する —— 100 度の仰角は「反対側の 80 度」に
折り返してもっともらしく間違うので、黙って受けない。
Args:
pairs: (N, 2) [方位度, 仰角度]、または 2 本の等長 1-D のタプル。
Returns:
(N, 3) float64、行ごとに単位長。
Raises:
ValueError: 形状不正 / 非有限 / 仰角が [-90, 90] 外。
• サンプルデータ カタログ(DL URL / ライセンス) — 2-D は skimage.data(BSD/public)+ 合成、3-D は実データ源(Stanford/PDS 等)の DL URL。
• 演算子の来歴・参考文献 — この op 族の元になった研究/手法の出典。
• アルゴリズムの正典(著者・年)と用途は上記ファミリ使い方ガイドに記載。
• representation_roundtrip — py -3.11 examples/representation_roundtrip.py
normals を入力に取れる)normals_to_angles · normals_to_egi
direction)normals_to_angles · normals_to_egi
*Provenance: reprconv.py — REPRCONV operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.