- •Практикум по компьютерной графике
- •Оглавление
- •Введение
- •1. Лабораторная работа «ОсновыGimp»
- •Основные термины gimp
- •Основные приемы использования gimp
- •Панель инструментов
- •Окно изображения
- •Диалоги и панели
- •Работа с файлами Создание нового изображения
- •Открытие изображения
- •Сохранение изображения
- •Изменение масштаба и навигация по изображению
- •Рисование. Кисти
- •Отмена действий
- •Задание по лабораторной работе
- •2. Лабораторная работа «Фотомонтаж» Выделение областей
- •Прямоугольное и эллиптическое выделение
- •Свободное выделение и работа с быстрой маской
- •Умные ножницы
- •Выделение по цвету
- •Работа со слоями
- •Непрозрачность
- •Видимость
- •Текст вGimp
- •Преобразование изображения в слое
- •Общие свойства инструментов преобразования
- •Инструменты преобразования
- •Фотомонтаж
- •Задание по лабораторной работе
- •Тонирование
- •Яркость и контраст
- •Гистограмма изображения
- •Коррекция цветовых кривых
- •Фильтры
- •Фильтры размытия
- •Фильтры улучшения
- •Задание по лабораторной работе
- •4. Лабораторная работа «ОсновыIncscape» Что такоеIncscape
- •Основы Incscape Перемещение по холсту
- •Изменение масштаба
- •Инструменты Inkscape
- •Работа с документами
- •Основные приемы
- •Прямоугольники
- •Эллипсы
- •Спирали
- •Работа с фигурами Создание фигур
- •Перемещение, изменение размера и вращение
- •Изменение формы при помощи клавиш
- •Выделение нескольких объектов
- •Группировка
- •Заливка и обводка
- •Дублирование, выравнивание, распределение
- •Выделение объектов под объектами и перемещение выделенного
- •Задание по лабораторной работе
- •5. Лабораторная работа «Создание векторного логотипа» Размещение текста вдоль контура
- •Выполнение логических операций над фигурами Сумма
- •Разность
- •Пересечение
- •Исключающее или
- •Разделить
- •Работа с узлами Инструменты для управления узлами
- •Перемещение узлов
- •Горячие клавиши
- •Задание по лабораторной работе
- •6. Лабораторная работа «Программирование графики»
- •Сообщение wm_paint
- •Событие Paint
- •Объект Graphics для рисования
- •Методы и свойства класса Graphics
- •Задание по лабораторной работе
- •7. Лабораторная работа «Простейшая анимация»
- •Работа с таймером
- •Создание анимации
- •Движение по траектории
- •Задание по лабораторной работе
- •8. Лабораторная работа «Работа с растровыми изображениями»
- •Отображение графических файлов
- •Компоненты OpenFileDialog иSaveFileDialog
- •Простой графический редактор
- •Задание по лабораторной работе
- •9. Лабораторная работа «Преобразования на плоскости»
- •Простейшие преобразования на плоскости
- •Преобразование поворота и отражения
- •Однородные координаты
- •Комбинированные преобразования
- •Программная реализация
- •Задание по лабораторной работе
- •Варианты заданий
- •10. Лабораторная работа «3Dпреобразования и получение проекций»
- •Правосторонняя система координат
- •Преобразования в пространстве
- •Трехмерный перенос
- •Получение косоугольных проекций
- •Построение вида спереди
- •Программная реализация
- •Задание по лабораторной работе
- •Варианты заданий
- •11. Лабораторная работа «Построение трехмерных сцен наXaml»
- •Система координат и размещение камеры
- •Освещение сцены
- •Задание объектов трехмерной сцены
- •Применение материалов к модели
- •Трехмерные преобразования
- •Пример описания простой трехмерной сцены
- •Задание по лабораторной работе
- •12. Лабораторная работа «Трехмерные преобразования вWpf»
- •Связь процедурного кода и объектов описанных вXaml
- •Трехмерные преобразования в процедурном коде
- •Применение 3d-преобразований к отдельным элементам 3Dсцены
- •Создание анимации с помощью таймера
- •Задание по лабораторной работе
- •Список использованных источников
- •Практикум по компьютерной графике
- •Издано в авторской редакции
- •Отпечатано в Издательстве ни тпу в полном соответствии с качеством предоставленного оригинал-макета
- •3Аказ . Тираж экз.
Дублирование, выравнивание, распределение
Одним из наиболее распространённых действий является дублирование объекта (Ctrl+D). Дублирование размещает дубликат над оригиналом и делает его выделенным так, что вы можете переместить его в сторону при помощи мыши или клавиш со стрелками. Попробуйте построить линию из копий квадрата.
Вероятнее всего, копии квадрата стоят неровно; это можно поправить, используя диалог Выровнять и расставить (Ctrl+Shift+A). Выберите все квадраты (Shift+щелчок или выделив мышью), откройте диалог (в меню «Объект») и выберите «Центрировать на горизонтальной оси», а затем «Выровнять интервалы между объектами по горизонтали» (читайте подсказки над кнопками). Теперь объекты аккуратно расставлены и расстояние между ними одинаковое. Вот другие примеры выравнивания и расстановки:
Рис. 4.33. Изображения, созданные копированием и перемещением
Z-порядок
Термин Z-порядок (порядок по оси Z) относится к перекрыванию объектами друг друга на рисунке. Иначе говоря, Z-порядок определяет, какой объект находится выше и закрывает собой другие. Две команды в меню «Объект» → «Поднять на передний план» (клавиша Home) и «Опустить на задний план» (клавиша End), переместят выбранный объект в самую верхнюю или самую нижнюю позицию по оси Z данного слоя. Две другие команды: «Поднять» (PgUp) и «Опустить» (PgDn) опустят или приподнимут выбранный объект (или объекты), но только на один уровеньотносительно других невыделенных объектов по оси Z (считаются только объекты, перекрывающие выделенные; если выделение ничем не перекрывается, действие «Поднять» и «Опустить» будет ставить его в самую верхнюю или самую нижнюю позицию соответственно).
Практикуйтесь в использовании этих команд, развернув Z-порядок нижестоящих объектов так, чтобы крайний левый эллипс оказался вверху, а крайний правый — в самом низу:
Рис. 4.35. Круги с различным Z-индексом
Очень полезная клавиша для выделений объектов — Tab. Если ничего не выбрано, данная клавиша выделяет самый нижний объект по оси Z; при других условиях она выбирает объект, находящийся над выбранным объектом (объектами)на оси Z. Shift+Tab срабатывает наоборот, переключая от верхнего к нижнему, так как при создании объекта он добавляется вверх Z-уровня. И если нет выделения, нажатие Shift+Tab выберетпоследнийсозданный объект. Опробуйте использование Tab и Shift+Tab на стопке эллипсов вверху.
Выделение объектов под объектами и перемещение выделенного
Что вы будете делать, если нужный вам объект закрыт другим объектом? Вы можете видеть нижний объект, если верхний (частично) прозрачен, но щёлкнув мышью по нужному, вы сделаете выделенным верхний объект, а не тот, что вам нужен.
В такой ситуации может помочь комбинация Alt+щелчок. Для начала щёлкните мышью по объекту, зажимая при этом клавишу Alt. В результате будет выбран тот объект, что сверху, как и при обычном выделении. Но при повторном нажатии Alt+щелчок в этом же месте выделенным станет нижнийобъект, ещё нажатие — и выделение сместится на объект уровнем ниже и т.д. Таким образом, несколько нажатий Alt+щелчок на стопке объектов будут перемещать выделение от верхнего объекта к нижнему на оси Z. Добравшись до самого нижнего объекта, нажатие Alt+щелчок выберет самый верхний объект.
[Alt+щелчок может не работать в Linux, если используемый оконный менеджер зарезервировал эти события для собственных надобностей. Попробуйте или изменить настройки оконного менеджера, или заставьте его использовать клавишу Meta (она же клавиша Windows), для того, чтобы Inkscape и другие приложения могли свободно использовать Alt.]
Это замечательно, но что вы теперь будете делать с выделенным объектом, находящимся под объектом? Вы можете менять его форму и передвигать за управляющие ручки, но при попытке перемещения самого объекта ваше выделение сбросится и выделенным станет объект, находящийся выше (таким образом работает система щелчок-и-перемещение — сначала она выбирает объект (верхний) под курсором, а потом уже даёт возможность его перемещать). Чтобы назначить Inkscape перемещать то, что выбрано сейчас, не выбирая ничего другого, используйте Alt+перемещение (мышью). Эта комбинация будет перемещать нужное выделение вне зависимости от того места, где движется курсор мыши.