Konverterer python shapely-objekter (i 2D eller 3D) til 2D
from shapely import wkb, wkt
# myGeom er her et shapely-objekt av hvilken som helst geometritype, med 2D eller 3D koordinater.
my2Dgeom = wkb.loads( wkb.dumps( myGeom , output_dimension=2 ))
Trickset her er at wkb.dumps
(som returnerer dataformatet Well Known Binary )
kan gjøre transformasjon til 2D on the fly. Så leses WKB-representasjonen tilbake til shapely-objekt med wkb.loads
. Verdikjeden blir altså
shapely objekt => WKB => shapely objekt
.
Nedenfor et eksempel der geometrien finnes som tekst ( well known text) i en kolonne i en pandas dataframe, og vi oppretter en ny kolonne med shapely-objekter.
from shapely import wkb, wkt
mydf['geometry'] = mydf['geometri'].apply( lambda x : Point ( wkb.loads( wkb.dumps( wkt.loads( x ), output_dimension=2 ))))