fullseye

dem_datum_shift_3param — DEM geodesy op

使い方

測地成果(datum)の乗り換え —— 地心 3 パラメータの平行移動(points)。

同じ「北緯 35 度 41 分」でも、旧日本測地系と世界測地系では地上で数百メートル 離れた点を指す。この op はその乗り換えを、地心直交座標での平行移動 (Molodensky-Badekas の回転・縮尺なしの場合)として行う::

ECEF(a_from, f_from) + (dx, dy, dz) -> 測地座標(a_to, f_to)

★パラメータに既定値を置かない。どの成果からどの成果へ、どの平行移動量で 移すのかは国・地域・版で違い、黙って仮定すると「例外は出ないが数百メートル ずれた座標」が出る —— それがこの op の存在理由なので、呼び手に必ず書かせる。

Args: lat_deg / lon_deg: 元の成果での緯度・経度 [度]。配列可。 h_m: 元の成果での楕円体高 [m]。 dx_m / dy_m / dz_m: 地心の平行移動量 [m] (元 → 先)。 a_from_m / f_from: 元の楕円体の長半径 [m] と扁平率。 a_to_m / f_to: 先の楕円体の長半径 [m] と扁平率。 Returns: (n, 3) の (緯度[度], 経度[度], 楕円体高[m])。

閉じた式で検査できること: 平行移動 0 かつ同じ楕円体なら恒等変換 (往復の床は dem_ecef_to_geodetic と同じ)。平行移動だけを与えたときの 地上の移動量は、その点の ECEF 基底で分解した成分と一致する。

ValueError: 非有限、緯度が ±90 を外れる、長半径が非正、扁平率が [0, 1) を外れる。

詳しい使い方ガイド

参考(サンプルデータ・文献)

実行できる例(この op を実際に呼ぶ検証済みサンプル)

型が繋がる次の op(points を入力に取れる)

dem_ecef_to_geodetic · dem_geodetic_from_enu

同カテゴリ(geodesy)

dem_geodetic_to_ecef · dem_ecef_to_geodetic · dem_geocentric_grid · dem_earth_curvature_drop · dem_cell_size_webmercator · dem_geodetic_slope · dem_geoid_height · dem_height_frame_convert


Provenance: demops.py — DEM operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。

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