2023-01-15 17:46:20 +03:00
# gis-map-server
2023-09-28 17:29:56 +03:00
2023-01-15 17:46:20 +03:00
В е б -сервис для распространения и тестовый клиент для отображения картографической информации.
[gis-map-server ](src/gis-map-server/ ) - Python веб-сервер
[gis-client-render ](src/gis-client-render ) - Qt клиент для отображения
2023-09-28 17:29:56 +03:00
## Архитектура
2023-01-15 17:46:20 +03:00
![GIS Map Server ](src/gis-map-server/docs/architecture.drawio.png )
Сервис принимает запросы на отрисовку региона средствами [ПК ЦКИ ](https://kpda.ru/products/gis/ ) и возвращает отрисованную карту в виде картинки (поддерживаемые выходные форматы: bmp, png, jpeg).
2023-09-28 17:29:56 +03:00
## Сборка
- При помощи рекурсивной сборочной подсистемы:
2023-01-15 17:46:20 +03:00
```
2023-01-16 19:10:16 +03:00
cd src # Перейти в директорию с исходниками
lrelease gis-client-render/translations/*.ts # Единожды сформировать файл переводов
make install # Сборка под все доступные архитектуры
CPULIST=x86 make install # Сборка под конкретную архитектуру _cpu_ (в данном случае, x86)
2023-01-15 17:46:20 +03:00
```
2023-01-16 19:10:16 +03:00
В результате в директорию `.install/neutrino` в корне проекта, инсталлируются runtime-компоненты.
2023-01-15 17:46:20 +03:00
2023-09-28 17:29:56 +03:00
- При помощи CMake:
```
cd src # Перейти в директорию с исходниками
mkdir -p .build # Создаём сборочную директорию
cd .build # Переходим в сборочную директорию
cmake --toolchain=$KPDA_HOST/mk/cmake/toolchain-nto-x86.cmake .. # Конфигурируем проект (например, x86)
cmake --build . # Сборка под сконфигурированную архитектуру (например, x86)
cmake --install . --prefix /installation/path # Установка проекта
```
В результате в директорию `/installation/path` инсталлируются runtime-компоненты.
## Запуск
2023-01-15 17:46:20 +03:00
При запуске веб-сервер `gis-map-server` считывает [конфигурационный файл ](src/gis-map-server/gis-map-server.conf ).
`gis-map-server` предоставляет веб-интерфейс, внешний вид которого показан на рисунке 1.
![Рисунок 1 ](src/gis-map-server/docs/web_interface1.png )
Внешний вид Qt-клиента показан на рисунке 2.
![Рисунок 2 ](src/gis-client-render/images/client_interface1.png )