Картографія

Як працює Mapserver

Минулого разу ми говорили про те, чому певних умов картсервер та основи встановлення. А тепер давайте подивимося деякі його дії у вправі з картами куатів Чіапас.

 geoserver mapserver Де монтується

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

Усередині є різні папки з програмами залежно від того, що встановлено, але папка для публікації повинна знаходитися всередині apache. У цьому випадку папка називається gis.

  • Потім всередині папка даних містить шари, ортофото і т. Д.
  • У папці etc є шрифти справжнього типу, що використовуються для міток із розширенням .ttf. Також тут є файл txt, який піднімає їх, та інший, який визначає символи.
  • І, нарешті, в папці httdocs йдуть веб-сторінки, які підвищують послугу.
  • geoserver mapserver

Веб-сторінка

У цьому прикладі я буду використовувати приклад, показаний минулого разу. В основному він містить індексний файл, який переспрямовує на файл із розширенням phtml, і це, в свою чергу, підвищує функції, побудовані поверх php та карт. Папка містить зображення, на які посилається сторінка.

geoserver mapserver

Якщо ми подивимося на нього, phtml - це просто оболонка, побудована з таблиць, і викликає функції mapscript / php. Вам слід встати, використовуючи:

http://localhost/gis/gispalenque.phtml

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

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

Вже працює, розгортання виглядає так:

geoserver mapserver

Файли .map

Комбінація публікації Mapser - це те, що піднімає Apache, який надсилає php через mapscript і це потім виходить із цієї оболонки. Але більша частина науки знаходиться у файлах .map, щоб їх не плутати з тими, що генеруються Mapinfo, Manifold або Mobile Mapper Office з однаковим розширенням.

Це .map - це текстові файли, які містять карту у вигляді сценарію. Їх можна створити за допомогою настільних програм, таких як Quantum GIS, якщо ви помітили, що є одна для основної карти, одна для Keymap та дві для служб wms та wfs OGC. Давайте подивимося, як працює Mapscript:

MAP

NAME PALENQUE_DEMO
СТАТУС НА
SIZE 600 450
SYMBOLSET ../etc/symbols.txt
EXTENT 604299 1933386 610503 1939300 # ПЕРЕЛІК ВСІ ПЛАНУ ПАЛЕНКУ
# EXTENT 605786 1935102 608000 1938800 #SOLO СЕКТОР 01
ЕЛЕМЕНТИ МЕТРІВ
SHAPEPATH "../data"
ПРОЗОРІСТЬ
IMAGECOLOR 255 255 255
FONTSET ../etc/fonts.txt

  • MAP вказує початковий сценарій
  • STATUS, вказує, чи є карта за замовчуванням включена чи ні
  • SIZE - це розмір розгортання
  • SYMBOLSET показує шлях символів
  • EXTENT - це координати відображення. Символ # використовується для створення анотацій
  • Єдині одиниці
  • ШАПЕПТ, шлях, де є шари
  • Все в кінці закінчується командою END

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

WEB
  MINSCALE 2000000
  MAXSCALE 50000000

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

geoserver mapserverШкала масштабу:

SCALEBAR
  IMAGECOLOR 255 255 255
  LABEL
    COLOR 0 0 0
    РОЗМІР МАЛИ
  END
  SIZE 300 5
  COLOR 255 255 255
  ПОПЕРЕДНІЙ КОЛОР 0 0 0
  OUTLINECOLOR 0 0 0
  Єдині кілометри
  ІНТЕРВАЛ 3
  СТАТУС НА
END

geoserver mapserverРастровий шар: він перебуває у фоновому режимі, з описом у списку як "Ортофото", з tiff, розташованого в папці даних:

 

 

СЛОЙ
  Orthophoto імені користувача NAME
  METADATA
    "ОПИС" "OrtoFoto"
  END
  TYPE RASTER
  STATUS OFF
  Дані "C: OSGeo4W / apps / gis / data / ortofotoGral.tif"
  # OFFSITE 0 0 0
END

Шар к.с полігон tematizada на основі критеріїв, піднімаючи деякі дані про шаблон HTML зі шрифтом етикетки SANS, розмір 6, чорні і білі краю буфера 5 ...

geoserver mapserver

СЛОЙ
  NAME сектор02Zone
  ТИП ПОЛІГОН
  STATUS OFF
  ПРОЗОРІСТЬ 50
  МЕТАДАТИ 607852 1935706 610804 1938807
    "ОПИС" "Тема за сектором значень 02"
    "RESULT_FIELDS" "MsLink Cve_Mz Cve_Pred пропорційний периметр області"
  END
  DATA PALENQUE_SECTOR01
  TEMPLATE "ttt_query.html"
  TOLERANCE 5
  #TOLERANCEUNITS PIXELS
  LABELITEM "VALOR"
  CLASSITEM "VALOR"
  НАСТУПНИЙ ЛАЙТ
  КЛАС
    SYMBOL 1
    COLOR 128 128 128
    OUTLINECOLOR 0 0 0
    NAME "ZoneNULL"
    EXPRESSION ([VALUE] = 0)
    LABEL
         ANGLE AUTO
         COLOR 0 0 0
         FONT без
         ТИП ТРЕТИТЕП
         ПОЗИЦІЯ cc
        
ЧАСТИНИ НЕБЕЗПЕКА
         BUFFER 5
         РОЗМІР 6
         OUTLINECOLOR 200 200 200
    END
  END #class 0 значення
  КЛАС
    SYMBOL 3
    COLOR 255 128 128
    #COLOR -1 -1 -1 #SIN FILLING

.... і так закрити

END
  END # Значення класу
END # Layer

Завершити

Отже, робота з mapserver, хоч і досить проста, стає складною і дуже обмеженою для великих робочих місць, оскільки все знаходиться в .map. Найбільшим недоліком є ​​те, що все робиться пішки, наприклад, визначення кожного кольору в темі, і з цієї причини виникають такі інструменти, як CartoWeb, який працює на Mapserver, але пропонує вбудовані плагіни та приклади з характеристиками, які роблять цю примітивну версію схожою читай спочатку:

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

У наступному ми подивимося CartoWeb, тут я залишаю посилання на головні приклади.

Гольджі Альварес

Письменник, дослідник, спеціаліст із моделей землеустрою. Він брав участь у концептуалізації та впровадженні таких моделей, як: Національна система управління майном SINAP в Гондурасі, Модель управління спільними муніципалітетами в Гондурасі, Інтегрована модель управління кадастром - реєстр в Нікарагуа, Система адміністрування території SAT в Колумбії. . Редактор блогу знань Geofumadas з 2007 року та творець Академії AulaGEO, яка включає більше 100 курсів на теми GIS - CAD - BIM - Digital Twins.

Статті по темі

3 Коментарі

  1. Привіт

    Я намагаюся викликати шар із .map наступним чином:

    СЛОЙ
    NAME test_houses
    TYPE POINT
    CONNECTIONTYPE OGR
    ПІДКЛЮЧЕННЯ #”virtual.ovf”
    "

    ххххх
    ВИКОНАННЯ …….
    eess_id
    wkbPoint
    WGS84

    "

    Моя проблема полягає в тому, що служба DSN викликає проблеми: під час запиту GetCapabilities вона повертає пароль бази даних... чи можу я здійснити виклик до файлу, щоб уникнути "роздачі" пароля, чи це помилка DSN???? Дякую!

  2. MapServer - це популярний проект Open Source, метою якого є відображення динамічних просторових карт через Інтернет. Змонтований привід - це диск, який зв'язаний з порожньою папкою на гучномовці, що використовує файлову систему NTFS. Приєднані диски працюють як будь-які інші диски, але їм призначаються шляхи замість дисків.

залишити коментар

Ваша електронна адреса не буде опублікований. Обов'язкові для заповнення поля позначені *

Догори кнопки