Опыт разработки и использования расширений для ArcView 3.2

Виктор Мельник, Сергей Ворошин, Ирина Голубенко, Юрий Ручкин, Александр Зинкевич
Северо-восточный комплексный НИИ, Дальневосточное отделение РАН (СВКНИИ ДВО РАН), г. Магадан, тел. (413-22) 3-08-50, 72-385, эл. почта: info@magis.ru, Веб сайт: www.magis.ru

 

При создании ГИС перед разработчиками и исполнителями конкретных проектов часто встает задача не только наполнения ГИС данными, но и встраивания удобных средств с целью адаптации стандартного пользовательского интерфейса и, зачастую, функциональности программного обеспечения под задачи реального пользователя. Далее кратко описывается несколько созданных нами расширений к пользовательскому интерфейсу ArcVeiw 3.2, написанных на языке Avenue и распространяемых как отдельные модули в виде файлов *.avx.

1. Модуль «Редактор атрибутов» позволяет редактировать атрибутивные данные графических объектов непосредственно в Виде ArcView. Во время загрузки модуля в стандартный интерфейс ArcView добавляются новые кнопки «Выбор полей для редактирования» и «Выбор объекта(ов) для редактирования атрибутов» (рис. 1). Нажав первую кнопку, пользователь получает возможность редактировать структуру таблицы атрибутов активного слоя: изменить название, тип и ширину поля; добавить новое или удалить имеющееся поле; создать список уникальных значений выбранного поля, отсортированных по убыванию. Второй инструмент при двойном щелчке кнопкой мыши на выбранном объекте загружает окно «ввода значений», в котором пользователь непосредственно в Виде ArcView может заполнить необходимые поля атрибутивной таблицы данными как непосредственно с клавиатуры, так и выбрав их из списка уникальных значений выбранного поля.


Рис. 1. Модуль «Редактор атрибутов».

     2. Модуль «Морская навигация» разработан согласно условиям и задачам, согласованным с капитаном плавбазы «ЛИРА», для демонстрации возможностей ГИС в навигационных задачах. Основная цель — облегчить работу штурмана плавбазы во время навигации по акваториям Охотского и Японского морей. Функции модуля навигации: построение маршрута движения плавбазы как непосредственно на карте, так и с клавиатуры, определение ее места положения на карте, вычисление расстояния и времени движения в пункт назначения, вычисление угла поворота в точках изменения курса плавбазы (рис. 2). В модуль добавлена картографическая основа из растровых изображений карт акватории Охотского и Японского морей, перепроецированных в цилиндрическую проекцию Меркатора. В будущем предполагается создание функции по передаче координат местоположения плавбазы с GPS-приемника, установленного на плавбазе, в ГИС в режиме реального времени.


Рис. 2. Модуль «Морская навигация».

     3. Модуль «Метод ячейки» предназначен для изучения взаимосвязей пространственных объектов (точечных, линейных и полигональных) методом наложения ячеек на анализируемую территорию с определением среднестатистических параметров объектов в единичной ячейке. В результате работы модуля создается новый полигональный слой, состоящий из равномерной сети элементарных ячеек, которые полностью перекрывают анализируемую площадь. Затем проводится расчет показателей внутри каждой ячейки путем последовательного перебора объектов, в последующем ячейке присваивается средневзвешенное числовое значение исследуемого показателя. Модуль создан таким образом, чтобы пользователь мог задать необходимый размер ячейки, ее форму, метод наложения ячеек и показатель изучения. Если построить центроид для каждой ячейки и присвоить ему рассчитанные значения, то стандартными средствами дополнительного модуля 3D Analyst в ArcView GIS можно построить поверхность распределения анализируемого показателя.

С помощью этого модуля проведен анализ данных в ГИС «Россыпные месторождения золота Центрально-Колымского региона», определены среднестатистические параметры месторождений (количество добытого золота, среднее содержание золота, мощность торфов и песков, крупность и пробность золота) и на основе полученных данных построены карты закономерностей распределения россыпного золота в данном регионе (рис. 3).


Рис. 3. Модуль «Метод ячейки». Окно ввода параметров.

     4. Модуль «Выкопировка» разработан для Управления архитектуры и градостроительства Мэрии г. Магадана. Основное назначение – автоматизация подготовки технических документов, выдаваемых при оформлении земельных участков на территории г. Магадана.

Модуль добавляет в интерфейс ArcView новые инструменты «Редактор координат» и «Создание выкопировки». С помощью первого инструмента пользователь может изменить направление оцифровки, удалить, изменить координаты, добавить или сделать первой выбранную точку, подписать в Виде ArcView поворотные точки. Второй инструмент по заранее заданному шаблону строит титульную и обратную сторону выкопировки. На титульной стороне размещены: название земельного участка, его вид, масштаб, в котором создана выкопировка, площадь участка и подписи о согласовании выделения участка землепользователю; на оборотной – каталог координат участка, его периметр и площадь (рис. 4).


Рис. 4. Модуль «Выкопировка». Страницы выкопировки.

     5. Модуль «УЖКО». Управление жилищно-коммунального обеспечения Мэрии г. Магадана внедряет на своем предприятии ГИС г. Магадана. Перед нами была поставлена задача по разработке пользовательского интерфейса для работы с данными характеристик жилищного фонда, находящегося на балансе Управления.

Основная проблема, с которой пришлось столкнуться – большое количество параметров описания одного жилого здания (62 поля в атрибутивной таблице). Обычные средства управления атрибутивными таблицами неудобны при работе с информацией большого объема. Поэтому был создан инструмент, позволяющий отобразить запись из таблицы для каждого жилого дома в виде набора последовательных форм, в которых можно как просматривать, так и редактировать данные (рис. 5). Для создания форм-отчетов по одному жилому дому и всему жилищному фонду был создан инструмент, выполняющий соответствующие функции.


Рис. 5. Модуль «УЖКО». Отчетные формы.

В настоящее время для ГИБДД УВД Магаданской области разрабатывается модуль «Топографический анализ очагов аварийности». Предполагается, что он будет использоваться совместно с ГИС г. Магадана. Основная цель модуля — автоматизировать выявление мест концентрации очагов аварийности и нарушений правил дорожного движения для принятия мер к снижению аварийности на этих участках.