Grid - локальный http сервер для генерации векторных тайлов (в kml формате) с различными географическими/координатными сетками.
В сервер встроены 3 сетки:
Кроме этого, есть возможность добавлять произвольные сетки через grid.ini файл. Например:
[utm-zone-31n]
GeogCS=+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs
ProjCS=+proj=utm +zone=31 +datum=WGS84 +units=m +no_defs +type=crs
DrawPoints=0
DrawLines=1
Имя секции используется для идентификации сетки в url запросе.
Параметры GeogCS (обязательный) и ProjCS - строка инициализации проекции для proj4 библиотеки. Если параметр ProjCS отсутствует, то сетка считается географической. Если оба параметра присутствуют - координатной.
Параметры DrawPoints/DrawLines (опциональные) включают или отключают запись точек/линий, в выходной kml.
Структура url запроса: http://localhost:8888/{grid-id}/{step}/{z}/{x}/{y}
{grid-id} - id сетки (имя секции из grid.ini или wgs84, gauss-kruger, utm - для встроенных сеток);{step} - шаг сетки: в градусах для географических сеток; в километрах, для координатных. В качестве разделителя целой и дробной части используется точка. Для градусных сеток можно указать 0 - для автоматического шага;{z}, {x}, {y} - координаты тайла как для OpenStreetMap (EPSG:3857).Использование
Для автоматизации запуска сервера перед запуском SAS, можно установить AutoHotKey v1.1 и запускать связку через скрипт run-sas-and-grid.ahk:
run, grid.exe,,hide,ppid
runwait, SASPlanet.exe
process,close,%ppid%
Скрипт запускает grid.exe, потом запускает SASPlanet.exe, ждёт в трее пока не закроется SAS и завершает процесс grid.exe. При этом сам grid.exe запускается в скрытом режиме и перед глазами никаких окошек не мелькает. Но учтите, что при таком скрытом запуске вы можете не увидеть каких-то важных сообщений об ошибках от сервера. Поэтому, первый запуск сервера рекомендуется выполнить вручную.
Сборка
Для компиляции сервера из исходников вам понадобятся: