Tengo las siguientes coordenadas
minx, maxx, miny ,maxy = 448262.080078, 450360.750122, 6262492.020081, 6262938.950073
Deseo crear una rejilla cuadrada de tamaño 1 m utilizando python.
import math
minx,maxx,miny,maxy = 448262.080078, 450360.750122, 6262492.020081, 6262938.950073
size = 1
def set_bbox(minx, maxx, miny, maxy, distx, disty):
nx = int(math.ceil(abs(maxx - minx)/distx))
ny = int(math.ceil(abs(maxy - miny)/disty))
new_maxx = minx + (nx*distx)
new_miny = maxy - (ny*disty)
return ((minx, new_maxx, new_miny, maxy),ny,nx)
# shift the bottom (right - down)
coord, ny, nx = set_bbox(minx,maxx,miny,maxy,size,size)
# left-up origin
origin = coord[0],coord[3]
# number of tiles
ncell = ny*nx
0 votos
¿Esto está vinculado a alguna plataforma SIG específica o es el requisito para hacer esto en python puro sin ningún formato de salida especificado (por ejemplo, shapefile, archivo de texto, etc, etc)
0 votos
Gracias @Dan, deseo realizar en python puro y la salida será en formato shapefile
0 votos
El nivel de licencia ArcInfo de ArcMap dispone de la herramienta Fishnet, pero usted no ha indicado cómo pretende crear el shapefile.
0 votos
Lo siento, no uso software comercial. Prefiero programar en lenguaje puro Java, Python, C++.
1 votos
Pero no le importa utilizar una biblioteca como GDAL/OGR ( pypi.python.org/pypi/GDAL ) o pyshp ( pypi.python.org/pypi/pyshp )?
0 votos
¿Existe algún método similar que utilice las bibliotecas API C++ de OGR? Yo también necesito dividir un shapefile entero en 20 cajas cuadradas de ancho y 20 de alto.