
Глава 9: Графические объекты
204 MapBasic Руководство пользователя
Операторы Create Object As Union и Create Object as Intersection 
позволяют создавать области, являющиеся логической комбинацией 
двух и более областей. Эти операторы отличаются от Create Object As 
Merge тем, что они действуют на все фрагменты исходных областей, а 
не только на общие их части. Union – это объединение всех областей. 
Intersection – зона пересечения областей. Графический объект, 
полученный в результате объединения или пересечения областей, 
может содержать новые узлы (т.е. такие, которых не было в исходных 
областях).
В MapBasic также есть функция Combine( ), которая возвращает 
графический объект, являющийся комбинацией двух других объектов.
Изменение объектов
Общая процедура изменения графических объектов 
MapBasic содержит несколько операторов, позволяющих вносить 
изменения в существующие графические объекты на карте. 
Независимо от того, с помощью какого оператора Вы вносите 
изменения, процесс модификации графического объекта выглядит 
следующим образом: 
1. Создается копия исходного объекта. (Как правило, для этого 
объявляют переменную типа Object, выполняют оператор Fetch, 
чтобы переместить указатель файла, а затем выполняют 
оператор присваивания вида имя_переменной  =  
имя_таблицы.obj). 
2. Выполняются операторы или функции, которые изменяют 
графический объект. (Это обычно один или несколько 
операторов Alter Object.) 
3. Выполняется оператор Update, чтобы сохранить измененный 
графический объект обратно в таблицу. 
Программа TEXTBOX из набора примеров может служить 
иллюстрацией этого процесса. Если пользователь установил флажок 
"Сделать одинаковыми цвета текста и рамки", то программа TEXTBOX 
использует оператор Alter Object для изменения цвета выбранного 
объекта, а затем – оператор Update для того, чтобы сохранить 
измененный текстовый объект в таблице. 
Перемещение объекта 
Чтобы изменить значения координат графического объекта, 
выполните оператор Alter Object с предложением Geography. Вам 
может потребоваться выполнить более одного оператора Alter Object 
(например, один – чтобы изменить координату X, и еще один – чтобы 
изменить координату Y).