MapInfo Professional.
Геоинформационная система MapInfo была разработана в конце 80-х годов фирмой Mapping Information Systems
Corporation (U.S.A.). ГИС MapInfo работает на платформах РС (Windows 3.x/95/98/NT), PowerPC (MacOS), Alpha, RISC (Unix). Файлы данных и программы MapBasic переносимы с
платформы на платформу без конвертации.
Пакет MapInfo специально
спроектирован для обработки и анализа информации, имеющей адресную или
пространственную привязку. Операции, поддерживающие общение с базой данных,
настолько просты, что достаточно небольшого опыта работы с любой базой данных,
чтобы сразу использовать возможности компьютерной картогрфии.
MapInfo - это картографическая база данных.
Встроенный мощный язык запросов SQL MM, благодаря географическому расширению,
позволяет организовать выборки с учетом пространственных отношений объектов,
таких как удаленность, вложенность, перекрытия, пересечения, площади и т.п.
Запросы к базе данных можно сохранять в виде шаблонов для многократного
использования. В MapInfo имеется возможность поиска и
нанесения объектов на карту по координатам, адресу или системе индексов.
MapInfo позволяет редактировать и создавать электронные
карты. Оцифровка возможна как с помощью дигитайзера, так и по сканированному
изображению. MapInfo поддерживает растровые форматы
GIF, JPEG, TIFF, PCX, BMP, TGA (Targa), BIL (SPOT-
спутниковые фотографии). Универсальный транслятор MapInfo
импортирует карты созданные в форматах других геоинформационных
и САПР-систем: AutoCAD (DXF, DWG), Intergraph/MicroStation Design (DGN), ESRI Shape файл, AtlasGIS, ARC/INFO Export (E00).
Цифровая информация с GPS (навигационных приборов глобального позиционирования)
и других электронных приборов вводится в MapInfo без
использования дополнительных программ.
В MapInfo возможна работа
с данными в форматах Excel, Access,
dBASE, Lotus 1-2-3 и текстовом. Конвертация
файлов данных не требуется. К записям в этих файлах добавляются
картографические объекты. Данные разных форматов могут использоваться
одновременно в одном сеансе работы. Из MapInfo
возможен доступ к удаленным базам данных ORACLE, SYBASE, INFORMIX, INGRES, QE Lib, DB2, Microsoft SQL и др.
В MapInfo
существует 5 основных типов окон: Карты, Списка, Легенды, Графика и Отчета.
В Окне Карты
доступны инструменты редактирования и создания картографических объектов,
масштабирования, изменения проекций и другие функции работы с картой.
В Окне Списка
информация, связанная с картографическими объектами может быть представлена в
виде таблицы.
В Окне Графика
данные из таблиц можно показать в виде графиков и диаграмм различных типов.
В Окне Легенды отображены условные обозначения объектов на карте и
тематических слоях.
В Окне Отчета предоставляются средства масштабирования, макетирования, а
также сохранения шаблонов многолистных карт.
Работая с MapInfo,
можно формировать и распечатывать отчеты с фрагментами карт, списками,
графиками и надписями. При выводе на печать MapInfo
использует стандартные драйверы операционной системы.
Тематическая картография является мощным
средством анализа и наглядного представления пространственных данных. На
тематической карте легко понять связи между различными объектами и увидеть
тенденции в развитии различных явлений. В MapInfo
можно создавать тематические карты следующих основных типов: картограммы, столбчатые
и круговые диаграммы, метод значков, плотность точек, метод качественного фона
и непрерывной поверхности-грид. Сочетание
тематических слоев и методов буферизации, районирования, слияния и разбиения
объектов, пространственной и атрибутивной классификации позволяет создавать
синтетические многокомпонентные карты с иерархической структурой легенды.
MapInfo - открытая система. Язык
программирования MapBasic позволяет создавать на базе
MapInfo собственные ГИС. MapBasic
поддерживает обмен данными между процессами (DDE, DLL, RPC,XCMD,XFCN),
интеграцию в программу SQL-запросов. Совместное использование MapInfo и среды разработки MapBasic
дает возможность каждому создать свою собственную ГИС для решения конкретных
прикладных задач.
Среда программирования для MapInfo Professional
1.Формирование пользовательского
интерфейса
MapBasic позволяет разработать собственные
меню, панели инструментов и диалоги, упрощающие работу конечного пользователя с
геоинформацией, а также позволяет создать собственную
ГИС, добавляя необходимую функциональность к имеющимся возможностям ГИС MapInfo.
2.Интегрированная картография
Возможно встраивание окон MapInfo
в программы, написанные на других языках типа Delphi,
Visual Basic, C++, PowerBuilder. Например, пять строчек кода на Visual Basic позволяют вставить
окно MapInfo в собственное приложение. Используя OLE automation и DDE можно легко обмениваться информацией с
другими Windows-приложениями. MapBasic поддерживает
стандарт ODBC для связи с внешними базами данных.
3. Легкость освоения
MapBasic имеет функции и операторы, аналогичные
языку BASIC , а также картографические функции ГИС. MapInfo
Professional имеет специальное окно, в котором можно
видеть команды MapBasic, генерируемые MapInfo при выполнении пользователем различных операций.
Окно MapBasic в MapInfo
позволяет быстрее освоить этот язык и упрощает процесс программирования.
4.Среда разработки
Созданные и откомпилированные в MapBasic программы можно использовать при работе с MapInfo Professional и Runtime модулей MapInfo. MapBasic - язык мультиплатформенный,
модульный, процедурный, позволяющий управлять событиями. Конструктор Диалогов
обеспечивает визуальное программирование интерфейса для приложений MapInfo и автоматически генерирует код MapBasic.
5.Функциональные
возможности
MapBasic содержит более 300 операторов и
функций, и обладает следующими характерными чертами:
гибкость: Модульная структура программы,
организация циклов, управление процессами, возможность обработки ошибок и
откликов на события.
открытость: Вызов динамических библиотек (DLL)
или исполняемых программ (EXE) из MapBasic
приложения. Команды языка MapBasic через DDE или OLE Automation позволяют управлять ГИС MapInfo
из других Windows приложений. Доступ к удаленным
базам данных через ODBC.
настраиваемость: Возможность модификации меню MapInfo
и создание собственной специфичной системы меню, диалогов и панелей
инструментов.
sql-стандарт запросов: Включение в приложения запросов SQL с
географическим расширением.
управление таблицами и файлами: Прямое открытие файлов Exсel, Access, Lotus 1-2-3, dBASE и ASCII, запросы к ним, формирующие временные таблицы
или временные колонки, сортировка, обновление, объединение, группировка и
другие механизмы управления данными, поддержка семантического и графического
объединения данных с возможностью сохранения и восстановления данных. Работа с
таблицами Oracle, Ingres, Informix, DB/2, Microsoft SQL через ODBC и в некоторых
случаях напрямую.
создание и редактирование
географических объектов: Создание
точечных, линейных, площадных объектов, текста, буферных зон и других
пространственных объектов. Модификация стиля оформления объекта и типов
объектов. Изменение положения узлов как одного объекта, так и группы объектов.
Оверлейные операции: объединение, разрезание, удаление внешней или перекрывающей
части. Вычисление площади, периметра, центроида,
протяженности, площади перекрытия. Формирование карт из различных слоев,
контроль за установками отображения слоев и особенностями их визуализации в
зависимости от масштаба. Создание тематических карт и легенд к ним. Поиск и геокодирование объектов. Возможность перехода от проекции к
проекции и создание собственных проекций и элипсоидов.
MapBasic позволяет адаптировать MapInfo для решения задач любого уровня сложности и
разрабатывать рабочие места, для специалистов самого широкого профиля.
ГИС и компьютерная картография (метод MapInfo).
1. Организация данных
В данной методике работа в MapInfo рассматривается в контексте ведения
Государственного земельного кадастра. С этой точки зрения реальные объекты и
их модели в ГИС представляются как множество общегеографических,
политико-административных, хозяйственных характеристик территории и объектов
кадастрового учета (сельскохозяйственных угодий, земель различного
предназначения, охраняемых природных территорий, резервных территорий,
земельных участков, зданий, строений, сооружений). Эти характеристики и объекты
связаны между собой пространственно - тем, что расположены на одной территории
и, в некоторых случаях, семантически, то есть через негеографические
характеристики (тип объекта, тип использования, вид собственности и т.д.).
Пространственные и семантические характеристики
совместно описывают географический объект, являясь частями единого описания.
Поэтому, создавая объект в ГИС, необходимо вместе с графическим
представлением, создавать дополнительно его семантическое описание.
1.1. Характеристики объектов автоматизированного картирования
Каждый географический объект, отображенный в
цифровой карте, обладает рядом характеристик - пространственными и семантическими
К «пространственным» относятся характеристики,
определяющие положение объекта в пространстве. Рассмотрим два типа
пространственных характеристик объектов - геометрию и топологию.
Ø
Геометрия
Геометрические характеристики определяют форму
географического объекта, его местоположение в пространстве, метрику.
Так как все реальные географические объекты занимают некоторое место
на поверхности земли, основной фигурой представления географического объекта
является полигон. Однако, специфика картографии, в частности, различные
масштабы представления информации и применение условных знаков, приводит к
широкому использованию еще двух основных геометрических фигур - линий
(ломаных) и точек.
рис. 13.1
Метрика включает в себя такие характеристики, как
площадь объекта, его длина и периметр. Так для объекта, представленного полигоном,
определяются площадь и периметр. Для объекта, представленного линией - длина,
направление. Точечный объект метрических характеристик не имеет, хотя понимается,
как пространственный объект, который может быть представлен на карте.
Ø Топология
«Топологическими» называются характеристики,
описывающие пространственные взаимоотношения объекта с другими. Они позволяют
описать смежность объектов между собой, перекрытие или включенность
объектов.
Топология может быть представлена неявно, через
анализ местоположения различных объектов в карте или явно описана в семантике
объекта.
Ø
Семантические
характеристики
Семантические характеристики описывают такие
свойства и характеристики объектов, которые не могут быть описаны с помощью
пространственных характеристик. С другой стороны, как уже замечалось выше,
некоторые пространственные характеристики могут быть описаны через семантику. В
системе MapInfo предлагаются два способа
представления семантики: тексты и графика.
• Тексты
Тексты наиболее общий способ представления
семантических характеристик. В системах автоматизированного картографирования
главным способом использования текстов является представление информации в виде
текстовых таблиц.
• Графика
Графика используется для представления
семантических характеристик через картографические условные знаки или
специальные диаграммы - картограммы.
1.2. Организация данных в MapInfo
MapInfo организует пространственные данные в виде таблиц.
Таблица состоит из записей. Каждая запись - это структурированный набор данных,
описывающих (представляющих) тот или иной объект карты. Структура записи
представлена полями. Поле - это «минимальный элемент» хранения информации в
таблице. Поля характеризуются типом в зависимости от хранимой информации -
числовые, текстовые, логические и др. Группа одноименных полей в одной таблице
называется колонкой.
В зависимости от того, как распределены данные,
описывающие объекты, таблицы MapInfo могут быть картируемыми и некартируемыми.
Картируемой называется таблица, которая кроме семантических
характеристик содержит в каждой своей записи специальное поле, в котором
находится ссылка на картографический объект. Каждая запись картируемой
таблицы может ссылаться на один и только один картографический объект, либо не
ссылаться ни на один. Некартируемой называется
таблица, не содержащая ссылок на картографические объекты. Картируемой
или некартируемой таблица объявляется пользователем
в момент ее создания.
Таблицы MapInfo представлены файлами. Каждую таблицу составляют по крайней мере четыре
файла. Однако, для пользователя доступным (для поиска, открытия и редакции)
является только один, имеющий расширение ТАВ.
<имя
файла>.ТАВ: - этот файл
содержит описание структуры данных таблицы. Он представляет собой небольшой
текстовый файл, описывающий формат того файла, который содержит данные.
<имя
файла>.ID - файл идентификаторов связи текстовой и
графической информации.
<имя
файла>.DAT или <имя файла>.\WSK, .XLS: - этот файл
содержит табличные атрибутивные данные. Если Вы работаете с файлами систем Dbase/FoxBase, или ASCII с разделителями, таблицами Lotus 1-2-3 или MS Excel, таблица MapInfo будет состоять из файла с расширением .ТАВ и файла
электронной таблицы.
<имя
файла>.MAP: - этот файл описывает графические, пространственные
объекты на картах.
Таблица может содержать также еще индексный файл.
Индексный файл позволяет проводить более эффективный поиск объектов на карте.
Индекс хранится в файле:
<имя-файла>.IND - этот файл содержит
список указателей (индекс) на графические объекты, позволяющий MapInfo быстро находить объекты на карте.
Связь между записями в разных таблицах, относящихся к одному объекту,
осуществляется через содержание полей, специально выделенных для этой цели -
т. н. ключевых полей. Ключевое поле всегда содержит некоторое значение,
уникальное в пределах системы для данного объекта.
1.3. Послойная структура цифровой карты
Карта организована как набор слоев. Слои «уложены»
в карте один на другой и являются как бы прозрачными. Каждый слой представляет
отдельный аспект целой карты.
рис. 13.2
Каждая картируемая
таблица представляется отдельным слоем карты. Слой содержит все графические
объекты, на которые ссылается таблица. Это могут быть полигоны, ломаные, точки
и надписи (аннотации). Отображение объектов на слое регулируется средствами
управления слоев - ими задаются графические характеристики объектов, стиль и
содержание аннотаций и др.
Кроме слоев, по умолчанию называющихся по именам
представляемых таблиц, MapInfo использует один специальный слой, называемый косметическим. Он не
связан ни с одной таблицей базы данных и используется как вспомогательный при
различных операциях.
В карте в самом нижнем слое в качестве подложек
могут использоваться растровые изображения - например, аэрофотоснимки, бумажные
карты после их превращения в растровые файлы известных форматов. При этом для
пользователя доступ к растру такой же, как и к векторным объектам - через
таблицу и слой.
Системы координат и картографические проекции.
Основная система координат, используемая в системе MapInfo, связана с мировой системой координат, где в
качестве начала отсчета используется экватор и Гринвичский меридиан.
Координаты выражаются в градусах широты и долготы.
В MapInfo при создании карт учитывается картографическая проекция, в которой
отображаются значения координат географических объектов.
рис. 13.3
Проекция - это математическая модель, при помощи
которой вычисляют, какое положение займет реальный географический объект. Не
земной поверхности при отображении его на двумерную (плоскую) поверхность.
Поскольку карта - это попытка представить сфероидальный объект (Землю) в виде
плоской поверхности (листа карты), все проекции имеют разную степень искажения
представления. Координатные проекции могут сохранять площадь, расстояние,
форму и направление, но только шар способен точно передать все эти характеристики
одновременно.
Учет проекции, в которой создана карта в ГИС, важен
в особенности в следующих случаях:
v
при оцифровке
бумажных карт, созданных в разных проекциях;
v
при работе с
мелкомасштабными картами;
v
при импорте
чертежей из других систем, например ОХР;
v
при решении задач пространственного анализа, требующих географической
точности.
Использование проекций как таковых не требуется при
работе в так называемых Картезианских (Декартовых) координатах, когда используется
плоская (плановая) модель представления геоданных.
13.4. Специальные виды представления геоданных.
1. Группировка объектов на карте.
Процедура построения геогрупп состоит в
объединении объектов на карте в большие регионы или территории для обобщения
данных по этим территориям. В окне карты цветом выделяются сгруппированные
объекты, а в специальном окне «Список Геогрупп»
помещаются данные о геогруппах в табличной форме.
Если таблица соответствующим образом готова, возможно проводить геогруппирование автематически. В
противном случае осуществляются интерактивное геогруппирование.
рис. 13.4
2. Создание тематических карт.
Тематическое картографирование является эффективным
средством анализа и наглядного представления данных на карте. На тематической
карте легко уловить тенденции и взаимозависимости пространственных данных,
которые часто невозможно обнаружить с помощью табличного представления.
В MapInfo версии 4.5 предлагается
шесть классов тематических карт, каждый из которых внутри имеет большой ряд
вариантов представлений.
Технологии ввода и редактирования данных в MapInfo.
Ввод данных в MapInfo может осуществляться несколькими способами в
зависимости от источника данных. Источниками данных для ввода могут быть:
v
бумажная карта
в известной проекции (в том числе план);
v
фотокарта,
фотоплан (в том числе ортофототрансформированные аэроснимки);
v
цифровая
карта, полученная в другом формате (в формате AutoCad DXF);
v
файл в
обменном формате MapInfo – MIF(MID):
v
файл с
координатами объектов топографических съемок (таблица в формате Excel, dBase, ACCII).
Таким
образом, методы ввода геоданных в систему, согласно
этому перечню, разделяются на:
v
оцифровку
бумажных карт или ортофотоснимков на дигитайзере:
v
оцифровку
бумажных карт или ортофотоснимков на основе сканерных технологий:
v
конвертирование
цифровых данных из внешних форматов с помощью специальных процедур:
v
ввод в систему
пикетов топосъемки и формирование по ним объектов MapInfo.
Редактирование формы и положения объектов
длительный процесс имеет целью формирование корректной в топологическом смысле
цифровой карты, в которой все объекты кадастрового учета (кварталы, участки,
строения и т.д.) должны представляться полигонами, у которых примыкающие их
части должны быть совмещены по узлам. При этом не допускается пересечение и
или наложение полигонов как в пределах одного слоя, так и полигонов разных
слоев.
Создание и управление семантическими таблицами.
Семантические данные в MapInfo могут храниться как в картируемых
таблицах совместно с графическими данными, так и отдельно от графических
данных в некартируемых таблицах. Как те, так и другие
являются реляционными таблицами с жестко структурированными данными.
Для того чтобы вводить семантические данные
необходимо, чтобы была подготовлена структура хранения данных. Для этого нужно
создать или перестроить таблицы, задав им необходимую структуру полей. Поля
реляционной таблицы характеризуются разными типами. Тип поля определяет,
какого сорта данные могут храниться в данном поле и какие операции над этими
данными можно проделывать
В реляционных БД используются следующие типы полей:
• Целочисленные (integer)
Поля, имеющие целочисленный тип, содержат целые
числа в диапазоне от -2,147,483,647 до+2,147,483,647. Эти поля используются,
как правило, для хранения системных номеров объектов и кадастровых номеров.
Над полями этого типа можно проделывать все арифметические операции, определять
минимальные, максимальные и средние значения.
• Вещественные (float)
Поля, имеющие вещественный тип, содержат числа с
плавающей точкой и предназначены для хранения значений площадей, длин,
периметров и координат. Над полями этого типа можно проделывать такие же
операции, как и над полями целочисленного типа.
• Символьный или строчный (character)
Поля строчного типа содержат текстовую информацию,
которая может содержать до 32767 символов. Предназначены для хранения любой
семантической информации, в частности, для хранения совокупных кадастровых
номеров и номеров документов. Над полями этого типа можно производить операции
конкатенации (слияния) и поиска подстроки (части текста, включенного в строку).
• Датовые (date)
Поля типа date содержат даты в формате отображения, выбранном в Windows в качестве текущего, и предназначены для хранения
данных о датах; Над полями этого типа возможно проведение операций типа
«раньше» и «позже», т.е. изменения дат в ту или иную «сторону».
• Логические (logic)
Поля логического типа содержат информацию, которая
содержит только два альтернативных варианта - Да (through) или Нет (false). Предназначены для хранения информации
однозначного ответа, в частности, для хранения альтернативных характеристик
недвижимости - Жилой (Нежилой). Над полями этого типа можно производить только
логические операции.
Ссылки на картографические объекты в MapInfo хранятся в полях
специального объектного типа (object) и не видны пользователю.
Эти поля организуются автоматически, когда при создании таблицы она
объявляется картируемой.
Основы техники запросов в MapInfo.
Запросы в ГИС MapInfo адресуются ко всем характеристикам объектов вместе
или порознь. Результатом запросов является табличное или графическое
представление объектов, удовлетворяющих критериям запроса, либо некоторые
синтетические характеристики объектов (т. е,
информации, полученной в результате анализа существующих данных). К последним
могут относиться семантические характеристики - например, значения
статистических расчетов, информация о пространственном взаимодействии
объектов, или пространственные характеристики - например, новые объекты,
появившиеся в результате пространственного взаимодействия существующих.
Внутреннее «устройство» любого запроса таково.
Каждый запрос, в независимости от того, к какой группе он принадлежит, должен
обладать «объектом запроса» и «критерием запроса». Под «объектом запроса» здесь
подразумевается источник данных, в котором будет производиться поиск ответа на
запрос. Критерием запроса называется одно или комбинация условий, которым
должны удовлетворять данные, анализируемые в течение обработки запроса.
Объектом запроса может являться объект (или много
объектов) карты во всей совокупности его характеристик, или характеристики
этого (или этих) объектов по отдельности. Критерием запроса может быть одно или
несколько значений одной или нескольких характеристик объектов. Запрос состоит
в том, чтобы найти объекты, характеристики которых точно (или наиболее точно,
в зависимости от условия запроса) удовлетворяют критерию.
В зависимости от объектов и критериев запросы можно
разделить на три группы:
• пространственные запросы
• семантические запросы
• комбинированные запросы
К пространственным относятся запросы, объектом
которых являются пространственные характеристики объектов, а критерием
-пространственная «маска». Пространственная маска - это некоторая
геометрическая фигура, задающая замкнутый контур или точку. Запрос при этом
сводится к поиску объектов, лежащих внутри и (или) пересекающих границы
контура (маски). В качестве маски может выступать так же один или комбинация
нескольких существующих картографических объектов.
Пространственные запросы в зависимости от
результатов делятся на поисковые и аналитические.
Выполнение поисковых запросов не изменяет
существующих картографических объектов и не создает новых. Задачей поисковых
запросов является только обнаружение картографических объектов.
Выполнение аналитических запросов приводит к
созданию новых картографических объектов, которые возникают как результат
пространственных взаимоотношений существующих картографических объектов.
К семантическим относятся запросы, объектом и
критерием которых являются семантические характеристики объектов. Результатом
семантического запроса является набор записей, содержащих семантические
характеристики объектов, удовлетворяющие критерию. В качестве критерия
используется одна или несколько семантических характеристик объекта (объектов)
или диапазон изменений характеристик.
Как и пространственные, семантические запросы
делятся на поисковые и аналитические.
Результатом поисковых запросов всегда является
запись (одна или несколько), содержащая те ли иные существующие семантические
характеристики объектов.
Комбинированными называются запросы, и объект и
критерий которых являются объединением пространственных и семантических
характеристик и условий. Фактически, «выполнить комбинированный запрос»
означает объединить в одном запросе два - пространственный и семантический.
Комбинирование запросов накладывает некоторые
ограничения на критерий запросов. Комбинированный запрос не может быть аналитическим
с пространственной точки зрения - т.е. в результате его не может появиться
новый пространственный объект.
Наиболее эффективным средством выполнения запросов
в MapInfo является встроенный SQL-язык структурированных запросов. SQL-запрос состоит из ключевых слов и аргументов.
Стандартный SQL- запрос строится по
следующей схеме:
SELECT <список выбираемых параметров> FROM <список источников данных> WHERE <условие выбора> INTO <адрес помещения результатов>
Ключевые слова SQL делятся на команды, союзы, разделители и функции.
К командам SQL относятся, например,
следующие: SELECT, UPDATE, INSERT, DELETE, COMMIT, ROLLBACK и др. Все они имеют смысл глаголов (команд) - «выбрать», «обновить»,
«вставить», «удалить», «подтвердить», «восстановить». Как видно из перевода
названий команд, только команда SELECT («выбрать») используется для выполнения собственно запросов. Остальные
команды применяются для изменения содержания таблиц.
К союзам SQL относятся слова FROM («из»), WHERE («где») и INTO («поместить в»). Эти союзы используются для
разделения групп аргументов.
Аргументы делятся на следующие группы:
• <список выбираемых параметров>
Эта группа содержит имена колонок, значения которых
(удовлетворяющие условию выбора) будут помещены в результат запроса. Кроме
имен колонок могут содержаться функции SQL, аргументами которых являются значения колонок;
• <список источников данных>
Эта группа содержит имена таблиц, к которым
адресован запрос
• <условие выбора>
Условие выбора - это критерий запроса. Он содержит
аргументы и константы, разделенные разделителями или знаками. Разделителями
называются следующие операторы булевого типа - AND, OR и NOT. В качестве знаков
используются следующие: =,
>,<>=, <=.
Условие запроса декларируются следующим образом:
<таблица колонка> <знак> <таблица
колонка | константа> [разделитель <таблица колонка> <знак>
<таблица колонка | константа>]..
или
<функция (таблица колонка ) > <знак>
<таблица колонка | константа><адрес помещения результатов>
Эта группа аргументов содержит имя таблицы, которая
будет содержать результаты запроса.
Литература: