Как работает Mapserver

В предыдущий раз мы говорили о некоторых критериях, почему картсервер и основы установки. Теперь давайте посмотрим на некоторые его действия в упражнении с картами cuates Чьяпаса.

 geoserver mapserver Где монтируется

После установки Apache каталог публикации MapServer по умолчанию представляет собой папку OSGeo4W непосредственно над C: /

Внутри есть разные папки с приложениями в зависимости от того, что установлено, но папка для публикации должна находиться внутри apache. В этом случае папка называется gis.

  • Затем внутри папка данных содержит слои, ортофото и т. Д.
  • В папке etc находятся шрифты True Type, используемые для этикеток, с расширением .ttf. Также здесь есть текстовый файл, который поднимает их, и другой, определяющий символы.
  • И, наконец, в папке httdocs зайдите на веб-страницы, которые поднимают сервис.
  • geoserver mapserver

Веб-страница

В этом примере я буду использовать случай, показанный в прошлый раз. Он в основном содержит индексный файл, который перенаправляет на файл с расширением phtml, а это, в свою очередь, вызывает функции, построенные поверх php и карт. Папка содержит изображения, на которые есть ссылки на странице.

geoserver mapserver

Если мы посмотрим на это, phtml - это просто оболочка, построенная из таблиц и вызовов функций mapscript / php. Вы должны использовать:

http://localhost/gis/gispalenque.phtml

Ниже приведен результат:

  • к центру функция GMapDrawMap (),
  • справа - вызов keymap GMapDrawKeyMap (),
  • шкала шкалы ниже GMapDrawScaleBar (),
  • и в случае функций развертывания условие относительно списка if (! IsHtmlMode ()) echo "  с решениями: ZOOM_IN, ZOOM_OUT, RECENTER, QUERY_POINT.

При запуске развертывание выглядит следующим образом:

geoserver mapserver

Файлы .map

Комбинация публикации Mapserver заключается в том, что Apache повышает, что отправляет php через mapscript и это затем выходит через эту оболочку. Но большая часть науки находится в файлах .map, которые не следует путать с файлами, созданными Mapinfo, Manifold или Mobile Mapper Office с тем же расширением.

Эти .map - текстовые файлы, которые содержат карту в форме скрипта. Их можно создать с помощью настольных программ, таких как Quantum GIS, если вы посмотрите, есть одна для основной карты, одна для Keymap и две для сервисов OGC wms и wfs. Посмотрим, как работает mapscript:

КАРТА

ИМЯ PALENQUE_DEMO
СТАТУС ВКЛЮЧЕН
РАЗМЕР 600 450
SYMBOLSET ../etc/symbols.txt
EXTENT 604299 1933386 610503 1939300 # СПИСОК ВСЕЙ КАРТЫ ПАЛЕНА
#EXTENT 605786 1935102 608000 1938800 #SOLO 01 SECTOR
ЕДИНИЦЫ ИЗМЕРЕНИЙ
SHAPEPATH "../data"
ПРОЗРАЧНОЕ ВКЛЮЧЕНИЕ
IMAGECOLOR 255 255 255
FONTSET ../etc/fonts.txt

  • MAP указывает начальный скрипт
  • STATUS, указывает, включена ли карта по умолчанию или нет.
  • SIZE - размер дисплея
  • SYMBOLSET показывает путь символов
  • EXTENT - координаты дисплея. Символ # используется для аннотаций
  • ЕДИНИЦЫ для единиц
  • SHAPEPATH, путь, где слои
  • Все в конце закончится командой END

Внутри код начинается с командной строки и заканчивается END, например, для минимального и максимального масштаба; каталог временных изображений:

WEB
  MINSCALE 2000000
  MAXSCALE 50000000

IMAGEPATH "C: \ OSGeo4W / tmp / ms_tmp /"
  IMAGEURL "/ ms_tmp /"
END

geoserver mapserverШкала шкалы:

масштабная линейка
  IMAGECOLOR 255 255 255
  LABEL
    ЦВЕТ 0 0 0
    МАЛЕНЬКИЙ РАЗМЕР
  END
  РАЗМЕР 300 5
  ЦВЕТ 255 255 255
  BACKGROUNDCOLOR 0 0 0
  OUTLINECOLOR 0 0 0
  ЕДИНИЦЫ километров
  ИНТЕРВАЛЫ 3
  СТАТУС ВКЛЮЧЕН
END

geoserver mapserverРастровый слой: находится в фоновом режиме, с описанием в списке как "Ортофото", из tiff, расположенного в папке данных:

 

 

СЛОЙ
  ИМЯ ортофото
  METADATA
    "ОПИСАНИЕ" "OrtoFoto"
  END
  ТИП РАСТЕР
  СТАТУС ВЫКЛЮЧЕН
  DATA "C: \ OSGeo4W / apps / gis / data / ortofotoGral.tif"
  #OFFSITE 0 0 0
END

Шпонный слой из полигонов, тематический, основанный на критериях, поднимающий некоторые данные на html-шаблоне, с меткой шрифта sans, размером 6, черным цветом и белыми краями буфера 5 ...

geoserver mapserver

СЛОЙ
  Область NAME02Zone
  ТИП ПОЛИГОН
  СТАТУС ВЫКЛЮЧЕН
  ПРОЗРАЧНОСТЬ 50
  ЭКСТЕНТ 607852 1935706 610804 1938807 МЕТАДАННЫЕ
    «ОПИСАНИЕ» «Тема по сектору ценностей 02»
    «RESULT_FIELDS» «MsLink Cve_Mz Cve_Pred prop Area Perimeter VALUE"
  END
  DATA PALENQUE_SECTOR01
  TEMPLATE "ttt_query.html"
  TOLERANCE 5
  #TOLERANCEUNITS PIXELS
  ЛАБЕЛИТ «ВАЛОР»
  КЛАССИТЕМ "ВАЛОР"
  LABELCACHE ON
  КЛАСС
    SYMBOL 1
    ЦВЕТ 128 128 128
    OUTLINECOLOR 0 0 0
    НАЗВАНИЕ "ZonaNULL"
    EXPRESSION ([VALUE] = 0)
    LABEL
         УГОЛ АВТО
         ЦВЕТ 0 0 0
         FONT sans
         ТИП ТРУДА
         ПОЗИЦИЯ cc
        
PARTIALS FALSE
         BUFFER 5
         РАЗМЕР 6
         OUTLINECOLOR 200 200 200
    END
  END #class Значение 0
  КЛАСС
    SYMBOL 3
    ЦВЕТ 255 128 128
    #COLOR -1 -1 -1 #SIN FILLING

.... и поэтому, чтобы закрыть

END
  END # Класс Значение
END # Layer

В заключение

Следовательно, работа с mapserver, хотя это довольно просто, становится сложной и очень ограниченной для больших заданий, потому что все находится в .map. Самым большим недостатком является то, что все делается пешком, например, определение каждого цвета в тематике, и по этой причине возникают такие инструменты, как CartoWeb, который работает на Mapserver, но содержит встроенные плагины и примеры с характеристиками, которые делают эту примитивную версию похожей на в первый раз:

  • Работайте отдельные кадры с помощью AJAX, чтобы обновить их отдельно
  • Разбирайте код, если скрипт перезаписывает .map на основе параметризуемых критериев
  • Динамическая обратная прокрутка без обновления, как если бы это был слой вспышки
  • Онлайн-векторное редактирование, немедленная запись в кеш
  • Загрузить слой в векторной форме
  • Экспорт в Google Планета Земля
  • Создание PDF из развертывания

Далее мы рассмотрим CartoWeb, здесь я оставлю ссылку на основные примеры.

3 ответов на «Как работает Mapserver»

  1. Привет,

    Я пытаюсь вызывать слой из .map следующим образом:

    СЛОЙ
    ИМЯ test_houses
    ТИП ТОЧКА
    CONNECTIONTYPE OGR
    СОЕДИНЕНИЕ № »virtual.ovf»
    »

    ххххх
    EXEC …….
    eess_id
    wkbPoint
    WGS84

    »

    Моя проблема в том, что служба DSN создает проблемы: при запросе GetCapabilities она возвращает пароль базы данных… могу ли я вызвать файл, чтобы не «выдавать» пароль, или это ошибка DSN ???? Спасибо!

  2. MapServer - популярный проект с открытым исходным кодом, целью которого является отображение динамических пространственных карт через Интернет. Установленный диск - это диск, который отображается в пустую папку на томе, который использует файловую систему NTFS. Монтируемые диски функционируют как любые другие диски, но им назначаются пути дисков вместо букв дисков.

Оставьте ответ

Ваш электронный адрес не будет опубликован.

Этот сайт использует Akismet для уменьшения количества спама. Узнайте, как обрабатываются ваши данные комментариев.