C#.программирование 2D и 3D векторной графики [Н. А. Тюкачев] (pdf) читать постранично, страница - 2
Книга в формате pdf! Изображения и текст могут не отображаться!
[Настройки текста] [Cбросить фильтры]
- 1
- 2
- 3
- 4
- . . .
- последняя (12) »
перспективы, имитировать освещение и строить стереоизображение.
В последней главе «Использование графической библиотеки OpenGL»
приводится порядок установки, инициализации и завершения работы с
OpenGL, описываюся команды и примитивы OpenGL. К этой главе
прилагаются два проекта: для двумерной и трехмерной графики.
Текст содержит большое количество примеров программного кода,
способствующих усвоению материала. Книга рассчитана на студентов
высших учебных заведений, учащихся старших классов, а также лиц,
самостоятельно изучающих языки программирования.
4
Глава 1. ОСНОВНЫЕ ГРАФИЧЕСКИЕ КЛАССЫ C#
Возможности визуальной студии .NET позволяют написать сложные
приложения, используя только средства управления, доступные в наборе
компонентов. Набор компонентов включает в себя средства управления для
показа данных (ярлыки, календари, списки и т.д.), наборы (радио-кнопки,
CheckBoxes, списки и т.д.) и контейнеры для сбора данных (DataGrids,
TextBox и т.д.). Кроме того, несколько средств управления и компонентов
управляют датой и временем (Timer и т.д.).
Однако, часто возникает необходимость показывать данные, используя
инструменты доступа через GDI+ (Graphics Device Interface — интерфейс
графических устройств) и графические объекты.
Для демонстрации возможностей этих инструментов эта и следующая
главы описывают основы программирования графики с простыми программами.
1.1. ПРОСТРАНСТВА ИМЕН ГРАФИЧЕСКИХ КЛАССОВ
Классы, предназначенные для рисования, заключены в библиотеку
System.Drawing.dll, которая определяет несколько пространств имен.
Таблица 1.1
Основные пространства имен GDI+
Пространство имен
Назначение
System.Drawing
Определяет типы для визуализации: шрифты,
перья, кисти и т.п. Содержит класс Graphics
Drawing.Drawing2D
Представляет классы, используемые для более
развитой функциональности графики
(градиентные кисти, концы перьев,
геометрические трансформации и т.п.)
Drawing.Printing
Определяет классы, позволяющие печатать на
бумаге, взаимодействовать с принтером и
форматировать общий вид печати
Drawing.Imaging
Определяет классы, позволяющие работать с
графическими файлами (изменять палитры,
извлекать метаданные изображений,
манипулировать метафайлами и т.п.)
System.DrawingText Позволяет работать с коллекциями шрифтов
5
1.2. ПРОСТРАНСТВО ИМЕН SYSTEM.DRAWING
Большинство графических классов и других типов находится в
пространстве имен System.Drawing. В нем есть классы, представляющие
кисти, перья, шрифты и изображения. Пространство имен System.Drawing
определяет также множество служебных структур и классов, таких как
Color, Point, Size и Rectangle. В таблице 1.2 перечислены
некоторые основные типы.
Таблица 1.2
Основные типы пространства имен System.Drawing
Класс
Назначение
Bitmap
Представляет полотно для рисования в памяти.
Инкапсулирует изображения (*.bmp и т.п.)
Brush
Объекты кистей используются для заполнения
Brushes
внутренних областей графических фигур, таких как
SolidBrush
прямоугольники, эллипсы и многоугольники.
SystemBrushes
У класса SolidBrush есть свойство Color
TextureBrush
Color
Определяют
множество
статических
свойств,
SystemColors
используемых для получения цветов перьев и кистей
Font
Инкапсулирует свойства шрифта (название, стиль,
FontFamily
курсив, размер и т.п.). FontFamily предоставляет
абстракцию для группы шрифтов, имеющих
сходный дизайн, но различия в стиле
Graphics
Представляет поверхность рисования и множество
методов для визуализации текста, изображений и
геометрических шаблонов
Icon
Представляют пиктограммы, а также набор
SystemIcons
стандартных системных пиктограмм
Image
Image — абстрактный базовый класс,
ImageAnimator
предоставляющий функциональность для классов
Bitmap, Icon и Cursor. Класс
ImageAnimator анимирует изображение
Pen
Перья — это объекты, используемые для рисования
Pens
линий. Класс Реn определяет набор статических
SystemPens
свойств, возвращающих Реn заданного цвета
Point
Структуры описывают целые или вещественные
PointF
координаты (х, у)
Rectangle
Структуры описывают прямоугольные области с
RectangleF
целыми или вещественными параметрами
Size
Структуры описывают ширину/высоту с целыми
SizeF
или вещественными параметрами
6
Продолжение табл. 1.2
Назначение
Используется для инкапсуляции различных средств
текстовой компоновки (например, выравнивание,
межстрочный интервал и т.п.)
Region
Тип описывает внутреннюю часть геометрического
образа, состоящего из прямоугольников и путей
Все эти классы будут далее описаны, поскольку ими приходится
пользоваться, но перед переходом к ним давайте подробно изучим основной
класс Graphics.
Класс
StringFormat
1.3. КЛАСС GRAPHICS
Класс Graphics представляет GDI+ поверхность рисования.
Графический объект поддерживает для поверхности рисования: масштаб,
единицы, ориентацию поверхности рисования.
Приведем пример простейшего приложения, которое на форме рисует
эллипс:
Листинг 1.1. Простейшая графическая
- 1
- 2
- 3
- 4
- . . .
- последняя (12) »
Последние комментарии
11 часов 29 минут назад
18 часов 38 минут назад
19 часов 45 минут назад
20 часов 51 минут назад
21 часов 13 минут назад
21 часов 19 минут назад