Компьютерные книги
Главное меню
Главная Поиск по сайту Добавить материал О нас Карта книг Карта сайта
Реклама
computersbooks.net -> Добавить материал -> Языки программирования -> Ватсон К. -> "С#" -> 201

С# - Ватсон К.

Ватсон К. С# — Лори, 2005 . — 879 c.
ISBN 1-861004-98-2
Скачать (прямая ссылка): vatsonc2005.pdf
Предыдущая << 1 .. 195 196 197 198 199 200 < 201 > 202 203 204 205 206 207 .. 404 >> Следующая

(byte)PathPointType.Line,

>

В завершение, в приведенном выше иримере мы вызываем метод DrawPatho: е.Graphics.DrawPeth(Репе.Black, path)j

Области

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

Следующая программа создает область, добавляет в нее сначала Rectangle, затем GraphicsPath, после чего заполняет эту область синим цветом:

Rectangle rl = new Rectangle(10, 10, 50, SO) г*

Rectangle r2 = new Rectangle(40, 40, 50, 50) i Region r = new Region (rl) j r.Union(r2)i

GraphicsPath path * new GraphlcsPath(new Point[]{ new Point(45, 45), new Point(145, 55), new Point(200, ISO), newPoint(75, 150), new Point(45, 45)

), new byte I} (

(byte)PathPointType,Start,

(byte)PathPoi ntType.Bez i er,

Ibyt e)PathPointType.Bez i er,
434

Глава 16

(byte)PathPointType.Bez ier,

(byte)PathPointType.Line,

})i

r.Union(path)*

e.Graphics,FillRegion(Bruahes.Blue, r)i ¦

Этот код позволяет нарисовать форму, показанную на рисунке слепа.

Код, необходимый для создания области, оказывается достаточно сложным, что связано с построением путей, которые потом пройдут через данную область. Создание области включает в себя построение прямоугольников и путей с последующим вызовом метода union!) (объединение). Если требуется изобразить пересечение пути и прямоугольника, го можно НСПОЛЬЗОВаТЬ Вместо МСТОДа Union() МетОД Intersection! ] (пересечение).

Более подробная информация о графических путях и областях не является необходимой для ознакомления с GDI + . Ее можно почерпнуть в .NET Framework Reference (Руководство по .NET Framework).

Цвета

Большая часть графических операций в GDI+ предполагает выбор некоторого цвета. Например, при рисовании линии или прямоугольника необходимо указывать, каким цветом они должны рисоваться.

В GDI+ цвета инкапсулированы в структуру color. Можно синтезировать цвет, передавая значения состаатающих его красного, зеленого и синего цветов некоторой функции структуры color, но необходимость в этом возникает крайне редко. В структуре color содержится приблизительно 150 различных свойстп, которые предоставляют широкий выбор заранее определенных цветов. Забудьте о красном, зеленом, синем, желтом и черном! Если требуется вывести какой-либо графический объект цветом LightGoidenrodYellow (светло-эолотисто-желтыи) или цветом LavenderBiush (бледно-лилово-розовый), то такие цвета заранее описаны специально для нас! Нам необходимо описать переменную типа color н присвоить ей в качестве начального значения цвет, описанный в структуре Color таким образом:

Color redColar = Color.red;

Color anotherColor = Color.LightGoldenrodvellow;

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

Цвета могут представляться в двух различных видах. Один из них — уго RGB. Второй заключается в разбиении цвета на три компонента — Saturaiion (насыщенность), Hue (отгенок) и Brightness (яркость). В структуре color имеются специальные методы, которые позволяют осуществлять такое разбиение,— GctnueO, GetSaturation I) И GetBrightness I).

Для того чтобы поэкспериментировать с цветами, можно воспользоваться приложением Paint. Выберите в меню пункт Color | Edit Colors. Нажмите кнопку Define Custom Colors (определение собственных цветов), и перед вами появится диалоговое окно, которое позволит выбирать цвет с помощью мыши и получать для него соответствующие значения RGB, Существует также возможность получить для выбранного цвета значения Hue, Saturaiion и Luminosity (Luminosity в данном
Введение в GDI+

435

случае — это то же самое, что Brightness). Кроме того, есть возможность непосредственно вводить значения RGB и наблюдать получаемый в результате цвет.

Цвета в GDI+ обладают еще четвертым компонентом — компонентом Alpha, с помощью которого можно задавать затененность цвета, что позволяет создавать эффекты “из затемнения”/'‘в затемнение”. Такне эффекты используются в меню Windows 2000, В данной главе использование компонента Alpha рассматриваться не будет.

Вывод линий с помощью класса Реп

Первый пример будет посвящен рисованию линий. Мы будем рисовать линии с помощью класса Реп, определяющего цвет, толщину и образец линии, которая рисуется программой. Предназначение свойств Color (цвет) м Width (толщина) очевидны, а образец позволяет определять, требуется ли нарисовать сплошную линию или линию, состоящую из черточек и точек. Класс реп находится в пространстве имен System.Drawing.

Практикум: Пример использования класса Реп

Запустите Visual Studio.NET и создайте новое C# Windows Application. При создании ноиого проекта Visual Studio.NET создает также и новую пустую форму для этого проекта, которая получает имя Fomi, В модуле Formi.cs содержится код, предназначенный для этой формы. Щелкннте на форме правой кнопкой мышн и выберите пункт View Code из открывшегося меню. В качестве альтернативы можно щелкнуть правой кнопкой мыши на Forroi.cs в Solution Explorer, чтобы выбрать пункт View Code из открывшегося меню. Добавьте в Fonni.cs следующий код:
Предыдущая << 1 .. 195 196 197 198 199 200 < 201 > 202 203 204 205 206 207 .. 404 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

Эком "Microsoft Excel 2000 шаг за шагом Русская версия самоучитель " (Самоучитель)

Поляков А.Ю. "Методы и алгоритмы компьютерной графики в примерах Vizual C++" (Графика)

Баяковский Ю.М. "Графическая библиотека Open GL " (Графика)

Валиков А. "Технология " (Языки программирования)
Авторские права © 2013 ComputersBooks. Все права защищены.