🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

5 total messages Started by fatman Wed, 13 Aug 2008 17:15
Linie na poligony
#11754
Author: fatman
Date: Wed, 13 Aug 2008 17:15
8 lines
971 bytes
Dostałem plik .shp, niestety, nie wiem w jaki sposób, ale wyeksportowano 
go jako linie. Czy jest jakieś mądre narzędzie, które poskłada mi takie 
linie w poligony?

Pozdrawiam


F.
Re: Linie na poligony
#11755
Author: Mateusz Loskot
Date: Wed, 13 Aug 2008 17:44
19 lines
1599 bytes
fatman wrote:
> Dostałem plik .shp, niestety, nie wiem w jaki sposób, ale wyeksportowano
> go jako linie. Czy jest jakieś mądre narzędzie, które poskłada mi takie
> linie w poligony?

Możesz na przykład użyć ShapeLy [1], napisać kilka linii w Pythonie
które zrobią to co potrzebujesz.

Kolejna możliwość to 1) użyć ogr2ogr [2] zrzut shapefile do tabeli w
PostGIS 2) zaaplikować ST_Polygonize [3] aby wygenerować poligony 3)
zapisać wynik do osobnej tabeli 4) użyć ponownie ogr2ogr aby zrzucić
dane z PostGIS z powrotem do shapefile

[1] http://gispython.org/shapely/manual.html#polygonization
[2] http://www.gdal.org/ogr/ogr2ogr.html
[3] http://www.postgis.org/documentation/manual-1.3/ch06.html
-- 
Mateusz Loskot, http://mateusz.loskot.net
Charter Member of OSGeo, http://osgeo.org
Re: Linie na poligony
#11756
Author: fatman
Date: Wed, 13 Aug 2008 18:01
31 lines
2158 bytes
Mateusz Loskot pisze:
> fatman wrote:
>> Dostałem plik .shp, niestety, nie wiem w jaki sposób, ale wyeksportowano
>> go jako linie. Czy jest jakieś mądre narzędzie, które poskłada mi takie
>> linie w poligony?
> 
> Możesz na przykład użyć ShapeLy [1], napisać kilka linii w Pythonie
> które zrobią to co potrzebujesz.
> 
> Kolejna możliwość to 1) użyć ogr2ogr [2] zrzut shapefile do tabeli w
> PostGIS 2) zaaplikować ST_Polygonize [3] aby wygenerować poligony 3)
> zapisać wynik do osobnej tabeli 4) użyć ponownie ogr2ogr aby zrzucić
> dane z PostGIS z powrotem do shapefile
> 
> [1] http://gispython.org/shapely/manual.html#polygonization
> [2] http://www.gdal.org/ogr/ogr2ogr.html
> [3] http://www.postgis.org/documentation/manual-1.3/ch06.html

Ok, ale ja nie wiem które linie składają się na dany poligon. Tzn. w shp 
w tabeli mam 20000 linii i w żaden sposób nie jestem w stanie 
stwierdzić, które stanowią jeden poligon. Chyba że wizualnie je wskażę. 
A i python i postgis chcą (chyba że się mylę) zbiór wszystkich linii 
które stanowią jeden poligon.

Poza tym, co w przypadku, gdy np. na budynek składają się 2 części? 
Wtedy niektóre linie są wspólne.

Pozdrawiam.


F.
Re: Linie na poligony
#11758
Author: fatman
Date: Wed, 13 Aug 2008 18:35
7 lines
1158 bytes
fatman pisze:
> Dostałem plik .shp, niestety, nie wiem w jaki sposób, ale wyeksportowano 
> go jako linie. Czy jest jakieś mądre narzędzie, które poskłada mi takie 
> linie w poligony?
> 

Znalazłem, openJump z automatu 99% zrobił, reszta do ręcznej poprawki.
Re: Linie na poligony
#11757
Author: Mateusz Loskot
Date: Wed, 13 Aug 2008 18:50
35 lines
2361 bytes
fatman wrote:
> Mateusz Loskot pisze:
>> fatman wrote:
>>> Dostałem plik .shp, niestety, nie wiem w jaki sposób, ale wyeksportowano
>>> go jako linie. Czy jest jakieś mądre narzędzie, które poskłada mi takie
>>> linie w poligony?
>>
>> Możesz na przykład użyć ShapeLy [1], napisać kilka linii w Pythonie
>> które zrobią to co potrzebujesz.
>>
>> Kolejna możliwość to 1) użyć ogr2ogr [2] zrzut shapefile do tabeli w
>> PostGIS 2) zaaplikować ST_Polygonize [3] aby wygenerować poligony 3)
>> zapisać wynik do osobnej tabeli 4) użyć ponownie ogr2ogr aby zrzucić
>> dane z PostGIS z powrotem do shapefile
>>
>> [1] http://gispython.org/shapely/manual.html#polygonization
>> [2] http://www.gdal.org/ogr/ogr2ogr.html
>> [3] http://www.postgis.org/documentation/manual-1.3/ch06.html
> 
> Ok, ale ja nie wiem które linie składają się na dany poligon. Tzn. w shp 
> w tabeli mam 20000 linii i w żaden sposób nie jestem w stanie 
> stwierdzić, które stanowią jeden poligon. Chyba że wizualnie je wskażę. 
> A i python i postgis chcą (chyba że się mylę) zbiór wszystkich linii 
> które stanowią jeden poligon.
> 
> Poza tym, co w przypadku, gdy np. na budynek składają się 2 części? 
> Wtedy niektóre linie są wspólne.

ST_Polygonize zwróci Ci kolekcję poligonów (prostych), które możliwe 
były do wygenerowania z sieczki linii podanej do funkcji.

Pozdrawiam
-- 
Mateusz Loskot, http://mateusz.loskot.net
Charter Member of OSGeo, http://osgeo.org
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads