Настоящий материал посвящен новой прикладной подсистеме CADdy++GEO из полностью объектно-ориентированной линии программных продуктов германского разработчика ZIEGLER-Informatics GmbH, выходящей на российский рынок в 2000 году. Локализация и адаптация CADdy++ к отечественным стандартам осуществляется компанией ПОИНТ — генеральным дистрибьютором системы в России.
Современные объектно-ориентированные технологии в новых модулях CADdy++GEO для САПР и ГИС
Объектно-ориентированный — что это такое?
CADdy++GIS — индивидуальная обработка геоинформации
CADdy++MA—Многопользовательский администратор
CADdy++GB—Геодезические расчеты
Использование геоинформационных систем (ГИС) как сочетания графического картографического материала и информации из картотек (например, колодцев, повреждений) сегодня можно увидеть во многих городах и службах различного уровня.
Сегодня требуется все больше и больше программных средств, которые можно было бы установить на ПК, с обязательной средой Windows и возможностью обмена результатами анализа информационных данных по OLE, ODBC и др. Особое значение имеет среда Windows NT, которая начиная с 1993 года позволяет размещать многопользовательские ГИС-программы на основе персональных компьютеров. Это является наиболее важным критерием рационального использования ГИС.
Многопользовательский режим
Проекты в области коммуникаций очень редко создаются и используются сегодня отдельными пользователями. Технология, специальные знания отдельных специалистов в конкретных направлениях вызывают создание групп пользователей.
Для одновременной работы над проектом всех членов группы необходимо, чтобы применяемое программное обеспечение могло использоваться в многопользовательском режиме. При наличии одной ГИС-программы это означает, что каждый отдельный проект, находящийся на нескольких локальных рабочих местах, может быть обработан несколькими пользователями одновременно.
Темам и объектам для определенных пользователей могут быть назначены права считывания и записи, так что неправомочное манипулирование данными исключается. Можно определить права на каждом рабочем месте или права по атрибутивным данным. Там, где сначала выполняется внесение данных в ГИС, назначаются права записи, для остальных — только права считывания. Благодаря этому невозможно дублировать ввод информации, ее копирование и перезапись.
Преимущества такого подхода не вызывают сомнений: используется только одна база данных; устраняется избыточность информации; обрабатываются только малые объемы данных. Поэтому доступ к обрабатываемым данным на локальных местах осуществляется значительно быстрее, и требования к технике можно снизить (рис. 1).
Объектно-ориентированный — что это такое?
Для всех ГИС единым является то, что они имеют дело с объектами, так как вся окружающая среда состоит из объектов, обладающих определенными свойствами. Возьмем, например, трубопровод. Его характеристики, которые называются атрибутами, могут быть определены следующим списком:
- материал;
- диаметр;
- длина;
- срок эксплуатации и пр.
Кроме того, этот трубопровод находится в некотором месте земной поверхности, положение которого определено его координатами (X, Y и Н). Если положение в общем случае трактовать как геометрию, то речь также идет о свойствах или атрибутах. Оптимальная обработка таких объектов требует объектно-ориентированной геоинформационной системы.
Лишь немногие фирмы-разработчики предлагали до сих пор объектно-ориентированные ГИС. Чтобы назвать ГИС объектно-ориентированной, нужно ответить, как правило, на следующие три вопроса:
- На каком алгоритмическом языке написано программное обеспечение?
- Используется ли в качестве основы объектно-ориентированная база данных?
- Имеется ли структура наследования в иерархии классов?
Вопрос о «правильном» языке программирования можно разъяснить относительно просто. Так, объектно-ориентированные программы требуют написания их на объектно-ориентированном языке (например, C++, Java или Modula).
Для объектно-ориентированных баз данных существующие табличные структуры не подходят в качестве ГИС-базы и поэтому заменяются иерархической структурой классов. Каждый объект состоит из данных и соответствующих систем доступа. Все другие его функциональные свойства остаются без внимания. Объекты могут быть включены в класс и наследуют все свойства более высокого по иерархии класса. В объектно-ориентированных ГИС не нужно выполнять внесение новых атрибутов и дополнительных характеристик такого объекта с каждого текущего плана (в зависимости от масштаба представления), что само по себе является решающим преимуществом (рис. 2).
Класс устанавливает типичные свойства и состояние множества одинаковых по типу объектов. В отдельном классе определяются индивидуальные свойства объекта и атрибуты, описывающие его техническое состояние.
Немного теории
Рассмотрим более подробно применение объектно-ориентированного подхода. В качестве примера пространственного объекта возьмем описанный выше трубопровод. Внешне он представляется в виде ломаной линии, у которой есть цвет и толщина. Положение ломаной на карте характеризуется координатами точек начала и конца. Как пространственный объект трубопровод описывается разнообразными параметрами: он имеет название, длину, уклон и т.д. Часть этой информации существует на карте в виде самостоятельных элементов (например, название), а часть хранится в специальных структурах данных и при необходимости (запрос пользователя) может быть получена в наглядном виде (рис. 3). Все перечисленное мы относим к свойствам.
Таким образом, любой объект, размещенный и описанный в ГИС, поставленный в соответствие пространственному объекту, обладает свойствами, поведением и индивидуальностью, полностью удовлетворяя концепциям объектно-ориентированного подхода и позволяя естественным образом применить последний к созданию геоинформационных систем.
Современная электронная карта организована как множество слоев, функциональным назначением которых является объединение пространственных объектов (точнее, набора данных, характеризующих их в визуальной базе данных), имеющих какие-либо общие свойства (рис. 4).
Такими свойствами могут быть:
- принадлежность к одному типу пространственных объектов (слой зданий, слой инженерных коммуникаций различного назначения, слой административных границ и т.д.);
- отображение на карте одним цветом;
- представление на карте одинаковыми графическими примитивами (линиями, точками, полигонами) и т.д.
Многослойная организация электронной карты при наличии гибкого механизма управления слоями позволяет объединить и отобразить гораздо большее количество информации, чем на обычной карте.
Про объекты, имеющие одинаковый набор свойств и схожие характеристики, говорят, что они относятся к одной теме. Искусство объектного подхода состоит в том, чтобы наиболее удачным образом выделить из модели реального мира объекты и сгруппировать их в темы (рис. 5). Можно выполнять такое разбиение в зависимости от графических характеристик объектов, что позволяет ограничиться небольшим количеством геометрических образов для каждой темы: Рoint (Точка), Line (Линия), Polygon (Полигон), Text (Текст), Pixel (Растровое изображение). Схожие подтемы мы относим к одной иерархии потому, что они унаследовали одинаковый набор свойств и поведение от одной общей темы, которая называется по отношению к ним «родительской».
Итак, структуру объектной ГИС можно описать следующим образом. В ее базе данных хранятся объекты (разделенные по слоям и по темам), каждый из которых реализует некоторую карту или ее фрагмент. Рабочий объект есть упорядоченный набор слоев. Каждый набор слоев включает в себя список объектов, относящихся к иерархии тем. Семантические свойства последних определяют их атрибуты: Рoint, Line, Polygon, Text, Pixel. При добавлении в ГИС новых элементов, отражающем изменения в запросах пользователей или в технологии обработки данных (например, средств поддержки multimedia), нет необходимости модернизировать саму базу, а достаточно зарегистрировать новый тип данных в атрибутах объекта.
Основным объектом, с которым осуществляется работа, является тема. Важными также являются и значения атрибутов, используемые для организации поиска в базе данных. Стандартные типы, используемые в ГИС, объединены в иерархию, а при необходимости можно добавлять новые типы и атрибуты в виде подтем.
Современная GEO-концепция
Всего лишь год назад ZIEGLER-Informatics GmbH успешно вышла на рынок с новой геоинформационной системой CADdy++GEO, впервые представленной на CeBIT’99. С помощью CADdy++GEO предлагается эффективное решение геоинформационных задач для различных служб города, предприятия. В CADdy++GEO пользователь применяет модульную систему, которую он может установить индивидуально согласно своим потребностям и задачам (рис. 6). С помощью приложений, включенных в среду GEO, можно создать планы местности, обновить данные об объектах недвижимости, манипулировать данными различных видов инженерных коммуникаций и создать на их основе эффективную объектно-ориентированную геоинформационную систему. Прикладной модуль CADdy++GEO был сертифицирован Microsoft BackOffice и отвечает всем стандартам качества, лежащим в основе этого сертификата.
Программная концепция опирается на основополагающие базисные принципы, объединяющие изыскания, проектирование и эксплуатацию. Для решения задач этих трех направлений разработано высокопроизводительное программное обеспечение, имеющее единый формат данных. Спектр продуктов CADdy включает базирующиеся на цифровой модели местности (ЦММ) CAD-решения для проектирования канализации, водопровода, дорог. Данные из CAD-решений могут быть переданы в CADdy++GEO.
CADdy++GEO является базовой системой для всех других приложений в области изысканий, проектирования и эксплуатации. Все имеющиеся характеристики объектов хранятся в одной объектно-ориентированной базе данных. CADdy++GEO предлагает основные функции, аналогичные CAD-функциям, считывание проектов и графический вывод. В него встроены специализированные модули, например CADdy++GIS, CADdy++Vektor, CADdy++GB, CADdy++Kanal, CADdy++Kart, CADdy++MA.
Администратор многопользовательской системы организует доступ к базе данных и использование различных приложений для группы пользователей, работающих с отдельным проектом. Таким образом, GEO-концепция фирмы позволяет выполнять хранение информации отдельного проекта, в которой отсутствует избыточность, — от цифровой модели местности до проектирования и передачи в систему высшего уровня.
Модульная структура
Модульная структура приложений семейства продуктов CADdy++GEO дает возможность снизить стоимостные затраты. Например, CADdy++GIS обрабатывает данные кадастра недвижимости и различных коммуникаций. CADdy++Kanal предназначен для ввода и обработки специфических для него данных по сетям канализации.
Так как все решения CADdy++GEO покоятся на единой базе данных, то в одном проекте можно работать без проблем с различными вариантами представления данных. Помимо полноценных решений система CADdy++GEO предоставляет также специальные программы просмотра данных (Viewer). Они рассматриваются как справочные станции, с помощью которых можно обрабатывать и выводить необходимую информацию. Кроме того, в CADdy++GIS Viewer можно выполнять редактирование и ввод атрибутов. Такая модульность экономит деньги пользователя, поскольку не требует дополнительного рабочего места.
CADdy++GIS — индивидуальная обработка геоинформации
С появлением CADdy++GIS для различных пользователей появилась возможность создать собственную информационную систему в соответствии со своими задачами и потребностями. Это выполняется с помощью встроенного менеджера структуры, который устанавливает стандартный подход к формированию систем различного назначения. Как Windows-приложение, CADdy++GIS гарантирует пользователю соответствующее сопровождение и организацию взаимодействия с имеющимися информационными структурами (например, Microsoft Office).
Время разработки конкретной системы сводится к минимуму, а расчеты и анализы выполняются очень быстро. Как современная геоинформационная система, CADdy++GIS предлагает полный инструментарий объектно-ориентированной ГИС. Это означает, что вся информация о коммуникациях или некоторых участках (будь то объект недвижимости или водопроводная сеть) интегрированы в систему как объекты с помощью данной технологии. Подобные объекты описываются атрибутивными данными, наиболее полно их характеризующими.
Быстрое создание структуры
Структура специализированного ГИС-проекта может быть достаточно быстро сформирована с помощью CADdy++GIS, поскольку в систему уже включены подготовленные ранее структуры атрибутов для служб землепользования и инженерных коммуникаций. При необходимости она может быть легко доработана или изменена пользователем без излишних затрат времени на программирование.
Для создания структуры данных CADdy++GIS предлагает Менеджер структуры данных, в который заложены принципы Windows Explorer. Этот менеджер координирует в системе назначение всех необходимых для пользователя атрибутов, которые изначально могут, например, копировать структуры классических модулей CADdy. В момент формирования объектов на карте города или плане предприятия сразу могут быть присвоены атрибуты. Таким образом, каждый объект неотделим от своих свойств (рис. 7). При изменении характеристик объектов (например, надписей или штриховки) обновление атрибутов выполняется автоматически.
Благодаря возможности генерирования окон (не требующей знания программирования), у пользователя появляется возможность для ГИС-администрирования. Это означает, что представление, содержание и объем информации можно установить как индивидуально с помощью уровня доступа, так и с помощью тематических организаций форм вывода, и получить нужную информацию. Далее заполненный данными ГИС-проект можно передать в CADdy++GIS Viewer для широкого круга пользователей.
CADdy++MA—Многопользовательский администратор
Подсистема CADdy++GEO дополнена модулем CADdy++MA, который является элементом профессиональных ГИС. Он организует рабочие места системы таким образом, чтобы тематические области (темы) или объекты могли быть использованы только определенными пользователями или группами пользователей (рис. 8). При этом допускается сильная дифференциация. Например, для различных атрибутов одного или нескольких типов объектов могут быть назначены различные права доступа. Благодаря строгому назначению прав произвольное число сотрудников разных направлений может совместно работать с одним проектом, не боясь возможной потери изменений, внесенных в характеристики объектов, или перезаписи данных. Имеется также возможность работать с частью цифровой модели местности. При этом на рабочее место поступает только часть всей информации, из-за чего значительно сокращается время ответов на запросы и увеличивается скорость работы.
CADdy++GB—Геодезические расчеты
Обработка топографо-геодезической информации начинается, как правило, с ввода исходных данных и результатов измерений. Координаты исходных пунктов (в том числе полученные в результате вычислений) хранятся в системе в виде структурированной базы данных на функциональной основе MS Excel и дублируются текстовым файлом с расширением *.KOR. При таком подходе к организации банка геодезических данных в системе существуют достаточно удобные механизмы обработки информации.
Неотъемлемой частью CADdy++GB является обработка баз данных координат опорных точек. Координаты могут быть распечатаны, просмотрены, отредактированы, усреднены или отсортированы (например, по номеру, коду, параметрам координатного окна, ординате, абсциссе или высоте). По полученным координатам точек с помощью геокодирования можно автоматически создавать ГИС-объекты и передавать их в CADdy++Kart и CADdy++GEO.
Дополнительный модуль предназначен для передачи данных с электронных тахеометров ведущих фирм-производителей Zeiss, Leica, Sokkia или Geodimeter. Кроме того, предлагаются методы расчета различных наиболее часто встречающихся геодезических задач (рис. 9).
CADdy++Vektor—Векторизатор
Важнейшая задача современного геодезического производства — использование имеющегося картографического материала в решении проектных и ГИС-задач. Как правило, эти материалы представлены в «бумажном» виде, пригодном для перевода в растровую форму путем сканирования.
Система предлагает удобную гибридную технику, подразумевающую единую обработку, вывод и архивирование векторных и растровых данных. В «стандартное оснащение» CADdy++ входят функции считывания растровой графики, полученной путем сканирования или созданной в других графических программах.
Импортированный в CADdy++Vektor растровый чертеж трансформируется в требуемую систему координат. В простейшем случае эта процедура осуществляется путем линейного масштабирования. Для точной оцифровки на экране используется метод аффинной трансформации по опорным точкам. Части чертежа можно стереть, изменить, а также заменить на другое растровое изображение или векторный элемент. Таким образом, в интерактивном режиме можно перевести растровые данные в векторную графику, причем специальный алгоритм обеспечивает исключительную быстроту преобразования даже для больших растровых чертежей (рис. 10).
Для объектно-ориентированных систем появляется новая задача — перевод растровых данных в объекты. С этой задачей справляется CADdy++Vektor, который поддерживает пользователя с помощью комфортного, автоматизированного растрово-объектного конвертирования. Расчетный алгоритм конвертирования сохраняется как образец и вносится в соответствующую библиотеку. Помимо этого можно проводить строго растровую обработку — редактирование растра или удаление «грязи». Конечным результатом являются структурированные CADdy-чертежи, которые без последующего конвертирования можно обработать модулями, связанными с инженерной геодезией или инженерными сетями.
CADdy++Kart—Картография
Графической основой для управления геоданными является электронный план местности ГИС-проекта. Поэтому в программную группу CADdy++GEO включен в качестве дополнительного модуля CADdy++Kart, предназначенный для подготовки, создания и ведения цифровой модели местности. Указанный модуль также опирается на объектно-ориентированную базу данных базовой системы. Эти данные также могут быть использованы в любом модуле группы CADdy++GEO. Поддерживаются библиотеки условных знаков масштабов 1:500-1:5000 (рис. 11-12).
Тип решаемых модулем CADdy++Kart задач полностью отвечает списку возможностей модуля V2 «классической» системы CADdy. Имеется в виду создание цифровой модели местности для целей проектирования и ГИС (журнал «САПР и графика», № 5-6’97). В любой момент пользователь может обновить данные всей системы или добавить новые, используя модули CADdy++GB и CADdy++Vektor.
CADdy++Kanal—Канализация
Этот модуль является специализированным расширением CADdy++GEO. С его помощью можно профессионально решить все задачи по вводу, обработке, анализу и управлению сетями канализации. Множество специальных функций поддерживает ведение документации по сточной, смешанной и ливневой канализации. CADdy++GEO и CADdy++Kanal имеют единую базу данных. Все данные могут быть переданы в CADdy++GIS. Таким образом, можно сразу использовать необходимый инструментарий, согласованный с потребностями документооборота по канализации.
CADdy++Kanal является готовым решением для тех, кто должен вести документацию по инженерным сетям и обрабатывать ее. С помощью этого инструментария руководитель может выполнить все задачи концентрации и распределения приоритетов решаемых задач по управлению данными (рис. 13-14). Для ведения документации используются нормативные руководства.
Используя строго объектную структуру данных (которая может произвольно расширяться) и специализированные методы обработки, можно обрабатывать данные осмотров, повреждений коллекторов и колодцев, санирования, а также вести протоколы ремонта и выводить эти данные на бумажные носители. Возможно считывание проектов, подготовленных в «классических» модулях CADdy КР.
Технология CADdy++Kanal включает встроенное объектное определение для коллектора, колодца и выпуска. Помимо стандартных установок для графического представления информации, эти определения обладают соответствующими нормативными атрибутами (такими, как данные о местоположении и состоянии объектов, а также технологические, стоимостные и эксплуатационные данные).
В заключение подчеркнем, что линия продуктов CADdy++GEO постоянно развивается. Удобство пакета, оптимальное сочетание простоты и богатства функциональных возможностей, обилие задач, для решения которых необходимы именно такие системы, позволяют надеяться, что в ближайшее время CADdy++GEO займет прочное место на российском рынке САПР и ГИС.
«САПР и графика» 5'2000