geodesy op• Data kinds: कोई नहीं → points (केवल arguments से तय होने वाला op — यह कोई image या data input नहीं लेता)
• Call: import fullseye as fs; fs.ledger.dem_datum_shift_3param(lat_deg, lon_deg, h_m, dx_m, dy_m, dz_m, a_from_m, f_from, a_to_m, f_to) (implementation को सीधे call करना हो तो import demops; demops.dem_datum_shift_3param(lat_deg, lon_deg, h_m, dx_m, dy_m, dz_m, a_from_m, f_from, a_to_m, f_to), registry से लेना हो तो opsdem.get("dem_datum_shift_3param"))
geodetic datum बदलना — geocentric 3-parameter translation (points)।
एक ही "35 degrees 41 minutes उत्तर" भी पुराने Japanese geodetic system और world geodetic system में ज़मीन पर कई सौ metres दूर स्थानों की ओर इशारा करता है। यह op उस बदलाव को geocentric Cartesian coordinates में translation के रूप में करता है (बिना rotation या scale वाला Molodensky-Badekas case)::
ECEF(a_from, f_from) + (dx, dy, dz) -> geodetic(a_to, f_to)
★parameters के लिए कोई डिफ़ॉल्ट मान नहीं। किस datum से किस datum में, किस translation से, यह देश, क्षेत्र और संस्करण के अनुसार भिन्न होता है; चुपचाप मान लेने से "ऐसे coordinates मिलते हैं जो कोई exception नहीं उठाते पर कई सौ metres हटे हुए हैं" —— यही इस op के अस्तित्व का कारण है, इसलिए caller को इन्हें हमेशा लिखना होगा।
Args:
lat_deg / lon_deg: source datum में अक्षांश/देशांतर [deg]। Arrays अनुमत।
h_m: source datum में ellipsoidal ऊँचाई [m]।
dx_m / dy_m / dz_m: geocentric translation [m] (source → target)।
a_from_m / f_from: source ellipsoid का semi-major axis [m] और flattening।
a_to_m / f_to: target ellipsoid का semi-major axis [m] और flattening।
Returns:
(latitude[deg], longitude[deg], ellipsoidal height[m]) का (n, 3)।
बंद सूत्र से जाँचने योग्य: translation 0 और समान ellipsoid के साथ, identity transform (round-trip floor dem_ecef_to_geodetic के समान है)। जब केवल translation दिया गया हो, तो ज़मीन पर displacement उस point पर ECEF basis में विघटित उसके components से मेल खाता है।
ValueError: non-finite मान, ±90 से बाहर अक्षांश, non-positive semi-major axis, [0, 1) से बाहर flattening।
• dem_terrain_analysis family guide
• 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 में दिए गए हैं।
• poc_geodetic_benchmarks_real — py -3.11 examples/poc_geodetic_benchmarks_real.py
• poc_geodetic_height_frames — py -3.11 examples/poc_geodetic_height_frames.py
points को input के रूप में लेते हैं)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 note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.