2008-10-30

Техническое описание ArcGIS Server 9.3 [Раздел 6. Расширение возможностей ArcGIS Server for .NET]

Основной задачей ArcGIS Server является предоставление пользователям требуемой ГИС-функциональности. Поскольку требования пользователей варьируются очень широко, и для их удовлетворения стандартного веб-приложения явно недостаточно, технология ArcGIS Server предоставляет возможности для разработки прикладной функциональности.

Поскольку сообществом разработчиков ESRI ArcGIS уже разработано множество различных компонентов, рекомендуется ознакомиться с ними до начала собственной разработки, возможно, требуемая функциональность уже реализована:

·         Справочный центр ERSI ArcGIS Server, раздел Community (Code gallery для различных API): http://resources.esri.com/arcgisserver

·         Блог разработчиков ArcGIS Server: http://blogs.esri.com/Dev/blogs/arcgisserver/default.aspx

6.1   Типы клиентов ArcGIS Server

Возможности ArcGIS Server 9.3 могут использоваться следующими клиентами [1]:

·         Web applications (веб-приложения). Разработчик предоставляет пользователю визуальные элементы (интерфейс) в окне веб-браузера. Разработчик должен организовать взаимодействие веб-приложения с компонентами ГИС-сервера, выполняющими функции и предоставляющими данные. Также возможна реализация некоторых функций на стороне веб-приложения.

·         Web services (веб-сервисы). Веб-сервисы реализуют некоторую функциональность ГИС, например, могут передавать выборку данных по запросу. Веб-сервисы не имеют интерфейса, являясь источниками функциональности для различных приложений.

·         Mobile applications (мобильные приложения). Разработчик предоставляет ГИС-функциональность пользователям мобильных устройств (например, КПК) так же, как и при создании веб-приложений, только с учетом особенностей работы с мобильными устройствами.

·         Desktop applications (настольные приложения). Разработчик предоставляет пользователю при помощи ПК возможности работы с данными так же, как и при создании веб-приложения. Особенность в том, что разрабатывается стандартное Windows-приложение, которое обращается к сервисам ГИС. Используется ArcGIS Engine Developer Kit SDK.

 

clip_image002

Рисунок 17 — Возможные клиенты ArcGIS Server

6.2   Разработка веб-приложений и веб-сервисов

В случае если возможностей стандартного веб-приложения недостаточно, технология ArcGIS Server 9.3 for .NET предоставит возможность разработки веб-приложений и веб-сервисов с любой прикладной функциональностью.

Разработка может осуществляться при помощи различных API, каждая из которых имеет свои преимущества и особенности:

API

Назначение и возможности разработки

Требуемые навыки разработки

ArcGIS JavaScript API (включает расширения ArcGIS JavaScript Extension for the Google Maps API и ArcGIS JavaScript Extension for Virtual Earth)

Используется для включения картографических приложений на HTML-страницы.

JavaScript API является высокоуровневым языком, надстройкой над REST API, код которого выполняется в веб-браузере.

Минимальные знания HTML, достаточно просто копировать код примеров на HTML-страницы.

ArcGIS API for Flex

Используется для включения картографических приложений в приложения Adobe Flex.

Этот API также является высокоуровневым языком, надстройкой над REST API, код которого выполняется в веб-браузере.

Небольшие навыки разработки, знание Adobe Flex SDK.

ArcGIS Server Web Application Developer Framework (Web ADF)

Представляет собой набор шаблонов и компонентов для разработки ASP.NET-приложений в среде Microsoft Visual Studio.

Есть возможность разработки на основе:

·         шаблона веб-приложения, схожего с веб-приложением, разворачиваемым при помощи Manager

·         компонентов ESRI, таких как область карты, панель инструментов

·         прямого использования серверных компонентов ArcObjects API, SOAP API

Знание среды Microsoft Visual Studio и какого-либо из языков .NET.

ArcObjects API, SOAP API

Низкоуровневые API, предназначенные для прямого подключения к серверу ArcGIS Server и использования всех возможностей ArcObjects

Для профессиональных программистов, требуется знание ArcObjects

Mobile ADF

Представляет собой набор шаблонов и компонентов для разработки ГИС-приложений для КПК и смартфонов в среде Microsoft Visual Studio.

Знание среды Microsoft Visual Studio и какого-либо из языков .NET.


 


Скачать PDF-версию с оригинальным оформлением. © Для использования опубликованных на ресурсе материалов достаточно упоминания имени автора и адреса первоисточника. Дата обновления: 2008-10-30.

2008-10-29

Техническое описание ArcGIS Server 9.3 [Раздел 5. Возможности ArcGIS Server 9.3]

ГИС-сервер ArcGIS Server 9.3 позволяет создавать и публиковать различного вида сервисы, которые используются ГИС-приложениями. Пользователям можно предоставить широкий набор функциональности стандартными средствами ArcGIS Server, без написания программного кода.

1.1   Типы сервисов ArcGIS Server

Возможные виды ГИС-сервисов в ArcGIS Server 9.3 [1]:

·         Картографический сервис (Map service). Клиент такого сервиса может отображать и осуществлять запросы к данным, получать доступ к данным (репликация или извлечение), получать доступ с мобильных устройств. Сервис поддерживает технологии WMS, WFS, WCS, KML, Mobile Data Access, Network Analysis. Используя задачу редактирования в картографическом сервисе можно создавать, изменять геометрию, а так же править атрибутивную информацию объектов находящихся в базе пространственных данных под управлением ArcSDE.

§   KML-сервисы могут использоваться всеми ГИС-клиентами, поддерживающими эту технологию, в частности, Google Earth и ArcGIS Explorer [5].

§   WMS-сервисы (Web Map Service — формат, основанный на международных стандартах Open Geospatial Consortium) могут использоваться всеми ГИС-клиентами, поддерживающими эту технологию, в частности, Google Earth и ArcGIS Explorer. Особенностью технологии WMS является то, что клиент сервиса может получать исключительно «картинку» для просмотра (а не актуальные растровые и векторные данные) [6]. Используя функцию WMS, которая обеспечивает универсальный интерфейс для запросов к картам через HTTP, возможно получать метаданные сервиса WMS.

§   WFS-сервисы позволяют обмениваться векторными данными (только чтение), как альтернатива SHP-файлам [7]. WFS также могут публиковаться как Geodata service. Выбором в пользу Map service являются преимущества: публикуются данные не напрямую, а через настроенный MXD-проект, то есть можно подключить данные из других источников, скрыть некоторые классы данных. Настройки отображения (слои) и растровые данные не публикуются.

§   WFS-T-сервисы (WFS с поддержкой транзакций) позволяют обмениваться векторными данными (чтение и запись), как альтернатива SHP-файлам. Необходимо подключение через SDE, база данных должна поддерживать версионность и опубликованная версия БД не должна быть default.

§   Сервисы Network Analysis позволяют выполнять сетевой анализ (поиск кратчайшего пути, например). Альтернативой сервисам Network Analysis могут выступать сервисы геообработки и map-сервисы с заранее подготовленными для сетевого анализа слоями. Для использования сервиса Network Analysis необходимо использовать ГИС-клиент, поддерживающий эту функцию, пример можно посмотреть по адресу [ГИС-клиент с поддержкой Network Analyst].

·         Сервис Globe. Служит для отображения 3-х мерных данных, с помощью сервиса можно осуществлять навигацию на глобусе и выполнять запросы к данным, используя функцию KML (Keyhole Markup Language — спецификация XML для описания географических объектов и растров в трех измерениях). Для работы с сервисом Globe могут использоваться клиенты ArcGIS Explorer, ArcGlobe и Google Earth.

·         Сервис геоданных (Geodata service). Обеспечивает доступ к данным через локальную сеть или через Интернет. Сервис дает возможность создавать локальные копии данных (извлекать), выполнять запросы к базе геоданных и работать с репликами базы геоданных.

·         Сервис геообработки (Geoprocessing service). Предоставляет доступ к ГИС-функциональности, содержащейся в моделях геообработки, через Web. Функциональность сервиса определяется моделью геообработки. Подробнее о сервисах геообработки.

·         Геокодирование (Geocode service). Сервис определяет координаты по адресу.

·         Сервис геометрии (Geometry service). Предоставляет клиентам сложные геометрические функции (projection, buffering, evaluating spatial relationships и другие).

·         Сервис изображений (Image service). Позволяет публиковать растровые данные.

1.1   Сводная информация о сервисах

При создании сервисов следует отталкиваться от того, какая функциональность требуется пользователям. Определить тип сервиса для предоставления нужных возможностей поможет следующая таблица:

Возможности

Описание

Нужный тип сервиса

Требуемый тип источника данных

Геокодирование (Geocoding)

Предоставляет возможность определения адреса по координатам (address locator)

Geocode

Address locator (.loc, .mxs, SDE batch locator)

Geodata (доступ к данным)

Предоставляет доступ к БПД для извлечения данных, выполнения запросов к данным, репликации

Geodata (предпочтительнее), Map services

Database connection file (.sde) или personal geodatabase или file geodatabase или map document со ссылкой на versioned geodatabase

Геометрические операции (Geometry)

Предоставляет клиентам сложные геометрические функции (projection, buffering, evaluating spatial relationships и другие)

Geometry

Не требует источника данных

Геообработка (Geoprocessing)

Предоставляет клиентам возможности обработки данных по заданным моделям геообработки (как в ArcToolbox)

Geoprocessing, map services

.mxd с включенным tool layer или toolbox (.tbx)

3D-отображение данных (Globe)

Визуализация документов ArcGlobe

Globe

Globe document (.3dd, .pmf)

Визуализация растров (Imaging)

Доступ к содержимому растровых наборов данных или сервисам ArcIMS

Image

Raster dataset или layer file со ссылкой на raster dataset или compiled image service definition (.ISCDef)

KML

Доступ к данным для KML-клиентов

Map services

Map document (.mxd, .pmf)

Визуализация (Mapping)

Визуализация документов ArcMap и базовый набор инструментов

Map services

Map document (.mxd, .pmf)

Поддержка мобильных устройств (Mobile Data Access)

Выгрузка данных для мобильных устройств

Map services

Map document (.mxd, .pmf)

Сетевой анализ (Network Analysis)

Сетевой анализ (поиск кратчайшего пути, например)

Map services

Map document (.mxd, .pmf)

Визуализация растров для WCS-клиентов

Визуализация растров для WCS-клиентов

Geodata, image, map services

Map document (.mxd, .pmf) или источники данных для Geodata, image

Доступ к данным через WFS

Обмен векторными данными при помощи технологии WFS

Geodata, map services

Map document (.mxd, .pmf) или источники данных для Geodata

Визуализация для WMS-клиентов

Визуализация для WMS-клиентов

Image, map services

Map document (.mxd, .pmf) или источники данных для image

1.2   Стандартные задачи ArcGIS Server for .NET

1.2.1 Редактирование

Редактирование (Editor task) через клиентское приложение является отличительной особенностью ArcGIS Server от конкурирующих программных продуктов.

Внешний вид панели редактирования в веб-приложении представлен на рисунке 11.

clip_image002

Рисунок 11 — Внешний вид панели редактирования в веб-приложении

Особенности при добавлении задачи редактирования:

1.   Опубликованный MXD-документ должен включать ссылки на данные через ArcSDE (этот механизм обеспечивает многопользовательское редактирование данных). Могут редактироваться только классы данных, подключенные через SDE.

2.   Редактирование не применимо к слоям аннотаций, данным, включающим сложные запросы, и к несвязанным табличным данным (annotation layers, joined fields, stand-alone tables).

3.   Существуют некоторые дополнительные ограничения.

Приложение, содержащее задачу редактирования, включает справку о выполнении всех функций редактирования, что очень удобно для конечного пользователя.

clip_image004

Рисунок 12 — Пример выполнения задачи редактирования

Подробнее о задаче редактирования в ArcGIS Server 9.3.

1.1.1 Поиск адреса по координатам

Задача поиска адреса на карте (Find Address task) требует поддержки сервиса геокодирования, который может быть запущен как локально, так и на удаленной машине.

1.1.2 Поиск места на карте

Задача поиска места на карте (Find Place task) позволяет пользователю найти нужное ему место на карте, введя его название.

К сожалению, для использования этой задачи необходим доступ к службам ArcWeb Service (услуга платная).

1.1.1 Геообработка

Геообработка (Geoprocessing task) позволяет выполнять в веб-приложении требуемую пользователям функциональность без написания программного кода. Достаточно создать в ArcGIS Desktop требуемую модель геообработки, опубликовать сервис геообработки на основе этой модели и подключить его к веб-приложению.

Таким образом, создание пользовательской функциональности, например, выделение объектов, выгрузка данных на определенный участок карты, выполнение аналитических операций, не составляет никакой сложности.

1.1.2 Печать

Задача печати (Print task) позволяет пользователю печатать изображение карты и результаты выполнения других задач (например, результаты поиска и идентификации).

clip_image002

Рисунок 13 — Форма для печати карты

1.1.3 Выбор объектов по атрибутам

Выбор объектов по атрибутам (Query Attributes task) позволяет пользователю производить выбор объектов на карте без составления SQL-запросов и других сложностей. Для этого при развертывании веб-приложения необходимо настроить задачу выбора объектов по атрибутам.

clip_image004

Рисунок 14 — Форма для составления запроса на выбор объектов

Одна задача, добавленная в веб-приложение, может включать выбор объектов только одного слоя данных, но запросы могут быть сложными (с участием логического оператора «И»). Для предоставления пользователям возможности отбирать объекты на различных слоях данных можно добавить несколько экземпляров задачи.

clip_image006

Рисунок 15 — Пример отображения результатов выполнения задачи выбора

1.1.4 Поиск объектов по атрибутам

Для предоставления пользователю возможности поиска объектов по нескольким слоям данных и целому перечню атрибутов, используется задача поиска объектов по атрибутам (Search Attributes task).

При развертывании веб-приложения следует указать, по каким слоям данных производить поиск и по каким атрибутам данных. После запуска такого поиска, пользователь получит список объектов, в атрибутах которого встречается указанное им выражение:

clip_image008

Рисунок 16 — Пример выполнения задачи поиска объектов


 


Скачать PDF-версию с оригинальным оформлением. © Для использования опубликованных на ресурсе материалов достаточно упоминания имени автора и адреса первоисточника. Дата обновления: 2008-10-30.