|
|
|
Одной из проблем,
возникающих при создании приложений,
ориентированных на работу с электронной
картой (в том числе и ГИС-приложений),
является работа с "пользовательскими
данными" - т.е. теми данными, формат
которых на момент построения приложения
либо не известен, либо различен у разных
пользователей, либо будет изменяться со
временем.
Возможное решение
состоит в создании конечного приложения,
предоставляющего доступ к своим внутренним
функциям и ресурсам. Этот доступ
осуществляется посредством сценариев -
текстовых файлов, содержащих исполняемый
код. Сценарий «проигрывается» приложением,
когда в этом возникает необходимость.
Например, при чтении данных или при
отображении пользовательских объектов. Типичный
пример: у пользователя в базе данных
появился новый тип объекта, который должен
отображаться на карте. Задача решается в
три приема: во-первых, объект описывается в
словаре объектов. Во-вторых, пишется новый (или
исправляется существующий) сценарий
загрузки данных. И наконец, пишется или
исправляется сценарий презентации
(представления данных на экране
компьютера). Физически все это может
выражаться в единственном текстовом файле,
содержащем все необходимые функции:
описания словаря, загрузки и презентации.
Приложение при этом остается неизменным, но
диапазон его применения благодаря такому
подходу может быть значительно расширен.
|
|
Концепция "открытого
интерфейса" системы dKart Explorer основана
на использовании интерпретатора сценариев,
отличительными чертами которого являются:
-
интерфейс (набор
функций), обеспечивающий построение
электронной карты на основании данных
пользователя и отображение этой карты на
экране компьютера.
-
компактность,
обеспечивающая возможность
использования интерпретатора в
практически любом приложении,
ориентированном на работу с картами;
Интерпретатор
сценариев использует специализированный
язык сценариев dKart (близкий по
синтаксису к языку программирования C),
ориентированный на работу с
картографической информацией.
Язык сценариев dKart
содержит 2 группы функций:
-
функции для
работы с картографической информацией
("геоконтекстом");
-
внешние функции
(работа с операционной системой, доступ к
базам данных, математические функции и т.д.)
|
-
работа со
словарем объектов (создание и
модификация словаря и т.д.);
-
работа с
объектами (создание, редактирование,
удаление и т.д.)
-
работа с
атрибутами объектов (создание,
редактирование, добавление, удаление и т.д.)
-
работа с
геометрией объектов - точечных, линейных,
площадных, трехмерных - (создание,
модификация, распознавание типа
геометрического примитива и т.д.);
-
работа с
картами (создание, загрузка с диска,
запрос параметров и т.д.);
-
работа с
геоконтекстом (создание, запрос
параметров отображения - масштаб, видимая
область, поиск информации в геоконтексте,
позиционирование геоконтекста).
|
-
функции для
работы с графическим интерфейсом ОС Microsoft
Windows;
-
функции для
работы с базами данных;
-
математические
функции;
-
функции работы
со строками;
-
функции работы
с файлами;
-
вспомогательные
функции (преобразование типов данных и т.д.).
|
|