Pracuję nad danymi dotyczącymi własności na poziomie hrabstwa USA. Mam jeden plik kształtu dla każdego hrabstwa, który zawiera tysiące paczek podatkowych. Muszę rozpuścić wielokąty reprezentujące paczki należące do tej samej osoby. Gdy plik kształtu nie jest czysty, narzędzie „Rozpuszczanie” w QGIS wydaje się nie działać, zawiesza się. Najpierw muszę naprawić problemy z poprawnością geometrii za pomocą narzędzia „Sprawdź poprawność geometrii”. Jednak czasami mam setki błędów. Naprawienie ich zajmuje dużo czasu. Czy są jakieś inne strategie, które mogłyby mi zaoszczędzić trochę czasu?
Używam QGIS 2.4.0.
Odpowiedzi:
Spróbuj uruchomić subtelny bufor na wielokątach. Ustawienie -0,001, jeśli twój CRS to UTM, wydaje się warte spróbowania. WEKTOR | BUFOR
źródło
Kiedy mam warstwę z błędami, zwykle uruchamiam ją przez funkcję GRASS v.clean w Processing Toolbox . Chociaż tak naprawdę nigdy nie odkryłem, które narzędzie jest najlepsze, zwykle wybieram tam funkcję bpol .
Być może jeszcze ważniejsze jest ustawienie zaawansowanych parametrów tolerancji na zatrzaski i minimalnego obszaru . W zależności od warstwy zwykle wybieram od 0,1 do 2 metrów do przyciągania i np. 10 m2 dla minimalnej powierzchni.
Przyciąganie np. Wyrównuje granice, które mają być wspólnymi granicami, ale mają niewielkie przesunięcia, minimalny obszar eliminuje małe przekroje z skrzyżowań itp.
Razem z bpol normalnie rozwiązuje wszystkie błędy bez zbytniej zmiany topologii.
źródło
Możesz użyć ST_MakeValid bezpośrednio w QGIS dodając wtyczkę lwgeom, która dodaje dostawcę lwgeom do zestawu narzędzi do przetwarzania => możesz zastosować MakeValid bezpośrednio na załadowanej warstwie bez konwersji w postigs / spatialite. Postgis / spatialite używają tego samego liblwgeom do wykonania ST_MakeValid
musisz zainstalować liblwgeom i skonfigurować dostawcę przetwarzania, aby wskazywał na to
Dostawca lwgeom można znaleźć jako eksperymentalny: https://plugins.qgis.org/plugins/processinglwgeomprovider/
źródło
Zapisanie danych w PostGIS i uruchomienie ST_MakeValid może pomóc http://postgis.refractions.net/docs/ST_MakeValid.html . Spatialite ma ST_MakeValid również http://www.gaia-gis.it/gaia-sins/spatialite-sql-latest.html .
źródło
Właśnie natrafiłem na podobny problem w qgis. Miałem poli zaczęło niepoprawnie wyświetlać. Użyłem Grass fuction v.clean w przyborniku Przetwarzanie, jak sugerował Bernd. Chociaż bpol nie działał, wydaje się, że został naprawiony za pomocą funkcji break.
źródło