Преобразование ячеек сетки ASCII в координаты с помощью Python
Я создаю свой собственный процесс преобразования сетки в шейп-файл с помощью python и pyshp.
Моя цель на первом этапе этого процесса - создать двумерный массив объектов, каждый из которых содержит пару координат, обозначающих его пространственное расположение. Эти координаты будут позже использованы для записи в шейп-файл полигона.
Вот типичный файл сетки ASCII:
ncols 1681
nrows 1361
xllcorner 112
yllcorner -44
cellsize 0.025
NODATA_value -9999
-9999 -9999 -9999 -9999 -9999 -9999 ....
-9999 -9999 -9999 -9999 -9999 -9999 ....
-9999 -9999 -9999 -9999 -9999 -9999 ....
-9999 -9999 -9999 -9999 -9999 -9999 ....
21.356 22.456 30.409 ...
...
...
...
Вы можете представить его как растровое изображение в оттенках серого - большой двумерный массив ячеек с присвоенным номером, обозначающим его значение. Заголовок gridfile дает координаты нижнего левого угла. по-видимому, есть некоторый способ создать квадратный шейп-файл полигона каждой ячейки, используя эту информацию. Я предполагал использовать координаты ll и размер ячейки, но я не смог найти однозначного ответа, как это сделать. Вы можете рассматривать ESPG как пользовательский ввод.