Библиотека knigago >> Компьютеры и Интернет >> Учебники и самоучители по компьютеру >> C#.программирование 2D и 3D векторной графики


СЛУЧАЙНЫЙ КОММЕНТАРИЙ

# 1764, книга: Братский круг 2 (СИ)
автор: Вячеслав Юшкин

Вячеслав Юшкин Альтернативная история "Братский круг 2 (СИ)" - второй роман эпической серии Вячеслава Юшкина, исследующей альтернативный исторический путь России после Октябрьской революции. В продолжении "Братского круга" захватывающее повествование переносит читателя на двадцать лет вперед, в 1958 год. Советский Союз, победив в Великой Отечественной войне, стал мировой сверхдержавой, но внутри страны нарастает недовольство и зарождается оппозиция. Главный герой,...

СЛУЧАЙНАЯ КНИГА

Н. А. Тюкачев - C#.программирование 2D и 3D векторной графики

C#.программирование 2D и 3D векторной графики
Книга - C#.программирование 2D и 3D векторной графики.  Н. А. Тюкачев  - прочитать полностью в библиотеке КнигаГо
Название:
C#.программирование 2D и 3D векторной графики
Н. А. Тюкачев

Жанр:

Учебники и самоучители по компьютеру, C, C++, C#

Изадано в серии:

неизвестно

Издательство:

неизвестно

Год издания:

-

ISBN:

неизвестно

Отзывы:

Комментировать

Рейтинг:

Поделись книгой с друзьями!

Помощь сайту: донат на оплату сервера

Краткое содержание книги "C#.программирование 2D и 3D векторной графики"


Читаем онлайн "C#.программирование 2D и 3D векторной графики". [Страница - 3]

статических
SystemPens
свойств, возвращающих Реn заданного цвета
Point
Структуры описывают целые или вещественные
PointF
координаты (х, у)
Rectangle
Структуры описывают прямоугольные области с
RectangleF
целыми или вещественными параметрами
Size
Структуры описывают ширину/высоту с целыми
SizeF
или вещественными параметрами
6

Продолжение табл. 1.2
Назначение
Используется для инкапсуляции различных средств
текстовой компоновки (например, выравнивание,
межстрочный интервал и т.п.)
Region
Тип описывает внутреннюю часть геометрического
образа, состоящего из прямоугольников и путей
Все эти классы будут далее описаны, поскольку ими приходится
пользоваться, но перед переходом к ним давайте подробно изучим основной
класс Graphics.
Класс
StringFormat

1.3. КЛАСС GRAPHICS
Класс Graphics представляет GDI+ поверхность рисования.
Графический объект поддерживает для поверхности рисования: масштаб,
единицы, ориентацию поверхности рисования.
Приведем пример простейшего приложения, которое на форме рисует
эллипс:
Листинг 1.1. Простейшая графическая программа
public partial class FormMain : Form
{
Graphics g;
private void Draw()
{
g = CreateGraphics();
g.Clear(Color.White);
g.DrawEllipse(Pens.Black,10,10,200,100);
g.Dispose();
}
private void FormMain_Paint(object sender,
PaintEventArgs e)
{
Draw();
}
}

Результат работы программы показан на рисунке 1.1.

Рис. 1.1. Простейшая графическая программа

7

Отметим важные моменты, которые необходимо соблюдать при
создании любого GDI-проекта:
– должно быть определено свойство g класса Graphics;
– необходимо создать обработчик события onPaint, в котором
будет вызываться метод рисования Draw().
В методе Draw():
– методом CreateGraphics() необходимо создать объект g;
– методом Clear() очистить поверхность рисования;
– что-нибудь нарисовать;
– освободить память от объекта g.
Класс Graphics содержит много свойств. Часто используемые
свойства перечислены в таблице 1.3, большинство которых будет
демонстрироваться позже. Все они позволяют не только читать себя, но и
изменять.
Таблица 1.3
Свойства класса Graphics
Свойство
Класс
Описание
Clip
Region
Возвращает или задает объект Region,
ограничивающий область рисования
данного объекта
DpiX /
Float /
Задает значение горизонтального и
DpiY
single
вертикального разрешения в точках на
дюйм
PageScale Float /
Задает значение для масштабирования
single
между универсальными единицами и
единицами страницы
PageUnit
GraphicsUnit Возвращает или задает единицу
измерения для координат страницы
данного объекта
Свойство PageScale устанавливает масштабирование между
мировыми единицами и единицами страницы.

1.4. КООРДИНАТЫ
В определении декартовой системы координат оси X и Y проходят так,
как показано на рисунке 1.2. Значения справа и выше центра координат
являются положительными, а значения слева и ниже – отрицательными.

8

Рис. 1.2. Декартовы координаты

В графических программных средах система координат имеет начало
координат в верхнем левом углу, и оси координат направлены направо и
вниз, как показано на рисунке 1.3.

Рис. 1.3. Мировые координаты

Координаты, используемые в методах класса Graphics, называют
мировыми координатами.

1.5. ПРЕОБРАЗОВАНИЕ КООРДИНАТ
Мировые координаты преобразовываются в координаты страницы
мировыми
преобразованиями.
Мировые
преобразования,
например
TranslateTransform(), ScaleTransform() и RotateTransform(),
9

используются для того, чтобы установить центр и поворот системы
координат.
Свойство PageUnit устанавливает единицу для преобразования и
масштабирования рисунков. Эти единицы – одно из возможных
GraphicsUnits-перечисленных значений, приведенных в таблице 1.4.
Таблица 1.4
Перечисление GraphicsUnits
Перечисленная
Единица измерения
Display
1/75 дюйма
Document
1/300 дюйма
Inch
1 дюйм
Millimeter
1 миллиметр
Pixel
1 пиксел
Point
1/72 дюйма
World
Мировые единицы
В следующем примере рисуется 6 эллипсов с различными единицами
измерения.
Листинг 1.2. Рисование эллипсов с различными единицами измерения
private void Draw()
{
g = CreateGraphics();
g.Clear(Color.White);
g.PageUnit = GraphicsUnit.Pixel;
g.DrawEllipse(Pens.Black, 10, 10, 200, 100);
g.PageUnit = GraphicsUnit.Display;
g.DrawEllipse(Pens.Black, 10, 10, 200, 100);
g.PageUnit = GraphicsUnit.Point;
g.DrawEllipse(Pens.Black, 10, 10, 200, 100);
g.PageUnit = GraphicsUnit.Millimeter;
g.DrawEllipse(Pens.Black, 10, 10, 20, 10);
g.PageUnit = GraphicsUnit.Document;
g.DrawEllipse(Pens.Black, 10, 10, 200, 100);
Pen myPen = new Pen(Color.Black,0.05F);
g.PageUnit = GraphicsUnit.Inch;
g.DrawEllipse(myPen, 1, 1, 2, 1);
g.Dispose();
}

10

Для первых пяти эллипсов --">

Оставить комментарий:


Ваш e-mail является приватным и не будет опубликован в комментарии.