Uma maneira possível de continuar usando o SAGA GIS http://www.saga-gis.org
Depois de abrir seu shapefile, execute estes 3 módulos: 1. Extensão dos módulos \ Shapes \ Tools \ Get Shapes
Módulos \ Formas \ Ferramentas \ Pontos \ Pontos de linhas [ao contrário do que o nome sugere, você também pode usá-lo para obter pontos de um polígono]
Módulos \ Formas \ Ferramentas \ Pontos \ Adicionar coordenadas aos pontos Isso fornecerá uma tabela que contém as coordenadas xey dos 4 cantos da caixa delimitadora do seu arquivo de polígono.
No arcgis, aqui está o código python. result é uma lista de minx, miny, maxx, maxy, minM, maxM, minZ, maxZ (
import arcpy
for feat in arcpy.SearchCursor(r"c:\data\f.gdb\counties"):print feat.Shape.extent
-2.6685272725154649.4265363633626-2.5284818181812149.5079454546192NaNNaNNaNNaN-10.46333636378251.4455454544593-6.0130545458304555.3799909091533NaNNaNNaNNaN-4.7777818182761454.0555454544593-4.3534727268846854.4100000000002NaNNaNNaNNaN
Aqui está uma versão R, usando dados de exemplo do pacote rgdal:
library(rgdal)
dsn <- system.file("vectors/ps_cant_31.MIF",package="rgdal")[1]
d <- readOGR(dsn = dsn, layer="ps_cant_31")## transform if this is not longlatif(is.projected(d)) d <- spTransform(d, CRS("+proj=longlat +ellps=WGS84"))for(i in1:nrow(d)){print(bbox(d[i,]))}
Eu uso fiona e bem torneado para esse tipo de tarefas:
import fiona
from shapely.geometry import shape
with fiona.open(r'd:\Projects\_00_Data\_USstates\fe_2007_us_state00.shp','r')as features:for i, feat in enumerate(features):
geom = shape(feat['geometry'])
name = feat['properties']['NAME00']print','.join((name,)+ tuple([str(i)for i in geom.bounds]))
A saída fica assim: essas são as coordenadas lat / lon: -124.72583900000001,45.544321, -116.915989,49.002494 -82.626182,37.202467, -77.71951899999999,40.638801 -111.056888,40.9963459999999967, -104.052287,45
Respostas:
Usando o módulo Python ogr do OSGEO, este exemplo fornecerá uma tupla contendo as cordas que definem um envelope para cada recurso.
fonte
Uma maneira possível de continuar usando o SAGA GIS http://www.saga-gis.org Depois de abrir seu shapefile, execute estes 3 módulos: 1. Extensão dos módulos \ Shapes \ Tools \ Get Shapes
Módulos \ Formas \ Ferramentas \ Pontos \ Pontos de linhas [ao contrário do que o nome sugere, você também pode usá-lo para obter pontos de um polígono]
Módulos \ Formas \ Ferramentas \ Pontos \ Adicionar coordenadas aos pontos Isso fornecerá uma tabela que contém as coordenadas xey dos 4 cantos da caixa delimitadora do seu arquivo de polígono.
fonte
No arcgis, aqui está o código python. result é uma lista de minx, miny, maxx, maxy, minM, maxM, minZ, maxZ (
fonte
Aqui está uma versão R, usando dados de exemplo do pacote rgdal:
fonte
Eu uso fiona e bem torneado para esse tipo de tarefas:
fonte