Autor Téma: Prevod S-JTSK na WGS84?  (Přečteno 2213 krát)

Offline vandrovnik

  • Padawan
  • ******
  • Příspěvků: 1584
  • Karma: 52
    • Verze Delphi: 11.3
Re:Prevod S-JTSK na WGS84?
« Odpověď #15 kdy: 17-10-2023, 20:09:02 »
Ahoj, tu unitu jsem doposlal, to jsem si neuvědomil, pardon.

Test:
Kód: [Vybrat]
program Test102;

{$APPTYPE CONSOLE}

{$R *.res}

uses
  System.SysUtils,
  GpsWgs84 in 'GpsWgs84.pas',
  GpsCoord in 'GpsCoord.pas';

procedure Test;
 var Sirka, Delka: double;
     JtskX, JtskY: double;
     Jtsk: tMapCoord;
 begin
 Sirka:=50.09201666532517;
 Delka:=14.403979936322918;
 WGS84toJTSK(Sirka, Delka, Jtsk);
 writeln('Sirka = ', Sirka:14:11, ', delka = ', Delka:14:11, ', JTSK Y = ', Jtsk.Y:14:6, ', JTSK X = ', Jtsk.X:14:6);
 JTSKtoWGS84(Jtsk, Sirka, Delka);
 writeln('Sirka = ', Sirka:14:11, ', delka = ', Delka:14:11, ', JTSK Y = ', Jtsk.Y:14:6, ', JTSK X = ', Jtsk.X:14:6);
 WGS84toJTSK(Sirka, Delka, Jtsk);
 writeln('Sirka = ', Sirka:14:11, ', delka = ', Delka:14:11, ', JTSK Y = ', Jtsk.Y:14:6, ', JTSK X = ', Jtsk.X:14:6);
end;

begin
Test;
readln;
end.

Na výstupu:
Sirka = 50.09201666533, delka = 14.40397993632, JTSK Y =  743965.133957, JTSK X = 1042342.849943
Sirka = 50.09201660261, delka = 14.40397991119, JTSK Y =  743965.133957, JTSK X = 1042342.849943
Sirka = 50.09201660261, delka = 14.40397991119, JTSK Y =  743965.136691, JTSK X = 1042342.856607



Offline miroB

  • Guru
  • *****
  • Příspěvků: 634
  • Karma: 17
    • Verze Delphi: D1,2,3,4,7,2005 .. D Tokyo 10.2.3 Pro C/S
Re:Prevod S-JTSK na WGS84?
« Odpověď #16 kdy: 17-10-2023, 20:48:03 »
Ahoj, tu unitu jsem doposlal..
Tak som unitu zapojil a výpočet ma príjemne prekvapil, teraz vychádza rozdiel 7 m. (voči Google maps)
Takto mi vyšiel aktualizovaný výsledok: 50.0919964399405,14.403889203004

ReverseGeocode via Nominatim (viď môj predošlý príspevok), ten ukazuje rozdiel 6 metrov voči G. maps. To sú už veľmi dobre porovnateľné hodnoty!
Možno som sa mýlil aj u tej bakalárky (bola spracovaná v roku 2007, delphi zdrojáky sú z rokov 2001-2004), lenže tam aj ten "Wgs84.exe". dával ozaj iný (slabý) výsledok..
Poznámky :
  • Celý tento prevodný problém sa týka len ČR (Křovákova projekcia - špecialita ČR, na dané miesto ideálna, používala sa v celej ČSR). Slovenské podklady (gov.sk) sú priamo GPS kompatibilné, aj keď to je ETRS89 a nie GTS84
  • K SK adresám (ETRS89 - európa):
    GIS tools usually do not make any difference between WGS84 and ETRS89. Difference is important in geodetic research. Odkaz:https://gis.stackexchange.com/questions/209986/transformation-parameters-from-etrs89-2004-to-wgs84
  • V spomínanej bakalárke zdrojáky nehľadajte! Aktuálne sú už nedostupné. Len ten exe sa snáď tou cesto nájde (ale je veľmi archaický a aj nepresný)

« Poslední změna: 17-10-2023, 21:13:21 od miroB »

Offline vandrovnik

  • Padawan
  • ******
  • Příspěvků: 1584
  • Karma: 52
    • Verze Delphi: 11.3
Re:Prevod S-JTSK na WGS84?
« Odpověď #17 kdy: 18-10-2023, 09:26:05 »
7 m je stejně nějak podezřele moc.

Pro ČR se dá na https://nahlizenidokn.cuzk.cz/VyberKatastrMapa.aspx zobrazit mapa, zkus tam najít nějaké místo blízko slovenských hranic. Dole je pak ikonka Lokalizace WGS-84. V okně, co vyběhne, se po kliknutí do mapy dá zjistit, jaké souřadnice to místo má v WGS-84 i v JTSK. Věřím, že rozdíl oproti hodnotám, co vypočítá ta zaslaná unita, bude o dost menší než 7 metrů. Jinak i ten katastr tam varuje, že převod není jednoznačný a že to není úplně přesné.


Offline miroB

  • Guru
  • *****
  • Příspěvků: 634
  • Karma: 17
    • Verze Delphi: D1,2,3,4,7,2005 .. D Tokyo 10.2.3 Pro C/S
Re:Prevod S-JTSK na WGS84?
« Odpověď #18 kdy: 19-10-2023, 15:15:50 »
Príležitostne sa môžno k téme vrátim.
Pre moje použitie má prednosť zobrazenie WGS84 ( Využívané pre GPS ).
Nemu zodpovedajú rôzne web aplikácie Geocoding a ReverseGeocoding. Nakoľko tie sú dátovo limitované, chcel som ísť dostupnou cestou z Adries ČR a SK.
Tie dve karajiny sú v oblasti môjho záujmu. Ale nie výlučne.
Slovensko našťastie uvádza adresy v dobre kompatibilnom ETRS89. Problém nastal s ČR ( lokácia v Křovák-ových súradniciac).
Dúfal som, že to bude bezbolestný, mechanický a primerane presný prevod. Nie je a ani to tak nie je prezentované v dostupných materiáloch.
Preto v tejto fáze ČR vynechám a šetrne použijem geocoding API.
Nepolemizujem o presnosti. Je zrejmé, že Křovák/S-JTSK je pre ČR ideálna projekcia.
Lenže u mňa primárne nejde o geodéziu, ale o zobrazenie v Google, alebo OSM mapách a najmä o štatistiky, ktoré sa k nim vzťahujú.
Problém JTSKtoWGS momentálne pre tieto účely vidím ako slepú cestu (menej vhodnú ako GEO API).
Možno sa raz vrátim, ale teraz musím ísť za hlavným cieľom. Ak by bola ČR dominanta môjho snaženia, bolo rozhodoval by som sa zrejme inak..

Offline Jiří Bílý

  • Nováček
  • *
  • Příspěvků: 2
  • Karma: 0
    • Verze Delphi: 11.3
Re:Prevod S-JTSK na WGS84?
« Odpověď #19 kdy: 22-10-2023, 18:37:52 »
Pokud potřebuješ pracovat se seznamem českých adres, tak existují dva zdroje dat. Jeden je RÚIAN, ten pravděpodobně používáš, protože ten je jen v S-JTSK. Druhý zdroj je tady: https://services.cuzk.cz/gml/inspire/ad/epsg-4258/. Ten má souřadnice v ETRS89.