W którym (x) miejscu dziesiętnym wartości współrzędnych QGIS określa, że dowolny zestaw punktów jest zduplikowany?
Myślałem, że QGIS zajmuje ~ 15 miejsce po przecinku; ale było to ograniczenie tylko dlatego, że pracowałem głównie nad Shapefiles.
Limit nie ma jednak zastosowania, gdy wybiorę inne źródło danych, na przykład tymczasowo zarysowaną warstwę.
Korzystając z danych fikcyjnych, takich jak poniżej, wykonałem szybki test za pomocą dwóch narzędzi, aby znaleźć najmniejszą wartość, jaką mogą zidentyfikować różnice we współrzędnych:
- Geoprzetwarzanie QGIS:
Delete duplicate geometries
- Wtyczka MMQGIS:
Delete Duplicate Geometries
Dane wyjściowe przez QGIS Delete duplicate geometries
są takie same jak powyższe dane wejściowe (wszystkie 20 zapisów zostało zachowanych), więc może to oznaczać, że QGIS uważa, że wszystkie są różne. Czy ten limit wykracza poza 1e-29 (lub 1e-30) w tym małym teście?
Dla porównania, MMQGIS Delete Duplicate Geometries
poniżej. Wygląda na to, że MMQGIS określa limit na 16 lub 17 miejsca po przecinku.
[Edytować]
Obawiam się, że nie byłam jasna, co było centralną częścią mojego pytania. Moim celem jest zrozumienie związku między wartościami współrzędnych a duplikatami / nakładaniem się, to znaczy, jak stwierdzono w pierwszym akapicie mojego pytania. Mamy nadzieję, że ten rodzaj wiedzy pomoże nam łatwo kontrolować nakładające się funkcje, modyfikując wyrażenia pola kalkulatora.
Jednak zasadniczą kwestią, na którą starałem się skupić, było to, że miejsca dziesiętne QGIS rozpoznaje punkty (węzły), ponieważ nakładanie się wydaje się różnić w zależności od źródła danych.
Jeśli użyjemy Shapefiles dla naszej warstwy, QGIS obsługuje ~ 15 miejsce po przecinku, a mniejsza różnica (16 lub 17) nie jest rozpoznawana ... Ograniczenie to wpływa na MMQGIS (moim zdaniem). Jeśli utworzymy warstwę tymczasowo zarysowaną lub warstwę DB, ograniczenie to znacznie wykracza poza 30-ty? Ta zmiana w zachowaniu mnie zastanawia.
Odpowiedzi:
Narzędzie QGIS Delete Duplicate Geometries (w Geoalgorytmach QGIS 2.18, Vector General Tools) to skrypt w języku Python, który działa na obiektach geometrycznych eksportowanych / odsłoniętych przez warstwę Python w QGIS. A pod tą warstwą znajduje się warstwa GEOS.
Operator równości geometrii warstwy GEO akceptuje parametr tolerancji (w jednostce odległości mapy) podczas porównywania dwóch geometrii. Niestety ten parametr tolerancji nie jest ujawniany przez warstwę Pythona QGIS - stąd w przypadku usuwania zduplikowanych geometrii dwie geometrie są uważane za równe wtedy i tylko wtedy, gdy wszystkie ich wartości XY są całkowicie równe. Np. POINT (1.000000 1.000000) nie jest równy POINT (1.00000001 1.00000001).
źródło
Interesującym czytaniem na ten temat jest to częste pytanie: Mierzenie dokładności szerokości i długości geograficznej?
Nie znam narzędzi zaprojektowanych do identyfikowania duplikatów, ale z obliczeniowego punktu widzenia jest to tylko kwestia sposobu, w jaki liczby są obsługiwane przez architekturę przechowywania jednostek i oprogramowanie, które je obsługuje. Zostaną wyświetlone dwie różne liczby,
FLASE
o ile język reprezentuje liczby w sposób, który robi różnicę, jeśli test jest taki, że nie są one równe. W wielu przypadkach celem duplikatu jest znalezienie takich samych wartości, znalezienie pewnego rodzaju pomyłki literowej podczas digitalizacji, a nie jak blisko są.W innych kontekstach duplikaty mają na celu identyfikację obiektów, które są wystarczająco blisko iw praktyce pasują do siebie.
Zakładając, że QGIS używa Pythona jako głównego języka, twoje pytanie może zostać skierowane do dokumentów Pythona i będziesz miał ciekawą lekturę na temat tego, jak podstawowa arytmetyka różni się od naszych podstawowych książek matematycznych: Python: zmiennoprzecinkowa arytmetyka: problemy i ograniczenia
źródło
Jestem zarejestrowanym geodetą w kilku stanach. Z różnymi rzutami widać proste linie / odległości pochodzące od siatek Lamberta lub Mercatora. To tak, jakby umieścić stożek na ziemi, a następnie pomiar, który wykonujecie, umieszczany jest na liniach promieni nad krzywizną ziemi. Transverse Mercator to cylindryczna projekcja dla dłuższych stanów East West, takich jak Tennessee. Korzystając z systemów GPS klasy ankietowej, często porównujemy informacje z prognozami światowymi, a nawet prognozami stanowymi, które leżą na antenach. wszystkie pomiary oparte są na parametrach wbudowanych w obliczenia w każdym mierzonym punkcie. Korzystanie ze sprzętu klasy GIS, który ma parametr podmetrowy, bardzo dobrze pasuje do odcinków o długości jednego lub dwóch mil. Po około 6 miejscach dziesiętnych w pomiarach kątowych jest maksimum, którego można oczekiwać. Bez względu na to, ile razy GPS wskazuje punkt z dokładnością do jednego metra, nigdy nie uzyska się „średniej” ani nawet „trybu”, który będzie pasował do pomiarów o wysokiej dokładności. Podsumowując, kiedy pracuję z informacjami z anten lub satelitów, nie przeszkadza mi miernik. Och, istnieją obliczenia sferyczne dla drzemki pomiarów ziemi przy użyciu kątów theta obliczających kąt pionowy w polu w porównaniu do obliczonego kąta w tym punkcie do środka ziemi. Nie ma czegoś takiego jak prawdziwy pomiar. Aby to nam udowodnić, kiedy zacząłem przeglądać w 1975 roku, nasz szef umieścił dwa gwoździe w pagórkowatej drodze oddalonej o ćwierć mili, a my musieliśmy je związać i codziennie pokonywać odległość przez miesiąc. Dzięki poprawkom atmosferycznym na łańcuchu i dalmierzowi HP dopasowaliśmy oryginalną odległość tylko 3 razy z licznikiem odległości i 1 raz z łańcuchem. Bardzo pokorny przykład i zostaje ze mną przez cały rok. wygwizdałam się na konwencji GIS, kiedy ogłoszono mnie jako geodeta (on on) i nie powiedziałem ani słowa, ale wiem, kiedy założyć czapkę inspektora i kiedy założyć czapkę GIS.
źródło