Создание и редактирование векторных карт

         

ГИСРусса.



ГИСРусса.

Почему именно ГИСРусса? - спросите Вы. Попытаюсь объяснить. Программа создаётся с непосредственным участием автора GPSMapEdit. Это означает, что по крайней мере с совместимостью этих двух программ проблем не будет. Кроме того К.Галичский признанный специалист в вопросах геопрограммирования. Первая версия программы появилась 1 июля 2004. Активность развития программы показывает тот факт, что к ноябрю 2004 года выпущено уже 10 обновлений. И все они каждый раз приносили новые возможности для максимально удобной работы с программой. За этот период количество новых, по сравнению с первой версией, функций перевалило за 30. 

Сначала давайте попробуем определиться с соответствием параметров и характеристик программы ГИСРусса с теми, которые были указаны выше. Пойдём прямо по пунктам.

1. Стоимость программы и её соответствие операционной системе.

Как было видно из ссылок на другие программы, стоимость программы является самой низкой по сравнению с другими конкурентами. Программа рассчитана на КПК на основе PocketPC и любую версию ОС Windows CE.

2. Возможность получать данные от различных приёмников сигналов GPS.

С подключением приёмников GPS к КПК и их успешным распознаванием программой у большинства программ теперь вопросов не возникает. Не стала исключением и ГИСРусса.

3. Возможность загружать карты местности.

4. Поддержка любого языка интерфейса.

Программа, созданная в России, по определению не имеет проблем с русским интерфейсом. Кроме этого можно легко изменять язык интерфейса простой сменой файла языкового модуля. Языковой модуль - это файл с расширением "*.rrl". Имеется поддержка Unicode.

5. Количество вычисляемых показателей.

Помимо ставших привычными показателей, у программы ГИСРусса на данный момент есть такие интересные параметры как:

- Глубина (данные от эхолота, поддерживающего протокол NMEA-0183)

- Температура (данные от эхолота, поддерживающего протокол NMEA-0183)

- Площадь (площадь фигуры ограниченной траекторией движения и отрезком от текущей до исходной точки)

- Аэродинамическое качество (отношение вертикальной скорости к горизонтальной)

- Наклон (наклон траектории)

- Минимальная высота (минимальная высота измеренная с момента сброса значения)

- Пеленг точки (Азимут следующей путевой точки относительно текущего положения).

В каждой новой версии, которые выходят с завидной регулярностью, добавляются всё новые и новые функции. При этом пожелания пользователя являются решающими. 

6. Удобство сохранения и работы с маршрутными данными.

Присутствуют все операции. Точку можно поставить просто указав стилусом на нужном месте карты и присвоить ей имя. Работа с данными происходит по стандартной схеме. Возможно сохранение навигационных данных в файл.

7. Прокладка маршрута.

Как и в большинстве программ, реализована ручная прокладка маршрута. Сейчас ведётся активная работа по реализации роутинга. Разработчики планируют выход первой версии, поддерживающей эту функцию, к концу 2004 - началу 2005 года.

Кроме всего вышесказанного следует отметить, что изо всех перечисленных навигационных программ, только ГИСРусса и OziExplorer не привязаны к какому либо географическому положению. Остальные рассчитаны только на предлагаемые разработчиком карты с очень ограниченным охватом. Как правило это Москва, Санкт-Петербург и немного других городов и областей. В свою очередь OziExplorer не работает с векторными картами. Как мы уже выяснили, растровые карты - не самый лучший вариант, ввиду большого размера файлов карт. Кроме этого, с применением растровых карт становится невозможным применение автоматической прокладки маршрута - роутинга.

Есть ещё одна причина. Я думаю, что с течением времени всё больше внимания будет уделяться легальности использования того или иного продукта или данных. Это в настоящее время довольно отчётливо проявляется в ситуации с пиратскими компакт дисками с играми и музыкой. Постепенно их становится всё меньше и меньше. В этом плане существенным отличием ГИС Русса является то, что у разработчиков этого продукта есть ВСЕ необходимые документы, разрешения и лицензии. У всех остальных отечественных разработчиков подобных программ их просто нет. Ни у одного! Поэтому стоит случиться любой проверке ответственных органов и данная программа просто исчезнет с рынка. А как же деньги, отданные за неё? Как поддержка и дальнейшее развитие? В общем ситуация напоминает лотерею. Может кому и интересно рисковать, но мне, например, нравится когда я отдал деньги и получил то, на что рассчитывал у продавца, который не исчезнет через день.  

Из всего вышесказанного можно сделать вывод, что навигационная программа ГИСРусса, при самой низкой стоимости, удовлетворяет всем условиям в плане функциональности. Решающим фактором можно считать наличие готовых пятикилометровых карт всей территории России и полноценного инструмента для самостоятельного редактирования существующих и создания собственных карт. В данное время такой набор не предложил ни один разработчик подобного ПО.

На этом основании все дальнейшие описания работы по созданию векторных карт будут ориентированы именно навигационную программу ГИС Русса.

 _______________

 Контрольные вопросы.

1. Что является для Вас самым важным при выборе навигационной программы?

2. Какие навигационные данные являются для Вас самыми востребованными?

3. Как Вы планируете использовать свою систему навигации?



GPSMapEdit - редактор векторных карт.



GPSMapEdit - редактор векторных карт.

Вот мы и подошли к тому моменту, когда впервые столкнёмся с той программой, ради которой и проводится этот цикл лекций. Конечно мы и кроме неё узнали и ещё узнаем много интересного, но основой основ в деле создания собственных карт всё равно будет являться программа GPSMapEdit.

Вначале, как всегда, немного истории. Сначала на прилавках магазинов появились одноканальные, а в последствии и 12-канальные навигаторы, позволяющие с точностью до 10-15м определять координаты и. исходя из этого, вычислять остальные данные о движении. Они умели многое и тогда казалось, что прогресс в развитии будет развиваться в сторону увеличения количества путевых точек, объёма треклога, увеличения вычисляемых параметров и т.п. Так оно и было. Однако в скором времени технологический прогресс позволил вместить в столь малое устройство, управление, отвечающее за отображение, помимо обычной символьной информации, ещё и электронных карт. Карты с данными выводились прямо на дисплей навигатора. Это был существенный прорыв в развитии GPS навигации. Сразу за этим встал вопрос - где взять карты. Если для США и многих стран Европы создание подробных карт не заняло много времени, то для России их выпуск вообще не планировался. Да и в настоящее время производители навигаторов, а именно им принадлежат права на форматы электронных карт, не ведут активную работу по сбору данных, нужных для создания карт России. Самыми популярными навигаторами в России являются навигаторы производства компании Garmin. Свой формат карт Garmin держит в секрете. 

Это должно было привести к монополизации в создании и распространении электронных карт для навигаторов этого производителя. Почему должно было? Да потому что нашёлся человек, который каким то образом сумел разобраться с составом тех данных, которые хранились в файлах данных карт. Этим человеком был Stanislaw Kozicki. Вскоре появилась программа, позволяющая компилировать исходные данные в формат карт Garmin. Программа-компилятор называется сGPSMapper.

Вы вероятно знаете, что любая компиляция происходит из каких-то исходных данных. Что же это за исходные данные? Дело в том, что создавать описание карты сразу в конечном формате было невозможно в силу определённых причин. Поэтому Станиславу пришлось разработать особый язык описания объектов на карте. Этот формат носит название "Польский формат". В честь страны, где живёт автор. С помощью этого языка можно задавать полное описания для всех необходимых объектов, присутствующих на карте. О нём мы поговорим в следующей лекции.

Однако вручную описывать каждый объект практически не реально. Например возьмём обозначение объекта в виде прямоугольника. Для его описания на карте необходимо следующее:

- создать особый раздел, отвечающий за заголовок карты с указанием идентификатора, именем карты, используемым датумом, единицами измерения, максимально допустимого размера региона, максимального числа элементов в одном регионе, количества слоёв и т.д.

- описать этот объект, дав ему код типа объекта, имя, слой, описание;

- точно знать и ввести координаты всех его четырёх углов.

После этого в командной строке дать команду на компиляцию карты и, если нигде не обнаружится ошибки, получить файл карты с расширением *.img. Но и  это ещё не всё. Что бы посмотреть результат, надо загрузить эту карту в навигатор и только тогда увидеть правильно ли всё было сделано. Если нет, то процесс повторяется. И всё это ради одного прямоугольника. Представьте ситуацию, когда Вам надо нарисовать карту с 1000 объектов. И это далеко не самое большое количество объектов карты.

Вот почему и появилась программа, которая изначально являлась как бы графической оболочкой для компилятора cGPSMapper. Эта программа называется GPSMapEdit. Разработана она россиянином  Константином Галичским. Она является основным инструментом в процессе создания и редактирования электронных векторных карт в "Польском формате" и преобразовании их в другие форматы. В процессе своего развития постоянно увеличивалось количество выполняемых функций. Сейчас программа умеет самостоятельно преобразовывать код "Польского формата" в несколько форматов векторных карт. Помимо перечисленных выше, возможно преобразование в форматы для навигаторов Holux и AlanMap500. Не так давно появилась поддержка ещё одного формата - RUS, который использует навигационная программа ГИСРусса, речь о которой впереди. 

Следует сказать, что альтернативы GPSMapEdit на рынке программ в настоящее время нет. Были отдельные попытки создать что-то подобное, но распространения они не получили.

Стоимость программы составляет 990 рублей для жителей России, что достаточно немного для программы такого уровня, к тому же при отсутствии достойных конкурентов. Раз уж мы заговорили о стоимости, нельзя не упомянуть про политику автора в отношении незарегистрированной программы. Как ни странно, лицензия на программу не предусматривает Trial период. То есть Вы можете пользоваться программой сколь угодно продолжительное время. Причём программа на 90% сохраняет все, заложенные в неё возможности. Ограничения касаются редких команд работы с картой, импорта и сохранения данных в некоторых форматах. Причём сохранение в формат программы ГИСРусса остаётся полностью работоспособным.

Программа GPSMapEdit содержит все необходимые инструменты и позволяет создавать карты практически любой сложности. В сущности, состав, количество и расположение объектов на карте определяет только тот, кто создаёт карту. Основными объектами карты являются полигоны, линии и точки. 

Полигоны - это замкнутые площадные объекты, используемые для отображения таких типов объектов, как моря, озёра, леса, болота и пр. 

Линии - это незамкнутые линии произвольной геометрии, ими отображаются дороги, ручьи, тропы, просеки и пр.

Точки - соответственно точечные объекты для отображения маяков, заправок, бродов, глубин и пр.

Так же стоит отметить простоту настройки карты и лёгкость работы с инструментами. Всё логично, просто и пользователю не приходится ломать голову над своим следующим действием. Весь процесс работы с этой программой мы подробно рассмотрим в следующих лекциях.

Обзор программы



Эта лекция будет целиком посвящена


Выбор навигационной программы. GPSMapEdit - редактор векторных карт. Обзор программы ГИСРусса. Эта лекция будет целиком посвящена программному обеспечению. Первая часть рассматривает возможности, реализованные в программах для КПК с приёмниками GPS. В самом начале мы хотели дать просто обзор существующих на рынке навигационных программ для КПК. Рассмотреть их положительные и отрицательные качества. Однако потом, чтобы избежать предвзятости, решили ограничится рассмотрением функций, которые присутствуют в таких программах. К тому же все программы непрерывно развиваются и то, чего не было вчера, вполне может появиться завтра. Последующие две темы позволят нам познакомимся с программами, которые нам предстоит изучить в последующих материалах.




Выбор навигационной программы.



Выбор навигационной программы.

Как только навигаторы GPS стали доступны для простых людей, а не только для избранных, сразу возник вопрос о программах для работы с данными, получаемыми и вычисляемыми этими устройствами. Это было обусловлено тем, что большинство из имеющихся на рынке навигаторов имело разъём для связи с компьютером. Однако малая распространённость и , как следствие, небольшой рынок сбыта, заставлял заниматься разработкой этих программ только производителей данного вида устройств и немногих энтузиастов. В настоящее время мы можем наблюдать буквально взрыв интереса к возможностям системы GPS. Уровень технологий предлагает всё более заманчивые устройства. Одним из таких устройств является Карманный Персональный Компьютер (КПК) с возможностью приёма данных со спутников GPS. Это даёт возможность владельцу КПК всегда иметь при себе не имеющее аналогов универсальное устройство с богатейшим набором функций. Вместе с активизацией рынка КПК с приёмником GPS и навигаторов, наблюдается активное развитие самых различных программ для них. Некоторые из них сделаны на скорую руку и рассчитаны на личные нужды или на непритязательных пользователей. Другие наоборот, стремятся завоевать существующий и потенциальный рынок путём развития возможностей, вкладывания средств в поддержку новых технологий использования системы GPS и ведя исследования рынка с целью удовлетворить все пожелания конечного пользователя. Чтобы разобраться "кто есть кто" давайте разберёмся что могут нам предложить программы, предназначенных для владельцев КПК с приёмниками GPS. 

1. Стоимость программы и её соответствие операционной системе. Здесь всем понятно, что программа должна соответствовать операционной системе имеющегося КПК. И быть удовлетворительной по цене. Выбор операционных систем не велик и самыми популярными являются Pocket PC с ОС Windows CE и Palm с ОС Palm CE. 

По ценам вариантов больше. Стоимость навигационных программ варьируется от 0$ до 200$. Так же немаловажным является отношение разработчика к модификации программы. Чем чаще выпускаются новые версии программы, тем большей стабильностью и функциями она обладает.

2. Возможность получать данные от различных приёмников сигналов GPS. Будет обидно, если Ваш приёмник не будет виден из за каких либо ограничений. Например иногда такое происходит по причине ошибок, связанных с эмуляцией COM портов. Сейчас, для коммерческих программ, подобная проблема большая редкость.

3. Возможность загружать карты местности. По сути, без карт подобные программы попросту не нужны. Все современные программы поддерживают загрузку электронных карт. Однако не всё так просто. Во первых карты бывают разные. Есть растровые карты местности и есть векторные.

Растровые карты получают отсканировав и, соответствующим образом, привязав обычные бумажные карты. Плюсом здесь является то, что растровых карт достаточно много. Купив обычную карту местности для интересующего района, всегда можно переработать её для загрузки этих данных в память КПК. Минусом является то, что растровые карты, как и любой растр, плохо масштабируются и сами файлы обладают огромными размерами. Первый недостаток может привести к тому, что приблизив какую либо область карты, нельзя будет ничего по хорошему разглядеть. Например возьмём широко распространённые карты с масштабом 1см=5км. На бумажной основе они выглядят достаточно качественно. Но давайте посчитаем погрешность, заложенную в них. Если в 1см помещается 5км, то значит в 1мм поместится 500м. Ширина линии для обозначения автомобильной трассы на такой карте составляет 0,7-1мм. То есть ширина трассы составит около 500м! Сделав в своём навигаторе масштаб равный 1см=500м, Вы рискуете увидеть нечто невообразимое. Как в таком случае ориентироваться, непонятно.  Напомню, что точность определения координат у приёмников GPS составляет 5-15м. Второй недостаток - большие размеры файла карты, потребует затратить деньги на дополнительную память. Немаловажным аргументом против растровых карт является то, что их очень трудно редактировать. Попробуйте перерисовать на растровом изображении очертание города, излучину реки или новую трассу. Знаки сервиса и названия рек, населённых пунктов и т.п. могут также привести к невозможности ориентации. Например я видел карты, где наименование крупных городов полностью лишало ориентации в окрестностях этого города из за того, что выведенное крупными буквами название, просто перекрывало всё остальное в нужном районе. 

Векторные карты свободны от этих недостатков. Обладая компактностью, несоизмеримой с растром, они позволяют свободно редактировать данные. Это происходит потому что каждый топографический знак - озеро, дорога, лес и т.п. - присутствует как отдельный объект. Его можно передвинуть, видоизменить, присвоить ему другой тип, удалить и создать заново. Причём, как Вы наверно знаете, вектор не искажается при масштабировании. Вы можете изменять масштаб до требуемых величин не рискуя увидеть массу ни о чём не говорящих точек. Вам не будут мешать нанесённые знаки и наименования объектов, так как они не масштабируются вместе с другими объектами и всегда имеют один размер на дисплее. Более сложный вопрос - это наличие готовых электронных векторных карт, подходящих к данной программе. Большинство из существующих программ с поддержкой векторных карт предлагает только карты определённых городов с пригородами и, в лучшем случае, некоторые области. Часто эти карты Вам предлагается купить, как дополнительный продукт. Причём в большинстве случаев формат этой векторной карты будет закрыт, что не позволит Вам её редактировать.

4. Возможность выбора языка интерфейса. Лучше, если программа изначально рассчитана на Российского потребителя. Поддержка русского языка гарантирует, что Вы не столкнётесь с необходимостью транслитерации наименований. Например, гораздо комфортнее читать "Каширный мыс", чем какой ни будь "Kashyrnyj mys". Однако нельзя сбрасывать со счетов и возможность изменять язык интерфейса программы - английский, украинский, китайский и т.д. Поэтому желательно поддержка программой формата Unicode, который может отображать любые национальные символы.

5. Количество вычисляемых показателей. Здесь всё определяется фантазией разработчика программы. Можно придумать великое множество параметров, которые можно вычислить исходя из полученных о Вашем текущем местонахождении данных. Приведу лишь некоторые из них - текущая, средняя, максимальная скорость, время прибытия в заданную точку, время захода Солнца, расстояние до точки, текущая высота, ускорение и многое другое. И хотя многие из них используются очень редко, но возможно когда-нибудь их отсутствие вполне может обернуться неудобством в Вашем путешествии. 

6. Удобство сохранения и работы с маршрутными данными. Такими данными могут являться пройденные маршруты и точки, отмеченные пользователем. Записав в виде файла пройденный однажды путь, Вы всегда сможете проделать это второй раз, сравнить с другим треком, переслать его другому человеку. Трек является очень полезным в самых разных ситуациях. Точки пользователя так же позволяют отмечать интересные места - заправочные станции, съезды с трассы, броды, места ночёвок и т.п. Неплохо, если каждой точке можно дать произвольное название. Некоторые программы даже позволяют записывать краткие речевые сообщения для каждой точки.

7. Прокладка маршрутов. Очень важной является возможность программы составлять маршрут и отслеживать его выполнение. Здесь следует разделить два способа составления маршрута. Разберёмся с первым из них. 

Ручная прокладка маршрутов. Например Вам надо проехать из пункта А в пункт Б. При этом ваш путь лежит по известной трассе с несколькими поворотами на другие дороги. Для прокладки маршрута Вам будет необходимо, исходя из известной Вам ситуации на дорогах, поставить точки на местах поворотов. После этого составляется маршрут, проходящий через все эти точки. В процессе поездки программа отслеживает Ваше текущее положение и вовремя сообщает о приближении к точке поворота.

Автоматическая прокладка маршрутов или "роутинг". Образовано от английского Routing, что означает маршрутизация. Но от предыдущего способа эта функция отличается полной автоматизацией. Выглядит это следующим образом - нам всё ещё надо попасть из точки А в точку Б, но дороги мы совсем не знаем. Вот тут и пригодится роутинг. Он позволяет автоматически проложить маршрут движения, просто указав на конечную точку пути. Причём маршрут автоматически прокладывается с учётом особенности реальной обстановки. Если показан перекрёсток, но на нём висит "кирпич" или дорога односторонняя, то будет рассмотрен ближайший объезд в соответствии с правилами дорожного движения и максимального сокращения пути. Эта функция пока ещё не имеет широкого хождения и встречается достаточно редко. Для её реализации необходимы очень точные карты, содержащие актуальную информацию о дорогах. Как правило, такие карты продаются за отдельную плату. Но со временем эта функция станет достаточно популярной. Возьмём хотя бы Западную Европу, там роутинг уже стал обыденностью.

Таким образом программа для навигации для КПК должна: быть недорогой с возможностью получения бесплатных обновлённых версий, обладать возможностью загрузки векторных карт с поддержкой русского языка, иметь готовые карты для как можно большего количества Российский регионов (в идеале - для всей России), предоставлять пользователю инструменты для редактирования карт, обладать богатыми возможностями по количеству и представлению различных навигационных параметров. Желательно наличие роутинга.

В заключение приведу перечень основных навигационных программ с указанием их стоимости. 

OziExplorer CE (30$+85$ за программу привязки карт),  PocketGPS (120$), PalmGIS (70$), Ариадна (120$), Na Sa (150$), GISRussa (49$).

Нельзя не сказать, что за рубежом существует большое количество подобных программ. Например PocketStreets или TomTom-navigator. Однако их применение в России невозможно, в виду полного отсутствия карт.