ГИС Конструктор cодержит набор скриптов на языке PL\SQL, демонстрирующих применение серверной ГИС-библиотеки для работы с электронными картами из среды Oracle.
Визуализация содержимого электронных карт производится в условных знаках, принятых для топографических, обзорно-географических, кадастровых и других видов карт. Широкие возможности для создания (добавления) пользовательских условных знаков. Поддержка различных систем координат и проекций. Представление электронной карты на дисплее является многослойным и может создаваться путем комбинирования растрового вида карт и фотоматериала, векторных объектов местности, матриц свойств местности (матрица высот, матрица экологически опасных участков местности, матрица проходимости местности и т.д.) и пользовательских данных.
Поддерживаются операционные системы: SuSe Linux. По заказу возможен выпуск версии под любую операционную систему Linux.
Набор скриптов демонстрирует следующие возможности:
- открыть и сохранить заданный фрагмент отображения карты в файл формата GIF;
- изменить состав отображаемых объектов электронной карты;
- изменить масштаб изображения карты;
- осуществить поиск объекта по заданной семантике;
- выделить объекты карты с заданными характеристиками;
- осуществить перевод координат точки в пикселах в метры на местности и в географические координаты (в радианах);
- создать пользовательскую карту по открытой базовой карте;
- добавить к базовой карте пользовательскую карту и создать объект на пользовательской карте;
- редактировать метрику объекта пользовательской карты;
- редактировать семантику объекта пользовательской карты и осуществить поиск объекта по семантике;
- удалить объект пользовательской карты.
При выполнении скриптов вызываются функции MAPAPI-интерфейса из библиотеки libmapplsql.so. Импортируемые функции описываются на языке PL\SQL. Например:
- -- Открыть векторные данные
-- Возвращает идентификатор открытой векторной карты (HMAP)
-- m3 - имя файла MAP,
-- m1 - режим чтения/записи (GENERIC_READ, GENERIC_WRITE или 0)
-- При ошибке возвращает ноль
CREATE OR REPLACE FUNCTION mapOpenMap(m3 IN VARCHAR2, m1 IN BINARY_INTEGER)
RETURN BINARY_INTEGER
AS EXTERNAL NAME "mapOpenMap" LIBRARY LibMapAcces1
PARAMETERS(m3 STRING, m1 LONG);
/
- -- Закрыть все данные электронной карты
-- hmap - идентификатор открытых данных
-- Идентификатор HMAP становится недействительным!
CREATE OR REPLACE PROCEDURE mapCloseMap(hMap IN BINARY_INTEGER)
AS EXTERNAL NAME "mapCloseMap" LIBRARY LibMapAcces1
PARAMETERS(hMap LONG);
/
Более подробное описание в документации. |