Страница 1 из 1

Помогите пожалуйста разобраться

Добавлено: 07 окт 2015, 20:28
MalDeR
Всем привет!. Я на этом сайте совсем не давно и только начал изучать ГИС и (web-ГИС в частности). Объясните пожалуйста следующее:
Что такое связка MapServer +OpenLayers , как они работают вместе и чем отличаются? (ведь как я понял в них обоих можно создавать и редактировать web- карты)

P.S Знаю, что вопрос банальный и прочитал множество статей...но ни как не могу разложить все по полочкам.
Заранее спасибо!

Re: Помогите пожалуйста разобраться

Добавлено: 07 окт 2015, 21:25
ericsson
Для начала, давайте разберемся с вашим уровнем знаний.
Вам что-нибудь говорит тот факт, что MapServer - это серверное средство, которое предназначено для того, чтобы отдавать картографические данные по запросу клиента, а OpenLayers - это клиентское средство, исполняемое в browser-е клиента и предназначенное для показа картографических данных в интерактивной форме и отправки запросов серверному ПО (тому же MapServer) для получения этих самых данных?
Если да, то можно попытаться развить мысль. Если нет, то вам нужно изучить принципы клиент-сервеной организации приложений, это отдельная тема, которая имеет к ГИС только косвенное отношение.

Re: Помогите пожалуйста разобраться

Добавлено: 07 окт 2015, 22:05
MalDeR
Ага, то есть на MapServer это просто сервер, на котором хранятся карта(ы) со своими данными,а через OpenLayers клиент может их загрузить к себе в браузер и работать с ними, в том числе изменять...? Если так, то как тогда связать MS и OL и осуществить между ними взаимодействие?

Re: Помогите пожалуйста разобраться

Добавлено: 07 окт 2015, 23:15
ericsson
Не совсем так.
MapServer не выполняет функции хранения - хранит данные база данных, файловая система и т.п., а MapServer эти данные преобразует и отдает по запросу клиента в нужной форме. Например, у вас на сервере данные лежат в виде shape-файлов, а MapServer отдает запрошенный фрагмент в виде PNG, где каждому типу данных из shape-файла присвоен свой стиль.

A OpenLayers - это библиотека, которая написана на Javascript, которая встраивается в веб-страницу, и код которой выполняется в browser-е пользователя (т.е. на стороне клиента). Скажем, при первом открытии страницы OpenLayers в соответствии с тем, как эта библиотека подключена и инициализируется, запрашивает у MapServer изображение карты, охватывающее весь мир. А дальше пользователь жмет на элементы управления, чтобы, например, приблизить карту, и OpenLayers, реагируя на эти действия, запрашивает у сервера новое изображение, меньшей площади, но более подробного масштаба.

Методы взаимодействия зависят от того, что вы хотите получить. Если только читать данные из MapServer - это можно сделать через протокол WMS, например. Если вам нужно редактирование, то это делается, например, через транзакции WFS-T.

Re: Помогите пожалуйста разобраться

Добавлено: 07 окт 2015, 23:23
MalDeR
Теперь я понял, спасибо!=)

Re: Помогите пожалуйста разобраться

Добавлено: 07 окт 2015, 23:30
ericsson
Изображение
Тут не совсем про MapServer и здесь больше, чем то, о чем вы говорите, но принцип архитектуры тот же.