Компонент axMapObj |
Компонент предназначен для доступа к базе данных электронных карт на уровне объектов карты. Каждый объект векторной карты состоит из описания объекта, метрики объекта, семантики объекта. Описание объекта векторной карты содержит информацию о классификационном коде, типе локализации, внутреннем коде. Метрика объекта содержит информацию о его плановом положении. Семантика объекта содержит набор описательных характеристик. Под классификационным кодом объекта понимается его учетный номер, заданный в файле классификатора (*.RSC). Локализация объекта задает его вид: точечный, линейный, площадной, подпись, векторный. Внутренний код объекта – это его учетный номер для функций отображения векторной карты. Внутренние коды объектов никогда не повторяются. Внутренний код объекта пользователем изменяться не может и определяется в момент создания нового вида объекта в файле классификатора. В общем случае в файле классификаторе можно создать несколько объектов с одинаковым классификационным кодом, но разным типом локализации. Такие объекты будут иметь разные внутренние коды.
Краткий принцип работы: Компонент - является исключительно контейнером указателя на объект карты. При смене (через поиск) и создании нового объекта, компонент теряет связь с текущим объектом и удерживает связь с новым. При удалении объекта, включая удаление внешним приложением, компонент теряет связь с объектом и автоматически переходит в изначальное состояние. Компонент переходит в изначальное состояние: 1. При его создании 2. При удалении объекта, с которым держится связь 3. При неудачном поиске.
Создание
На этапе инициализации в компоненте создаются следующие COM объекты aiMapSemantics для свойства Semantic; aiMapMetric для свойства Metric; |