Совокупности объектов

Лабораторная работа № 9

Группирование и разгруппирование

Группированием называется операция, соединяющая совокупность отдельных объектов и/или ранее созданных групп в группу. Связывание объектов в группу позволяет обращаться с ними как с единым целым, выполняя преобразования группы как преобразование единого объекта.

gl10-1.jpg

Рис. 1. Главная группа, содержащая в себе объект и дочернюю группу объектов

На рис. 1 представлено изображение автомобиля, состоящее из четырех объектов. Замкнутая кривая с заливкой, изображающая кузов, не входит в состав групп.

Три объекта, соответствующие стеклам, составляют главную группу, включающую в себя дочернюю группу стекол дверей и дочерний объект — кривую, изображающую лобовое стекло. Группы объектов получили соответствующие имена. Щелчком на расположенном слева от имени группы квадратике со знаком «минус» можно отключить отображение в окне диспетчера объектов всех дочерних групп и объектов, составляющих группу. При последовательном подходе к построению рисунка в окне диспетчера объектов всегда будет отображаться его обозримая и удобная схема.

Чтобы сгруппировать объекты, следует выделить их и щелкнуть на кнопке Group (Сгруппировать) панели атрибутов.

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

Чтобы разгруппировать ранее созданную группу, преобразовав ее в совокупность выделенных объектов и дочерних групп (если таковые входили в состав этой группы), достаточно выделить группу и щелкнуть на кнопке Ungroup (Разгруппировать) панели атрибутов.

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

Пристыковываемое окно диспетчера объектов позволяет добавлять объекты в состав ранее созданных групп, просто перетаскивая в секцию группы строку, соответствующую добавляемому объекту. До выхода версии CorelDRAW 11 вывести тем же способом объект из состава группы не удавалось. В новой версии этот недочет устранен, и объект (или дочернюю группу) можно вывести из состава группы, перетаскивая его строку в окне диспетчера.

Чтобы разделить на отдельные объекты не только главную группу, но и все входящие в ее состав дочерние группы, щелкните на кнопке Ungroup all (Разгруппировать все).

Для редактирования объекта, входящего в состав группы, в большинстве случаев нет нужды его разгруппировывать. Достаточно выделить этот объект внутри группы, щелкнув на нем инструментом Pick (Выбор) при нажатой клавише Ctrl или щелкнув на соответствующей ему строке в окне диспетчера объектов. Объект будет выделен со статусом дочернего (перед именем объекта в строке состояния появится слово Child), после чего с ним можно работать как с обычным объектом — в частности, менять заливку, параметры линии контура, форму.

Соединение и разъединение

Ранее мы уже рассматривали понятие соединенной линии — кривой, состоящей из двух или более ветвей, которые могут не иметь общих точек. Такая линия выглядит на экране как несколько индивидуальных кривых, но ведет себя совершенно иначе. При попытке выделения инструментом Pick (Выбор) одной из ветвей рамка выделения охватывает все ветви соединенной кривой. При попытке перетащить одну из ветвей синхронно перемещаются все ветви. При перетаскивании образца цвета на одну из ветвей заливка или цвет контура воспроизводятся на остальных, причем заливка — только на замкнутых ветвях кривой. Как правило, с соединенными кривыми приходится иметь дело после преобразования текста в кривые. Но в CorelDRAW предусмотрена и специальная команда для соединения выделенных объектов в единую кривую. Кнопка Combine (Соединить), предназначенная для выполнения этой команды, становится доступной на панели атрибутов после выделения не менее чем двух отдельных объектов. Побочным эффектом действия команды соединения является преобразование всех выделенных объектов в совокупности кривых (которые и становятся ветвями соединенной линии).

Для разъединения соединенной кривой на составляющие ее ветви используется кнопка Break Apart (Разъединить) панели атрибутов или одноименная команда меню Arrange (Монтаж). После разъединения каждая ветвь приобретает статус отдельного объекта.

При соединении объектов с различной заливкой соединенная кривая (все ее замкнутые ветви) принимает заливку и атрибуты линии контура объекта, который был выделен последним. При разъединении все объекты сохраняют заливку и атрибуты линии контура составного объекта. Обратите внимание, что атрибуты заливки сохраняются даже для незамкнутых ветвей. Если впоследствии такая незамкнутая кривая будет замкнута, CorelDRAW «вспомнит», что заливка для этого объекта уже назначена, и воспроизведет ее. Впрочем, как уже отмечалось ранее, в CorelDRAW 12 можно включить режим отображения заливки и для незамкнутых кривых.

Очень интересный эффект возникает при соединении частично или полностью перекрывающихся объектов с заливкой — в местах перекрытия в соединенном объекте возникает прозрачная область — отверстие. Чтобы познакомиться с этим явлением и освоить операцию соединения объектов, выполним упражнение.

Задание 1. Соединение объектов

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

1. Создайте новый документ CorelDRAW. Постройте посередине страницы большой прямоугольник и перетащите на него желтый образец цвета с экранной палитры. Поверх желтого прямоугольника постройте синий, а затем — красный прямоугольники, расположив их таким образом, чтобы они не выходили за края желтого прямоугольника, но частично перекрывали друг друга.

2. Выделите совместно синий и красный прямоугольники и щелкните на кнопке Combine (Соединить) панели атрибутов. Обратите внимание на сообщение в строке состояния — там говорится, что выделен один объект класса «кривая». Цвет соединенного объекта будет зависеть от того, какой из прямоугольников был выделен последним, но в той части его, где соединяемые объекты пересекались, будет виден желтый цвет. Чтобы убедиться, что это — действительно отверстие, выделите желтый прямоугольник и назначьте ему заливку другого цвета.

3. Снова выделите соединенный объект и щелкните на кнопке Break Apart (Разъединить) панели атрибутов — на ней изображены как раз два перекрывающихся квадратика и стрелки, как бы растягивающие их в разные стороны. Обратите внимание на цвет получившихся объектов и на их расположение в стопке — сверху находится тот из квадратов, который перед соединением был выделен последним и который передал свои цвет соединенному объекту.

4. Вставьте в документ новую страницу, щелкнув на знаке «плюс» в зоне прокрутки страниц документа, и постройте с помощью инструмента Polygon (Многоугольник) примерно посередине страницы вытянутый по вертикали восьмиугольник размерами примерно 40 на 90 мм.

5. Откройте пристыковываемое окно Transformation (Преобразование) одноименной командой меню Window > Dockers (Окно > Пристыковываемые панели). В группе переключателей выбора местоположения центра вращения щелкните на нижнем среднем переключателе, чтобы совместить центр вращения с нижним углом восьмиугольника. В счетчик Angle (Угол) введите значение 15° и несколькими щелчками на кнопке Apply To Duplicate (Применить к копии) превратите восьмиугольник в изящную розетку (рис. 2, а).

gl10-2.jpg

Рис. 2. Этапы построения розетки соединением объектов

6. Растянув рамку выделения, совместно выделите все объекты и задайте толщину Контурной линии в 4 пункта. Цвет обводки и заливки объектов выберите по своему усмотрению. После назначения заливки сразу становится очевидным положение объектов в стопке (рис. 2, б).

7. Осталось только соединить все восьмиугольники, щелкнув на кнопке Combine (Соединить) на панели атрибутов. Результат представлен на рис. 2, в.

В заключение попробуйте построить ту же розетку еще раз, но на шаге 5 воспользуйтесь элементами пристыковываемого окна Transformation (Преобразование) для смещения центра вращения ниже среднего нижнего маркера рамки выделения. Установите флажок Relative Center (Относительно) и введите в счетчик Н значение -90. После выполнения остальных шагов получится розетка, в середине которой вместо нагромождения линий контуров будет отверстие — чем не декоративная рамка для точечного изображения?

Маски и маскирование

Возможность создать с помощью команды соединения объект с прозрачными отверстиями очень часто используется для подготовки масок. Маской принято называть вспомогательный объект, предназначенный для того, чтобы скрывать (полностью или частично) расположенные ниже него объекты. Маски представляют собой основу технологии работы с точечными изображениями в программах точечной графики, но и в программе векторной графики CorelDRAW они используются достаточно часто — и непосредственно, и как «технологическая оснастка» для других декоративных приемов.

На рис. 3 представлено несколько объектов. Сверху — прямоугольник с серой заливкой, на котором произвольным образом размещены снежинки. Заливка для снежинок выбрана белая, а обводка контурных линий отменена. Ниже расположен блок фигурного текста.

gl10-3.jpg

Рис. 3. Маскируемый объект и заготовка для маски — блок фигурного текста.

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

gl10-4.jpg

Рис. 4. Готовая маска закрывает часть изображения

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

К сожалению, при этом маска сохраняет габариты прямоугольного объекта, и то, что он совпадает по цвету со страницей, не означает, что «не работающие» края маски не будут закрывать объекты, лежащие ниже них в стопке. Если это становится проблемой, форму маски можно откорректировать инструментом Eraser (Ластик). В более сложных случаях для маскирования можно воспользоваться фигурной обрезкой, задав в качестве контейнера обрезки текст.

Поскольку маска — такой же объект, как и все остальные объекты рисунка, с ней можно выполнять любые преобразования. Например, на рис. 5 с помощью маски подчеркиваются части изображения, к которым желательно привлечь внимание зрителя, не удаляя, как в предыдущем примере, все остальное.

gl10-5.jpg

Рис. 5. Акцентирование маской отдельных фрагментов изображения: исходное изображение (а). маска (б), наложение маски с применением к ней полупрозрачной линзы (в)

В этом примере желаемый эффект достигнут за счет применения к маске с белой заливкой одного из эффектов преобразования — полупрозрачной линзы.

Объединение

Операция объединения, так же как две описанные ниже операции исключения и пересечения, представляет собой важнейший инструмент построения объектов сложных форм из более простых. Как уже отмечалось выше, эта операция необратима, то есть полученный в результате объект нельзя автоматически разделить обратно на исходные составляющие.

Операция объединения представляет собой удаление пересекающихся частей объединяемых объектов и составление из фрагментов их границ новой границы по линии общего абриса. Если операция выполняется над непересекающимися объектами, она приводит к тому же результату, что операция соединения — формированию соединенной кривой, состоящей из нескольких ветвей. Участвовать в операции могут два одиночных объекта, одиночный объект и совокупность объектов или две совокупности объектов.

Участвующие в операции кривые могут быть как замкнутыми, так и незамкнутыми.

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

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

Основными инструментами, с помощью которых задаются режимы выполнения операции объединения и запускается сама операция, являются элементы управления пристыковываемого окна Shaping (Формообразование), доступ к которым открывается после щелчка на кнопке Weld (Объединение), и кнопка Quick Weld (Быстрое объединение) на панели атрибутов. Элементы управления пристыковываемого окна Shaping (Формообразование) представлены на рис. 6.

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

Чтобы выполнить операцию объединения с помощью пристыковываемого окна Shaping (Формообразование), проделайте следующую процедуру.

1. Выделите один или несколько объектов для объединения с помощью инструмента Pick (Выбор). Эти объекты составят совокупность выделенных объектов.

2. Чтобы открыть пристыковываемое окно, выберите команду Arrange > Shaping (Монтаж > Формообразование). Выбрав в раскрывающемся списке альтернативу Weld (Объединение), откройте элементы управления объединением.

3. Если требуется, чтобы объединение выполнялось не над самими выделенными объектами, а над их копиями, установите флажок Source Object(s) (Сохранить выделенные).

4. Если требуется, чтобы объединение выполнялось не над самими указанными объектами, а над их копиями, установите флажок Target Object(s) (Сохранить указанные).

gl10-6.jpg

Рис. 6. Элементы управления объединением в пристыковываемом окне Shaping

5. Щелкните на кнопке Weld To (Объединить с).

6. При нажатой клавише Shift щелкните мышью на всех объектах, которые должны войти в совокупность указанных. Объединение объектов выполняется в момент освобождения клавиши Shift.

Совокупность указанных объектов можно создать, растягивая вокруг них рамку выделения. Если эта совокупность состоит из единственного объекта, нажимать клавишу Shift не обязательно.

Чтобы выполнить операцию объединения с помощью кнопки Quick Weld (Быстрое объединение) панели атрибутов, надо сначала выделить объединяемые объекты. В этом варианте выполнения операции совокупность указанных объектов не создается — подразумевается, что ее роль играет последний из объектов, выделенных перед щелчком на кнопке Quick Weld (Быстрое объединение).

Задание 2. Построение объекта сложной формы путем объединения

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

1. Начните с построения прямоугольника, вытянутого по горизонтали, размером примерно 100 на 70 мм. С помощью полей панели атрибутов приведите размеры к точным значениям и закруглите два из четырех углов прямоугольника.

2. Постройте правильную окружность диаметром 70 мм. Чтобы точно совместить ее диаметр с правым краем прямоугольника, включите режим привязки к объектам командой View > Snap To Objects (Вид > Привязать к объектам) и переместите окружность на место инструментом Pick (Выбор).

3. Выключите режим привязки к объектам той же командой — дальше он будет только мешать, поскольку остальные фигуры не требуют совмещения с объектами.

4. Постройте два эллипса и прямоугольник, совместно выделите их и выровняйте по правому краю выделения. Удерживая клавишу Shift нажатой, добавьте в выделение круг или прямоугольник и выровняйте все фигуры по середине выделения, совместив их середины на одной горизонтальной линии — геометрической оси бутылки (рис. 7, сверху).

gl10-7.jpg

Рис. 7. Построение контура бутылки методом объединения примитивов

5. Выделите индивидуально прямоугольник с двумя закругленными углами и назначьте ему заливку 10 % черным. Растяните прямоугольник выделения вокруг всех объектов и щелкните на кнопке Quick Weld (Быстрое объединение) панели атрибутов. Поскольку мы построили прямоугольник раньше других объектов, он оказался нижним в стопке, и, следовательно, объединенный объект унаследовал именно его заливку.

6. В заключение постройте несколько бликов на поверхности бутылки. Каждый из них представляет собой окружность без обводки с радиальной градиентной заливкой с переходом цвета от белого в середине к 10 % черному на периферии. Достаточно построить только одну окружность — остальные блики создаются копированием и изменением размеров копий с размещением в нужных местах рисунка (рис. 7, снизу).

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

На рис. 8 все объекты, составляющие изображение, были объединены в один объект (кривую) с помощью элементов управления объединением пристыковываемого окна Shaping (Формообразование) при установленном флажке Source Object(s) (Сохранить выделенные). Затем полученная кривая с помощью поля масштабирования панели атрибутов была увеличена на 5 % относительно центра и ей была назначена заливка белым цветом. Наконец, полученная таким образом «подложка» была перемещена в стопке поверх фонового прямоугольника.

gl10-8.jpg

Рис. 8. Имитация обводки группы объектов

При применении этого приема к клипарту из библиотеки CorelDRAW целесообразно вначале разгруппировать клипарт до уровня отдельных объектов, а затем снова объединить в одну группу. В противном случае наличие дочерних групп может привести к возникновению нежелательных отверстий в «подложке».

Пересечение

Операция пересечения создает новый объект из области пересечения двух или более объектов, участвующих в операции. Так же как и объединение, пересечение в общем случае выполняется над двумя совокупностями объектов — выделенной и указанной. Однако в отличие от объединения при пересечении может получиться и несколько объектов, поскольку новые объекты возникают из всех попарных пересечений выделенных и указанных объектов. Новый объект наследует атрибуты заливки и обводки «родительского» объекта, входившего в совокупность указанных. На рис. 9 слева представлены объекты до и после выполнения операции пересечения. Совокупность выделенных объектов включала лишь один круг с белой заливкой, а четыре прямоугольника с различными заливками составили совокупность указанных объектов. Справа на рисунке представлены элементы управления пристыковываемого окна Shaping (Формообразование) после выбора в раскрывающемся списке альтернативы Intersection (Пересечение).

gl10-9.jpg

Рис. 9. Операция пересечения и элементы управления пересечением в пристыковываемом окне Shaping

Если пересекаемые объекты образуют несколько областей пересечения (например, при пересечении двух колец может образоваться две области пересечения, не имеющие общих точек), то в результате все ветви этой области войдут в состав единственного соединенного объекта. Говоря проще, как бы ни были причудливы формы пары пересекающихся объектов, в результате применения к ним операции пересечения всегда получается один объект (возможно, соединенный).

Чтобы выполнить операцию пересечения при помощи элементов управления пристыковываемого окна Shaping (Формообразование), выделите объекты, установите флажки сохранения выделенных и указанных объектов в желаемое состояние, щелкните на кнопке Intersect With (Пересечь с) и при нажатой клавише Shift щелчками выделите требуемые объекты.

Пересечение объектов в практической работе требуется значительно реже, чем объединение и исключение, но существует одна типовая задача, которую без этой операции было бы довольно сложно решить. Речь идет о «переплетающихся» объектах — ситуации, в которой одна часть объекта А должна перекрываться объектом Б, а другая часть того же объекта А должна сама перекрывать объект Б.

Задание 3. Пересечение объектов

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

1. Для начала изобразим один из проводов. С помощью инструмента Bezier (Кривая Безье) постройте короткий вертикальный отрезок прямой. Включите режим привязки к объектам и перетащите построенный отрезок инструментом Pick (Выбор) строго вниз до совмещения начального узла нового положения с конечным узлом прежнего положения — режим привязки к объектам поможет сделать это с идеальной точностью. Перед тем как отпустить левую кнопку мыши, щелкните ее правой кнопкой. Повторите смещение вниз с копированием еще два раза. В результате получатся четыре вертикальных отрезка, причем у второго, третьего и четвертого начальные узлы совпадают с конечными узлами предыдущих отрезков.

2. Теперь превратим эти четыре отрезка в кривую, состоящую из четырех сегментов. Для этого их следует совместно выделить и соединить, щелкнув на кнопке Combine (Соединить) панели атрибутов. Теперь в нашем распоряжении имеется кривая, состоящая из четырех ветвей. Чтобы превратить соединенную кривую в обычную, нужно выбрать инструмент Shape (Форма) и поочередно выделить им пары узлов в местах соединения отрезков (лучше всего — растягивая рамку выделения вокруг сдвоенных узлов), щелкая после выделения на кнопке Join Two Nodes (Соединить узлы) панели атрибутов. В результате получится кривая, содержащая в одной ветви пять узлов, расположенных на краях четырех линейных сегментов (рис. 10, а).

gl10-10.jpg

Рис. 10. Этапы выполнения упражнения

3. Поскольку провод должен изгибаться, сегменты, составляющие кривую, следует преобразовать в криволинейные. Выделите все узлы кривой, растянув вокруг нее рамку выделения инструментом Shape (Форма), и щелкните на кнопке Convert Line To Curve (Криволинейный сегмент) панели атрибутов. Выделите узлы кривой через один инструментом Shape (Форма) при нажатой клавише Shift и сместите их по горизонтали на некоторое расстояние (это удобнее всего делать клавишами управления курсором). Теперь у нас получилась волнистая кривая (рис. 10, б).

4. Далее необходимо превратить кривую в объект с заливкой. Как обычно, CorelDRAW предоставляет для решения этой задачи несколько возможностей (например, с помощью суперлиний). Мы воспользуемся командой преобразования контурной линии в самостоятельный объект. Выделите кривую инструментом Pick (Выбор) и задайте толщину контурной линии. Поскольку эта толщина определяет диаметр провода, возможно, для практических целей ее лучше бы задавать с помощью диалогового окна Outline Pen (Перо для контуров), но в упражнении мы ограничимся стандартной толщиной 16 пунктов. Назначьте цвет контурной линии (например, желтый), щелкнув правой кнопкой мыши на соответствующем образце экранной палитры (рис. 10, в). Выберите команду Arrange > Convert Outline To Object (Монтаж > Преобразовать контур в объект) и откройте пристыковываемое окно диспетчера объектов. Из приведенных в нем сведений ясно, что после преобразования на рисунке остались два объекта: замкнутая кривая с желтой заливкой, получившаяся в результате преобразования, и незамкнутая кривая без заливки и обводки — это то, что осталось от исходной кривой. Вторую кривую следует удалить, поскольку она больше не понадобится, а мусор, пусть даже незаметный, на рисунке не нужен.

5. Теперь построим второй провод как зеркальное отражение первого. Выделите желтый провод инструментом Pick (Выбор), нажмите клавишу Ctrl и перетащите правый средний маркер рамки выделения влево до появления слева от провода его «фантомной» копии синего цвета. Перед тем как отпустить левую кнопку мыши, щелкните ее правой кнопкой. Назначьте построенной зеркальной копии заливку (например, красную). Теперь у нас есть оба провода (рис. 10, г).

6. Теперь провода необходимо совместить. В силу причин, описанных выше, после этого они расположатся одни над другим, но пока это нас не должно смущать. Итак, выделите оба объекта и воспользуйтесь диалоговым окном Align and Distribute (Выровнять и распределить), чтобы совместить их вертикальные оси (рис. 10, д). В окне диспетчера объектов видно, что сейчас рисунок состоит из двух объектов класса кривых, причем объект с желтой заливкой расположен в стопке выше объекта с красной заливкой.

7. Выделите желтый провод, щелкнув на нем инструментом Pick (Выбор), выберите альтернативу Intersection (Пересечение) в раскрывающемся списке пристыковываемого окна Shaping (Формообразование) и затем щелкните на кнопке Intersect With (Пересечь с). Поскольку в нашем случае совокупность указанных объектов состоит только из одного объекта, щелкните на красном проводе, не нажимая клавиши Shift. Результат выглядит весьма обманчиво (рис. 10, е) — кажется, что провода поменялись местами в стопке объектов и красный теперь лежит выше! Окно диспетчера объектов помогает развеять иллюзию: на самом деле в местах пересечения проводов образовался новый соединенный объект, состоящий из четырех ветвей, имеющих форму, близкую к ромбу, и унаследовавший красный цвет от указанного объекта — красного провода.

8. Остается только доработать возникшую иллюзию, удалив ромбовидные объекты через один. Для этого выделите соединенный объект, щелкнув инструментом Pick (Выбор) на любом из ромбов, и разбейте его на отдельные ветви командой Arrange > Break Apart (Монтаж > Разъединить). Отмените выделение, нажав клавишу Esc, выделите при нажатой клавише Shift два ромбовидных объекта и удалите их, нажав клавишу Del. Иллюзия построена, и там, где красный провод должен был бы перекрывать желтый, это делают точно подогнанные по форме красные «заплатки».

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

Исключение

Исключением объектов называется операция, при которой у указанного объекта удаляются части, перекрываемые выделенным объектом. Мы уже встречались с похожей операцией, когда рассматривали работу инструментом Eraser (Ластик). При работе этим инструментом в качестве выделенного объекта выступала форма ластика (круг или квадрат заданных размеров). При выполнении операции исключения в роли «формы для высечки», отсекающей ненужные части указанных объектов, может выступать любой объект и даже совокупность объектов CorelDRAW.

Как обычно, в совокупностях и выделенных, и указанных объектов может быть несколько объектов. Если перед выполнением исключения выделено несколько объектов, то «форма для высечки» составляется как результат объединения этих объектов.

В состав совокупности указанных объектов могут входить не только индивидуальные объекты, но и их группы. Это очень удобно при необходимости удалить отдельные части стандартных изображений из библиотеки клипарта.

При выполнении исключения с помощью пристыковываемого окна Shaping (Формообразование) все делается так же, как при выполнении объединения и пересечения: открываются элементы управления исключением, выделяются объекты, устанавливаются флажки режимов сохранения, выполняется щелчок на кнопке Trim With (Исключить с) и при нажатой клавише Shift выделяются объекты из совокупности указанных. При щелчке на кнопке Quick Trim (Быстрое исключение) на панели атрибутов совокупность выделенных объектов составляется из всех выделенных объектов рисунка, кроме последнего, который играет роль указанного объекта. Все исходные объекты сохраняются.

Ниже представлены результаты пересечения двух объектов: треугольника и круга (рис. 11, а). В первом варианте треугольник играет роль выделенного объекта, а круг — указанного (рис. 11, б), во втором — выделен круг, а указан треугольник (рис. 11, в).

gl10-11.jpg

Рис. 11. Результаты пересечения двух объектов

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

Задание 4. Исключение объектов

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

1. Начните с построения небольшой правильной окружности. С помощью клавиши + (плюс) вспомогательной клавиатуры постройте поверх окружности пять копий. Перетащив верхнюю в стопке объектов копию вправо на достаточное расстояние, выделите все объекты и равномерно разместите их на горизонтальной прямой с помощью диалогового окна Align and Distribute (Выровнять и распределить).

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

gl10-12.jpg

Рис. 12. Построение рисунка доски для игры в нарды

3. Выделите совместно все шесть окружностей — они будут играть роль совокупности выделенных объектов. Раскройте пристыковываемое окно Shaping (Формообразование) и выберите в раскрывающемся списке альтернативу Trim (Исключение). Элементы управления исключением полностью аналогичны элементам управления объединением и пересечением. Установите флажок Source object(s) (Сохранить выделенные) — кружки еще понадобятся нам для изображения шашек — и щелкните на кнопке Trim With (Исключить с). Перетащите получившийся в результате объект (рис. 12, справа внизу) немного ниже.

4. Остальное — дело техники. Включив режим привязки к объектам, постройте прямоугольник, ограничивающий игровое поле, начав с левого нижнего угла только что построенной «гребенки». Постройте копию «гребенки», перетащите ее к верхнему краю игрового поля и поверните на 180°, удерживая нажатой клавишу Ctrl. Отключите режим привязки к объектам. Выделите прямоугольник игрового поля и, удерживая нажатой клавишу Shift, перетащите вверх и вправо правый верхний маркер рамки выделения. Перед тем как отпустить левую кнопку мыши, щелкните правой кнопкой. Геометрические формы половины игровой доски готовы.

5. Чтобы изобразить шашку, перетащите угол рамки выделения окружности внутрь, удерживая нажатой клавишу Shift, и перед отпусканием левой кнопки мыши щелкните правой кнопкой. Сгруппируйте две окружности и постройте копию группы, а затем сместите ее вправо. Для одной из шашек сделайте контурные линии белыми, а заливку черной, для другой — наоборот. Дополнительные шашки получаются копированием. Размещать шашки в лунках доски лучше при включенном режиме привязки к объектам.

6. Назначьте для игрового поля и бортов доски текстурную заливку. По характеру изображаемого объекта неплохо подойдет заливка из библиотеки Samples8 под названием Wood Grain (Волокна древесины). Заключительный аккорд — размещение в центре игрового поля изображения игральных костей. Его можно найти в библиотеке клипарта. Чтобы вставить изображение в рисунок, выберите команду File > Import (Файл > Импортирование), найдите нужный файл в диалоговом окне открытия файла, а когда после щелчка на кнопке ОК на экране появится указатель с именем файла, переместите его на свободное место страницы и щелкните мышью.

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

Исключение как способ разрезания объектов

Как мы только что убедились, выполнение операции исключения в том случае, когда в состав совокупности выделенных объектов входят замкнутые кривые, приводит к удалению частей объектов из совокупности указанных. Если же выделенным объектом оказывается незамкнутая кривая, то указанный объект разрезается ею на части или на нем появляется разрез. Попробуем оба этих варианта на практике.

Задание 5. Разрезание и надрезание объектов

В ходе выполнения этого упражнения мы исследуем операцию исключения в том варианте, когда в качестве выделенного объекта выступает незамкнутая кривая. Рассмотрим две альтернативы: кривая пересекает объект, и ее конечные узлы расположены вне его; кривая пересекает границу объекта, и один из ее конечных узлов находится внутри объекта. Упражнение носит исследовательский характер, но мы, тем не менее определим, что нужно изобразить: разорванный пополам трафарет для нанесения надписи краской (лист пластика с вырезанными в нем буквами) и лопающееся, но еще не лопнувшее до конца яйцо.

1. Начнем с подготовки «оснастки» для эксперимента. Постройте прямоугольник, вытянутый в горизонтальном направлении, и задайте для него заливку. Постройте блок фигурного текста, отформатируйте его подходящей гарнитурой и кеглем и разместите посередине прямоугольника. Инструментом Freehand (Произвольная кривая) постройте поперек прямоугольника и надписи достаточно извилистую кривую (рис. 13, сверху).

gl10-13.jpg

Рис. 13. Этапы разрезания объекта на две части

2. Теперь «разорвем» фоновый прямоугольник. Выделите кривую, расположенную над ним, и щелкните на кнопке Trim With (Исключить с) пристыковываемого окна Shaping (Формообразование), а затем — на самом прямоугольнике. Через прямоугольник прошла трещина, разбившая его по горизонтали на две части.

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

3. С помощью окна диспетчера объектов или команды Arrange > Order > То Back (Монтаж > Порядок > Вниз) переместите результат исключения в самый низ стопки объектов. Сообщение в строке состояния говорит о том, что выделен всего один объект класса кривых. Командой Arrange > Break Apart (Монтаж > Разъединить) разъедините две ветви кривой — теперь в нашем распоряжении две кривые, без зазоров смыкающиеся по извилистой границе, и надпись.

4. Теперь превратим буквы надписи в отверстия в трафарете. Для этого выделите надпись инструментом Pick (Выбор), сбросьте оба флажка пристыковываемого окна Shaping (Формообразование), выберите в раскрывающемся списке альтернативу Trim (Исключение), а затем, при нажатой клавише Shift, щелкните на верхней и нижней частях бывшего фонового прямоугольника. Трафарет готов, остается только зрительно подчеркнуть, что он разорван.

Сначала «пробивать» отверстия в трафарете, а потом разрывать его не рекомендуется, поскольку при этом образуется соединенная кривая из нескольких ветвей, которые после разъединения дают множество индивидуальных объектов, что существенно осложняет работу.

5. Слегка повернем верхнюю часть трафарета, расширив трещину в ее правой части. Выделите верхнюю часть инструментом Pick (Выбор), затем щелкните мышью еще раз, чтобы в рамке выделения появились стрелки поворота, и перетащите маркер центра поворота (кружок с точкой посередине) в точку, где трещина пересекает левый край трафарета. Увеличьте масштаб отображения и уточните положение центра поворота. С помощью соответствующего поля панели атрибутов поверните верхнюю часть трафарета ровно на один градус (см. рис. 13, внизу).

6. Теперь займемся треснувшим яйцом. Сначала изобразим целое яйцо. Для этого постройте белый эллипс, преобразуйте его в кривую, выделите инструментом Shape (Форма) расположенный справа узел и немного перетащите его влево при нажатой клавише Ctrl (чтобы не нарушить симметрию). Это будет белок — считаем, что яйцо уже сварено. Затем наденьте на белок скорлупу: нажав клавишу + (плюс), постройте дубликат объекта и задайте для него заливку бежевого цвета. Несколькими последовательными щелчками инструментом Bezier (Кривая Безье) постройте ломаную линию, пересекающую границу яйца. Материал для эксперимента подготовлен (рис. 14, слева).

gl10-14.jpg

Рис. 14. Пересечение объекта незамкнутой кривой

7. Теперь расколем только что изображенное яйцо. Для этого выделите инструментом Pick (Выбор) ломаную линию, сбросьте оба флажка в пристыковываемом окне Shaping (Формообразование), щелкните на кнопке Trim With (Исключить с), а затем — на бежевом объекте. Ломаная линия исчезла, а по скорлупе яйца пошла трещина. Выберите инструмент Shape (Форма) и убедитесь, что получившийся объект — не составная, как в примере с трафаретом, а обычная кривая, состоящая всего из одной ветви.

8. Немного расширим трещину, чтобы через нее был виден белок. Для этого инструментом Shape (Форма) выделите при нажатой клавише Shift все узлы трещины. Делать это растягиванием рамки выделения нельзя, поскольку узлы двойные, а нам нужны только верхние узлы из каждой пары. Щелкните на кнопке вращения узлов на панели атрибутов, перетащите маркер центра вращения на вершину трещины и сместите правый нижний маркер рамки выделения в виде стрелки немного вниз. Трещина в бежевом объекте расширится и сквозь нее покажется белок (см. рис. 14, справа).

Упрощенное исключение для перекрывающихся объектов

С одиннадцатой версии CorelDRAW появились новые инструменты, позволяющие в один прием выполнять операцию исключения для совокупности выделенных объектов, частично перекрывающих друг друга. Это инструменты Simplify (Упростить), Front Minus Back (Передний минус задние) и Back Minus Front (Задний минус передние). Одноименные альтернативы появились и в раскрывающемся списке пристыковываемого окна Shaping (Формообразование). Упрощение достигается благодаря отказу от отдельного выбора совокупностей указанных и выделенных объектов — указанные объекты определяются автоматически по типу операции. Перед ее началом должно быть выделено как минимум два объекта. Инструмент Simplify (Упростить) выполняет достаточно сложную операцию: для каждого выделенного объекта, начиная с самого нижнего в стопке, выполняется исключение всех остальных выделенных объектов, расположенных в стопке выше него. Пример выполнения операции приведен на рис. 15. Слева на рисунке представлена стопка выбранных объектов. Она состоит из фигурного текста (символ амперсанда) внизу стопки, круга и многоугольника наверху стопки. Внешний вид совокупности выделенных объектов после операции упрощения не меняется. Чтобы увидеть результат, пришлось нижние объекты сместить вправо на разные расстояния. От амперсанда, автоматически преобразованного в кривую, осталось совсем немного — из него последовательно исключались круг и многоугольник. Многоугольник изменений не претерпел (из него ничего не исключалось). Круг превратился в соединенную кривую из пяти замкнутых ветвей, оставшихся после исключения многоугольника.

Функции инструментов Front Minus Back (Передний минус задние) и Back Minus Front (Задний минус передние) полностью описывается их названиями. Первый выполняет исключение, при котором в качестве указанного объекта выступает верхний из всех выделенных объектов, а все остальные объекты из него исключаются (и на этом заканчивают свое существование). Второй инструмент делает в точности то же самое, но в роли указанного выступает объект, расположенный в самом низу стопки.

gl10-15.jpg

Рис. 15. Исходные данные (слева) и результаты работы инструментом Simplify

На рис. 16 приведен пример исходной стопки объектов и результатов выполнения над ней двух только что описанных операций.

gl10-16.jpg

Рис. 16. Исходная стопка объектов (а), результат операции Front Minus Back (б) и Back Minus Front (в)

Преобразование объекта в кривые

Из того что нам известно про различные объекты CorelDRAW и их поведение при выполнении над ними операций можно с полным основанием сделать вывод, что кривые (замкнутые и незамкнутые) представляют собой наиболее фундаментальный, базовый класс объектов. Например, какие бы объекты ни входили в совокупности выделенных и указанных объектов при выполнении операций объединения, исключения и пересечения, в результате получается объект, относящийся к классу кривых, или совокупность таких объектов. К кривым применимы все без исключения операции преобразования объектов, доступные в CorelDRAW. Из-за этого во многих случаях возникает необходимость явного преобразования объекта в кривую. Нам уже приходилось сталкиваться с этой операцией (например, в последнем упражнении), поэтому ограничимся несколькими замечаниями. Чтобы преобразовать выделенные объекты в кривые, достаточно выбрать команду Convert To Curves (Преобразовать в кривые) или щелкнуть на соответствующей ей кнопке панели атрибутов (на ней изображен кружок с четырьмя узлами).

При преобразовании текстов в кривые обычно получаются очень сложные объекты с большим количеством узлов, и при выполнении операций с такими объектами скорость работы заметно снижается. Поэтому рекомендуется перед преобразованием в кривые разбить тексты на сравнительно небольшие блоки.

При преобразовании сложного объекта в кривые рекомендуется предварительно создать копию такого объекта и перетащить ее за пределы печатной страницы. Это позволит в случае необходимости быстро восстановить объект (например, при неудачном преобразовании получившихся кривых).

Отделение объектов

Ранее мы столкнулись с особой категорией объектов CorelDRAW — составными объектами. Для этой категории объектов, возникающих на рисунке исключительно в результате применения того или иного эффекта CorelDRAW, характерно наличие в составе объекта нескольких объектов более низкого порядка. Один или два таких объекта играют роль управляющих, то есть определяют своей формой и расположением форму и положение подчиненных объектов. При работе с составным объектом невозможно непосредственно редактировать подчиненные объекты (их нельзя даже выделить). Если для воплощения художественного замысла такое редактирование все-таки необходимо, составной объект вначале преобразуют в совокупность отдельных объектов. Операция такого преобразования называется отделением. Операция отделения необратима — после отделения промежуточных объектов, например, пошагового перехода, восстановить этот пошаговый переход уже не удастся.

Выполняется операция отделения составных объектов командой Arrange > Separate (Монтаж > Отделить). В результате выполнения этой операции составной объект распадается на отдельные управляющие объекты и группу подчиненных объектов. Для редактирования подчиненных объектов может потребоваться разгруппирование этой группы.

Оглавление