Article View: pl.comp.gis
Article #12013Re: Formuła transformacji z GPS do układu 65
From: user.80
Date: Fri, 26 Jun 2009 21:11
Date: Fri, 26 Jun 2009 21:11
146 lines
8180 bytes
8180 bytes
Mateusz Loskot pisze: > user.80 wrote: >> Mateusz Loskot pisze: >>> user.80 wrote: >>>> Mateusz Loskot pisze: >>>>> "user.80" <user.80@buziaczek.pl> wrote in message >>>>> news:h1pqko$k6r$1@news.onet.pl... >>>>>> Posiadam bazę danych *.mdf ze współrzędnymi punktów z GPS, >>>>>> np. >>>>>> Latitude Longitude >>>>>> 54,21406833 21,52258333 >>>>>> Czy posiada ktoś może formułę do przeliczenia tych współrzędnych na >>>>>> układ 65 w Excelu? >>>>> Ja tam bym zrzucił współrzędne do pliku tekstowego i przetransformował >>>>> przy pomocy OGR + Python >>>>> (http://trac.osgeo.org/gdal/wiki/GdalOgrInPython) >>>>> >>>>> Szybki przykład, nie testowałem ale powinno być OK: >>>>> >>>>> from osgeo import osr >>>>> wgs84 = osr.SpatialReference() >>>>> pl65 = osr.SpatialReference() >>>>> wgs84.ImportFromEPSG(4326) >>>>> pl65.ImportFromEPSG(3120) // 65, Strefa I >>>>> ct = osr.CoordinateTransformation(wgs84, pl65) >>>>> pl65pt = ct.TransformPoint(lon, lat) >>>>> print pl65pt >>>> No pięknie, ja tu z palącym problemem, głowę sobie łamię, >>>> a kolegę żarty się trzymają. >>>> Nic nie rozumiem z tego "from osgeo...", >>>> ani jedno słowo nic mi nie mówi, >>>> więc teza że to łatwe i szybkie zdecydowanie odpada. >>> Napisałem, że to skrypt w języku Python. >>> Założyłem, że nie straszne Koledze jakieś ArcView Avenue itp. >>> więc i z tym sobie poradzisz :-) >>> >>>> Otóż wyżebrałem informacje od kolegów geodezjuszy, >>>> że te moje współrzędne to jakiś tajemny format DD.DDDDDDD, >>> Jaki tam tajemny, przeca to decimal degrees. >>> >>>> nawet przeliczyli mi te punkty jakimś OEM-owym softem od ich GPSa, >>>> ale nie znają formuły do Excela ani Mathcada. >>>> Czy w ogóle możliwe jest, że jest taka formuła? >>> Jest, ale nikt normalny tego nie robi w Excelu :-) >>> Skrypt, program do przeliczania z obsługą formatów jak Shapefile, czy >>> Mapinfo, kombajny jak Arc*, i inne. >>> Ale Excel do tych zajęć to rzeźba... >>> >>>> Nikt w całym usenecie nie wie jak to przeliczyć "na piechotę"? >>> Poświęć Kolego weekend na naukę podstaw podstaw podstaw języka Python >>> i rzeczy staną się trywialne. >> Mam nauczyć się języka programu, aby być zdolnym dostarczyć jemu >> stosowne dane oraz odpowiednio sformułować swoje oczekiwanie, a on >> pomyśli i poda mi wynik? Czy dobrze zrozumiałem? > > Źle. Chodzi o pszyswojenie jednej kartki A4, prostych poleceń. > Umiejętności programowania formuł w Excel'u chyba się nie > wysysa z mlekiem matki, prawda? > >> Być może w twoim fachu role pracownika fizycznego i inżyniera odwróciły >> się niepostrzeżenie, ale w moim to tak nie działa. >> Owszem, używam różnego softu, który wspomaga moją pracę, ale żaden nie >> robi niczego, czego sam bym nie potrafił z kalkulatorem w ręku. > > Ja o tym właśnie. Zamiast stukać setki razy w klawisze kalkulatora, > wolę sobie zaprogramować owo wystukiwanie. Obie czynności wymagają > wiedzy o problemie, więc nie rozumiem skąd aluzja do pracownika > fizycznego. > >> Dodatkowo bez względu na użyty soft, wyrywko sprawdzam siły i naprężenia >> w losowo wybranych miejscach i sprawdzam poprawność dobranego przekroju. >> Nie stać mnie na błędy programu, które prawdopodobnie kosztowałyby duże >> pieniądze, a nawet ludzkie życie. > > Ależ Panie inżynierze, błędy 10-linijkowego programu to są błędy na > poziomie omsknięcia się palca na klawiaturze kalkulatora. > Z tym, że te pierwsze są korygowalne z automatycznym uzyskaniem > poprawnego wyniku, a te drugie za pomocą powtórzenia tych samych > błędotwórczych kroków. > >> Dlatego wolę nauczyć się algorytmu, który będzie mi służył przez resztę >> życia, niż ulegać chwilowym trendom w obsługiwanym oprogramowaniu. > > Z całym szacunkiem, ale bzdury Pan wypisujesz. > Sama znajomość algorytmu nie rozwiązuje problemu. Algorytm jest tożsamy > z przepisem na zrobienie ciasta. Oprócz jego znajomości należy owo > ciachu upichcić. Już starożytni wykoncypowlai, że pichcenie można > zautomatyzować. > > Nie ma to *nic* wspólnego z chwilowymi trendami, bo znając algorytm > można go implementować w niemal dowolnym narzędziu (języku). > Również w Excel'u, ale moim zdaniem jest to po prostu niewygodne i > nieoptymalne, bo istnieją narzędzia gotowe do użycia. > >> Jeśli transformacja pomierzy układami nie opiera się na teorii 2-go >> rzędu i nie wymaga rachunku różniczkowego, to Excel w zupełności >> powinien tu wystarczyć, podobnie jak kalkulator. > > Wystarczy, ale nie warto bo to zabawa z wielomianami 9-go i wyższych stopni. > >> Więc gdyby udało ci się kiedyś dowiedzieć, jakiego algorytmu używa >> obsługiwany przez ciebie program, to liczę na ten algorytm, ok? ;-) > > Dla układów obowiązujących na terenie Polski, > dokument "Wytyczne Techniczne G-1.10", GUGiK > Poszukaj dokumentów autorstwa Prof. Romana Kadaja jak > "Polskie Układy Współrzędnych" i pochodne. > > Dodatkowo http://www.atomnet.pl/~geodeta/2000/59text1.htm > > Dla Polskich i nie tylko, pełny pakiet implementacji: > > http://trac.osgeo.org/proj/browser/trunk/proj/src > > Trzeba było od razu napisać, że szukasz podstaw teoretycznych, > a nie gotowca. Aby nie wdawać się w dalsza zbędną dyskusję nadmienię tylko może, że przykładowo w Excelu wpisuję dane wyjściowe w kratki, obok wpisuje przykładowo "=MACIERZ.ODW()" i rozciągam myszą komórkę na tabelę. Tak umiem to robić i inne działania wykonuję z podobną prostotą, ale najważniejsze jest to, że wiem co liczę i mogę sobie to sprawdzić w dowolnym kroku. Implementowanie macierzy odwrotnej w jakimkolwiek języku z pewnością byłoby bardziej czasochłonne i trudniejsze do sprawdzenia, przynajmniej dla mnie. Dlatego poszukuję algorytmu, w którym wyjaśniane byłoby co i jak mam krok po kroku liczyć. Ilość działań jest tu nie istotna, bo i tak przecież trzeba będzie je wykonać bez względu na rodzaj ich implementacji. Z moich obserwacji natomiast wynika, że geodeci używają dedykowanego im softu do swoich zawodowych celów, jednak bez tego softu są bezradni. Zresztą nie tylko oni. Umiejętności inżynierów coraz częściej sprowadzają się do obsługi jakiegoś programu i doskonalenia się w tej obsłudze. I tak, po doskonałym opanowaniu jakiegoś softu, stają się niejednokrotnie wysoko wykwalifikowanymi specjalistami, natomiast bez dostępu do softu, swoich ustawień czy spersonalizowanych bibliotek ich przydatność gwałtownie spada. W efekcie praktycznie do zera. We wskazanych przez ciebie linkach jest kilkadziesiąt plików i powiem szczerze, że nawet nie chce mi się ich przeglądać. Jeśli do tej pory nie zrozumiałeś o co mi chodzi, to prawdopodobnie już nie zrozumiesz, więc chciałbym ci podziękować za twoją dotychczasową pomoc i poświęcony czas. Poważnie, doceniam je i dziękuję, jednak nie chciałbym go więcej niepotrzebnie marnować. Pozdrawiam.
Technical Details
Message-ID:
<h23dil$3r6$1@news.onet.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!not-for-mailReferences:
<h1pqko$k6r$1@news.onet.pl> <h1vivn$ptg$1@inews.gazeta.pl> <h20dt8$500$1@news.onet.pl> <h20lvj$4jt$1@inews.gazeta.pl> <h21p1d$7n8$1@news.onet.pl> <h238g5$cuo$1@inews.gazeta.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!not-for-mail From: "user.80" <user.80@buziaczek.pl> Newsgroups: pl.comp.gis Subject: Re: Formuła transformacji z GPS do układu 65 Date: Fri, 26 Jun 2009 23:11:48 +0200 Organization: http://onet.pl Lines: 167 Message-ID: <h23dil$3r6$1@news.onet.pl> References: <h1pqko$k6r$1@news.onet.pl> <h1vivn$ptg$1@inews.gazeta.pl> <h20dt8$500$1@news.onet.pl> <h20lvj$4jt$1@inews.gazeta.pl> <h21p1d$7n8$1@news.onet.pl> <h238g5$cuo$1@inews.gazeta.pl> NNTP-Posting-Host: gpftor2.privacyfoundation.de Mime-Version: 1.0 X-Trace: news.onet.pl 1246050709 3942 85.25.152.185 (26 Jun 2009 21:11:49 GMT) X-Complaints-To: niusy@onet.pl NNTP-Posting-Date: Fri, 26 Jun 2009 21:11:49 +0000 (UTC) User-Agent: Thunderbird 2.0.0.22 (Windows/20090605) In-Reply-To: <h238g5$cuo$1@inews.gazeta.pl> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit