Несколько советов по созданию сервиса WMS и настольного клиента? - PullRequest
1 голос
/ 11 июля 2010

Я учусь создавать сервис WMS, используя MapServer, и после этого я хочу разработать настольное приложение PyQt, которое получит к нему доступ.Я не знаю, как лучше всего это сделать, потому что я видел много веб-решений, но это не то, что я ищу.Также я не знаю, есть ли библиотеки, которые могут мне помочь.Можете ли вы дать мне несколько советов?

Заранее спасибо!

1 Ответ

1 голос
/ 11 июля 2010

Полагаю, у вас нет проблем с настройкой службы WMS на MapServer. Проверьте, работает ли это с настольным клиентом ГИС или простой веб-страницей OpenLayers.

Для разработки клиента WMS я бы построил поверх библиотеки GDAL . Это также включено в MapServer.

GDAL имеет возможность читать изображения с удаленного сервера WMS, и лечить их, как и любой другой источник данных: Это означает, что он может принять изображения и конвертировать их в любой другой формат, от JPEG2000 до GeoTIFF.

http://crschmidt.net/blog/archives/285/producing-a-large-image-from-openaerialmap/

В качестве дополнительного бонуса GDAL включает в себя Привязки Python , которые помогут при написании сценариев.

http://pypi.python.org/pypi/GDAL/

Вам также понадобится libcurl для доступа к URL. libcurl также имеет привязки Python - http://curl.haxx.se/libcurl/python/

libcurl также включен в MapServer, который сам может быть как сервером WMS, так и клиентом. Вы также можете проверить исходный код C ++, чтобы узнать, как работает клиент MapServer - https://trac.osgeo.org/mapserver/browser/branches/branch-5-6/mapserver/mapwmslayer.c

Служба WMS возвращает изображение (за исключением нескольких дополнительных мета-служб), поэтому разработка будет основываться на построении правильных запросов WMS на основе действий пользователя.

Если вы хотите добиться высокой производительности, взгляните на TileCache , который будет кешировать результаты WMS на сервере для более быстрого использования (а также кешировать локально).

...