![]() |
|
||
|
| Статьи и комментарии | ||
|
Быстрая разработка ГИС-приложений с помощью GIS ToolKit или собственная ГИС за час Д.А. Вицко системный аналитик, ведущий программист ЗАО КБ "Панорама"
GIS ToolKit, как средство разработки, отвечает основным требованиям RAD, а его компоненты могут в виде отдельных блоков быть интегрированы в схему бизнес-логики разрабатываемой системы. Давайте потратим час времени и построим свою геоинформационную систему на базе GIS ToolKit! В GIS ToolKit есть два компонента доступа к электронной карте - это MapView и его брат-близнец MapScreen. Данные компоненты выполняют открытие картографической информации, ее визуализацию, пересчет координат и т.д. Практически все компоненты из состава GIS ToolKit осуществляют доступ к пространственной информации именно через MapView (или MapScreen). Поэтому в первую очередь на форму помещаем компонент MapView (MapScreen). Примечание: здесь и далее компоненты и классы GIS ToolKit будут называться обобщенными именами, например, MapView, тогда как в GIS ToolKit Active этот компонент называется axMapView, а в GIS ToolKit для Borland - TMapView. Однако, смысл повествования от этого не меняется. Добавим элементы управления (кнопки, меню и т.д.) для активации различных действий. Например, положим на форму компонент диалога выбора электронной карты для ее открытия в MapView и заставим его вызываться по нажатию на соответствующую кнопку в интерфейсе нашего приложения. Кстати, открыть карту в MapView и установить некоторые параметры отображения можно уже в режиме дизайна, даже не компилируя приложение, а просто, установив значения определенных свойств компонента MapView. Добавим функциональности - перенесем на нашу форму еще несколько компонент GIS ToolKit. Каждый компонент GIS ToolKit - это "кирпичик" в фундаменте нашего ГИС-приложения, и каждый из них отвечает за определенную роль. Например, MapObj - это компонент доступа и управления отдельно взятым векторным объектом электронной карты, MapFind - компонент поиска объекта на карте, MapConvertor - средство импорта/экспорта векторной карты в обменные форматы (в том числе формат SXF) и т.д. Всего в Вашем распоряжении почти полсотни компонентов на все случаи жизни, около сотни классов и более тысячи функций API-доступа к ГИС-ядру GIS ToolKit. Поэтому не будем тратить время на их подробное рассмотрение. Все компоненты взаимодействуют с главным компонентом доступа к пространственным данным MapView (или MapScreen), а также между собой. Инициация выполнения заложенных в них операций в коде программы занимает всего несколько строк, или, как в случае с нашим OpenMapDialog, - вообще всего одну инструкцию. Такие компоненты-"полуфабрикаты" как MapObj или MapFind предоставляют свои сервисы программисту посредством своих методов, свойств и событий. Но, наибольший функционал содержится, само собой, в компонентах вызова специализированных картографических диалогов. Каждый такой диалог - это практически отдельный функциональный модуль в проектируемом ГИС-приложении. И эти функциональные модули предназначены для решения типичных задач, связанных с пространственными данными, что называется "от начала и до конца". Давайте и наше приложение оснастим некоторыми из них, ведь какой же программист не любит написанием всего пары строчек кода получить в своем приложении мощный функциональный блок. Мы пока ограничимся следующими компонентами:
По мере их добавления в наш проект будем их связывать с нашим MapView Добавляем для каждого режима свой элемент управления в интерфейсе (например, кнопки в панели управления нашего приложения). И в обработчике соответствующего элемента управления описываем лаконичный код вызова нужного режима. Помимо диалогов, реализованных в виде отдельных компонентов, в GIS ToolKit имеется множество диалогов, вызываемых посредством обращения к определенным методам компонентов и классов или просто отдельно взятыми функциями. Так, например, такие востребованные задачи, как установка собственных параметров проекции и системы координат для отображения карты или работа в местной системе координат, также доступны в GIS ToolKit. Установка параметров для этих задач тоже выполняется с помощью диалогов, а их вызов осуществляется соответствующими методами MapView (в данном случае это методы CurrentProjectionParametersDialog и WorkSystemParametersDialog). Не будем описывать процессы вызова каждого из диалогов или старта режимов. Все они в той или иной степени схожи между собой и не представляют особой сложности даже для не очень опытного программиста. Давайте посмотрим, что же у нас получилось в итоге. Мы научили наше приложение:
Мы также добавили в наше приложение возможность построения тематических карт (MapThematic). Тематическое картографирование - это наиболее наглядное представление различных статистических данных, имеющих пространственную привязку. Данные могут быть взяты как из самой карты (например, из семантики объектов), так и из внешней базы данных. Поддерживаются такие базы данных как Oracle, Microsoft SQL Server, MS Access, MS Excel, dBase, Paradox и другие. Но, даже такой насыщенный и с первого взгляда сложно реализуемый модуль, как тематическое картографирование, в приложение добавляется также легко, как и всех рассмотренных выше, - на "раз-два-три":
Запуск тематического картографирования выполняется всего одной инструкцией в коде программы: "axaxMapThematic.ExecDialog()". Резюме. Примечание.
|
||
| Продукты | Технологии | Классификаторы | Проекты | Скачать | Цены | | Статьи | Обучение | Контакты |
|
|||
| Copyright © Panorama Group 1991- 2012 |
||||