Презентация Графика. Важные пространства имен онлайн

На нашем сайте вы можете скачать и просмотреть онлайн доклад-презентацию на тему Графика. Важные пространства имен абсолютно бесплатно. Урок-презентация на эту тему содержит всего 61 слайд. Все материалы созданы в программе PowerPoint и имеют формат ppt или же pptx. Материалы и темы для презентаций взяты из открытых источников и загружены их авторами, за качество и достоверность информации в них администрация сайта не отвечает, все права принадлежат их создателям. Если вы нашли то, что искали, отблагодарите авторов - поделитесь ссылкой в социальных сетях, а наш сайт добавьте в закладки.
Презентации » Устройства и комплектующие » Графика. Важные пространства имен



Оцените!
Оцените презентацию от 1 до 5 баллов!
  • Тип файла:
    ppt / pptx (powerpoint)
  • Всего слайдов:
    61 слайд
  • Для класса:
    1,2,3,4,5,6,7,8,9,10,11
  • Размер файла:
    1.19 MB
  • Просмотров:
    64
  • Скачиваний:
    0
  • Автор:
    неизвестен



Слайды и текст к этой презентации:

№1 слайд
Графика GDI
Содержание слайда: Графика GDI+

№2 слайд
Важные пространства имен
Содержание слайда: Важные пространства имен

№3 слайд
Типы System.Drawing I
Содержание слайда: Типы System.Drawing (I)

№4 слайд
Типы System.Drawing II
Содержание слайда: Типы System.Drawing (II)

№5 слайд
Перечисленения System.Drawing
Содержание слайда: Перечисленения System.Drawing

№6 слайд
Тип Point PointF namespace
Содержание слайда: Тип Point (PointF) namespace DrawingUtilTypes { using System; using System.Drawing; // Это пространство имен нужно для работы с типами GDI+ public class UtilTypes { public static int Main(string[] args) { Point pt = new Point(100, 72); // Создаем точку, а затем смещаем ее System.Console.WriteLine(pt); pt.Offset(20, 20); System.Console.WriteLine(pt); Point pt2 = pt; // Применяем перегруженные операторы Point if (pt = = pt2) Console.WriteLine("Points are the same"); else Console.WriteLine("Different points"); pt2.X = 4000; // Меняем значение координаты X для pt2 // А теперь выводим информацию о координатах каждой точки: Console.WriteLine("First point: {0}", pt.ToString()); Console.WriteLine("Second point: {0}", pt2.ToString()); return 0; } } }

№7 слайд
Члены класса Point PointF
Содержание слайда: Члены класса Point (PointF)

№8 слайд
Члены класса Rectangle
Содержание слайда: Члены класса Rectangle (RectangleF)

№9 слайд
Работа метода Contains public
Содержание слайда: Работа метода Contains() public static int Main(string[] args) { ... Rectangle r1 = new Rectangle(0, 0, 100, 100); Point pt3 = new Point(101, 101); if (r1.Contains(pt3)) Console.WriteLine("Point is within the rect!"); else Console.WriteLine("Point is not within the rect!"); // Теперь помещаем точку внутрь области прямоугольника pt3.X = 50; pt3.Y = 30; if (r1.Contains(pt3)) Console.WriteLine("Point is within the rect!"); else Console.WriteLine("Point is not within the rect!"); return 0; }

№10 слайд
Члены класса Size SizeF
Содержание слайда: Члены класса Size (SizeF)

№11 слайд
Методы класса Region
Содержание слайда: Методы класса Region

№12 слайд
Сеансы вывода графики public
Содержание слайда: Сеансы вывода графики (1) public class MainForm : Form { public MainForm() { CenterToScreen(); this.Text = "Basic Paint Form"; } public static void Main(string[] args) { Application.Run(new MainForm()); } protected override void OnPaint(PaintEventArgs e) { Graphics g = e.Graphics; g.DrawString("HelloGDI+", new Font("Times New Roman", 20), new SolidBrush(Color.Black), 0, 0); } }

№13 слайд
Сеансы вывода графики вариант
Содержание слайда: Сеансы вывода графики (вариант 2) public class MainForm : Form { public MainForm() { ... // Добавляем обработчик события this.Paint += new System.Windows.Forms.PaintEventHandler(MainForm_Paint); } // Обратите внимание на сигнатуру обработчика событий public void MainForm_Paint( object sender, PaintEventArgs e ) { Graphics g = e.Graphics; ... } public static void Main(string[] args) { Application.Run(new MainForm()); } }

№14 слайд
Как сделать клиентскую
Содержание слайда: Как сделать клиентскую область вашего приложения недействительной public class MainForm : Form { ... private void MainForm_Paint(object sender, PaintEventArgs e) { Graphics g = g.Graphics; // Логика для вывода изображения ... } private void GetNewBitmap() { // Выводим окно диалога и получаем выбранное изображение ... // А теперь перерисовываем клиентскую часть формы Invalidate(); } }

№15 слайд
Указание области перерисовки
Содержание слайда: Указание области перерисовки private void UpdateUpperArea() { Rectangle myRect = new Rectangle(0,0,75,150); Invalidate(myRect); }

№16 слайд
Вывод графики вне события
Содержание слайда: Вывод графики вне события Paint private void NainForm_MouseDown(object sender, MouseEventArgs e) { // Получаем объект Graphics Graphics g = Graphics.FromHwnd(this.Handle); // По щелчку мыши рисуем кружок g.DrawEllipse(new Pen(Color.Green), e.X, e.Y, 10, 10); }

№17 слайд
Правильный вывод графики
Содержание слайда: «Правильный» вывод графики public class MainForm : System.Windows.Forms.Form { // Коллекция для хранения координат всех кружков private ArrayList myPts = new ArrayList(); ... private void NainForm_MouseDown(object sender, MouseEventArgs e) { // А теперь мы просто добавляем координаты указателя при щелчке // в коллекцию и вызываем Invalidate() myPts.Add(new Point(e.X, e.Y)); Invalidate(); } private void MainForm_paint(object sender, PaintEventargs e) { Graphics g = e.Graphics; g.DrawString("Hello CDI+", new Font("Times New Roman", 20), new SolidBrush(Color,Black), 0, 0); // Выводим все точки foreach(Point p in myPts) g.DrawEllipse(new Pen(Color.Green), p.X, p.Y, 10, 10); } }

№18 слайд
Возможности класса Graphics
Содержание слайда: Возможности класса Graphics FromHdc(), FromHwnd(), FromImage() – статические методы, обеспечивают возможность получения объекта Graphics из элемента управления или изображения Clear() – заполняет объект Graphics выбранным цветом, удаляя предыдущее содержимое MeasureString() – возвращает структуру Size, представляющую границы блока текста

№19 слайд
Методы рисования класса
Содержание слайда: Методы рисования класса Graphics DrawArc(), DrawBezier(), DrawBeziers(), DrawCurve(), DrawEllipse(), DrawIcon(), DrawLine(), DrawLines(), DrawPie(), DrawPath(), DrawRectangle(), DrawRectangles(), DrawString() – все это методы вывода изображений FillEllipse(), FillPath(), FillPie(), FillPolygon(), FillRectangle() – заполнение внутренних областей объектов

№20 слайд
Свойства класса Graphics
Содержание слайда: Свойства класса Graphics Clip, Graphics, clipBounds, VisibleClipBounds, IsClipEmpty, IsVisibleClipEmpty – позволяют настроить параметры отсечения для объекта Transform – для проведения преобразований координат PageUnit, PageScale, DpiX, DpiY – задают единицы измерения SmoothingMode, PixelOffsetMode, TextRenderingHint – задают плавность пере-ходов для геометрических объектов и текста CompositingMode, CompositingQuality – будет ли графический объект выводиться над фоном или будет происходить мешение с фоном InterpolationMode – определяет интерполяцию между соседними точками

№21 слайд
Система координат по умолчанию
Содержание слайда: Система координат по умолчанию

№22 слайд
Применение других единиц
Содержание слайда: Применение других единиц измерения

№23 слайд
Смена начала координат
Содержание слайда: Смена начала координат private void MainForm_Paint(object sender, PaintEventsArgs e) { // Настраиваем единицы измерения e.Graphics.PageUnit = GraphicsUnit.Point; // Настраиваем новую точку отсчета для системы координат e.Graphics.TranslateTransform(100, 100); // Код для вывода прямоугольника остается прежним e.Graphics.DrawRectangle(new Pen(Color.Red, 1), 0, 0, 100, 100); }

№24 слайд
Работа с цветом Один из
Содержание слайда: Работа с цветом // Один из множества предопределенных цветов Color c = Color.PapayaWhip // Названия цветов – статические поля

№25 слайд
Члены класса Color
Содержание слайда: Члены класса Color

№26 слайд
Возможности класса
Содержание слайда: Возможности класса ColorDialog public class ColorDlgForm : System.Windows.Forms.Form { // Работаем с классом ColorDialog private System.Windows.Forms.ColorDialog colorDlg; public ColorDlgForm() { colorDlg = new System.Windows.Forms.ColorDialog(); Text = "Click on me to change the color"; this.MouseUp += new MouseEventHandler(this.ColorDlgForm_MouseUp); } ... private void ColorDlgForm_MouseUp(object sender, MouseEventArgs e) { if (colorDlg.ShowDialog() != DialogResult.Cancel) { currColor = colorDlg.Color; this.BackColor = currColor; // Выводим информацию о выбранном цвете string strARGB = colorDlg.Color.ToString(); MessageBox.Show(strARGB, "Color is:"); } } }

№27 слайд
Работа со шрифтами Создаем
Содержание слайда: Работа со шрифтами // Создаем объект Font, указывая имя шрифта и его размер Font f = new Font("Times New Roman", 12) // Создаем объект Font, указывая имя, размер и стиль Font f2 = new Font("Arial", 20, FontStyle.Bold | FontStyle.Underline) // public void DrawString(String, Font, Brush, Point) g.DrawString("My string", new Font("Arial",24), new SolidBrush(Color.Black), new Point (0,0)); // public void DrawString(String, Font, Brush, float, float) g.DrawString("Another string", f2, Brushes.Black,10,30);

№28 слайд
Семейства шрифтов Создаем
Содержание слайда: Семейства шрифтов // Создаем объект FontFamily FontFamily myFamily = new FontFamily("Verdana"); // Передаем созданный нами объект как параметр Font myFont = new Font(myFamily, 12); e.Grapgics,DrawString("Hello",myFont,Brushes.Blue,10,10)

№29 слайд
Приложение с возможностью
Содержание слайда: Приложение с возможностью выбора шрифта public class FontForm: System.Windows.Forms.Form { private Timer timer; private int swellValue; // Этот шрифт будет использоваться по умолчанию: private string fontFace = "WingDings"; public FontForm() { // Считаем, что система меню создана при помощи Visual Studio.IDE InitializeComponents(); timer = new Timer(); Text = "Font App"; Width = 425; Height = 150; BackColor = Color.Honeydew; CenterToScreen(); // Настраиваем таймер timer.Enabled = true; timer.Interval = 100; timer.Tick += new EventHandler(FontForm_OnTimer); } }

№30 слайд
Приложение с возможностью
Содержание слайда: Приложение с возможностью выбора шрифта private void FontForm_OnTimer(object sender, EventArgs e) { // При каждом «тике» размер шрифта увеличивается на 5 swellValue += 5; // При достижении максимального размера уменьшаем размер до 0 if(swellValue >= 50) swellValue = 0; // Перерисовываем нужную нам прямоугольную область Invalidate(new Rectangle(0, 0, ClientRectangle.Width, 100)); }

№31 слайд
Приложение с возможностью
Содержание слайда: Приложение с возможностью выбора шрифта private void FontForm_Paint(object sender, PaintEventsArgs e) { Graphics g = e.Graphics; // Размер шрифта будет меняться между 12 и 62 в зависимости от текущего значения swellValue Font theFont = new Font(fontFace, 12 + swellValue); string message = "Hello GDI+"; // Выводим сообщение по центру формы float windowCenter = this.DisplayRectangle.Width/2; SizeF stringSize = g.MeasureString(message, theFont); float startPos = windowCenter - (stringSize.Width/2); g.DrawString(message, theFont, new SolidBrush(Color.Blue), startPos, 10); }

№32 слайд
Обработка команд меню private
Содержание слайда: Обработка команд меню private void FormatFont_Clicked(object sender, EventArgs e) { cmiFontChecked.Checked = false; MenuItem miClicked = (MenuItem)sender; fontFace = miClicked.Text.Remove(0,1); if (fontFace == "Arial") cmiFontChecked = cmiArial; else if (fontFace == "Times New Roman") cmiFontChecked = cmiTimesNewRoman; else if (fontFace == "WingDings") cmiFontChecked = cmiWingDings; cmiFontChecked.Checked = true; Invalidate(); }

№33 слайд
Информация об установленных
Содержание слайда: Информация об установленных шрифтах public class FontForm : System.Windows.Forms.Form { // Для хранения списка шрифтов private string installedFonts; // Обработчик события меню для вывода списка установленных в системе шрифтов private void mnuConfigShowFonts_Clicked(object sender, EventArgs e) { InstalledFontCollection fonts = new InstalledFontCollection(); for(int i=0; i < fonts.Families.Lenght; i++) { installedFonts += fonts.Families[i].Name + " "; } // На этот раз нам потребуется перерисовать всю клиентскую область // формы, поскольку вывод полученных значений будет производиться в // нижнюю часть формы Invalidate(); } ... }

№34 слайд
Вывод информации в нижнюю
Содержание слайда: Вывод информации в нижнюю часть формы private void FontForm_Paint(object sender, PaintEventArgs e) { Graphics g = g.Graphics; Font theFont = new Font(fontFace, 12 + swellValue); string message = "Hello GDI+"; // Выводим сообщение "Hello GDI+" по центру формы float windowCenter = this.DisplayRectangle.Width/2; SizeF stringSize = g.MeasureString(message, theFont); float startPos = windowCenter - (stringSize.Width/2); g.DrawString(message, theFont, new SolidBrush(Color.Blue), startPos, 10); // Выводим информацию об установленных шрифтах под занятой областью Rectangle myRect = new Rectangle(0, 100, ClientRectangle.Width, ClientRectangle.Height); // Будем рисовать в этой области белым по черному g.FillRectangle(newSolidBrush(Color.Black), myRect); g.DrawString(installedFonts, new Font("Arial", 12), new SolidBrush(Color.White), myRect); }

№35 слайд
Обработка события Resize
Содержание слайда: Обработка события Resize private void FontForm_Resize(object sender, System.EventArgs e) { Rectangle myRect = new Rectangle(0, 100, ClientRectangle.Width, ClientRectangle.Height); Invalidate(myRect); }

№36 слайд
Класс FontDialog public class
Содержание слайда: Класс FontDialog public class FontDlgForm : System.Windows.Forms.Form { private System.Windows.Forms.FontDialog fontDlg; private Font currFont; // Обработчик события Paint private void FontDlgForm_Paint(object sender, PaintEventArgs e) { Graphics g = e.Graphics; g.DrawString("Testing...", currFont, new SolidBrush(Color.Black), 0, 0); } public FontDlgForm() { CenterToScreen(); fontDlg = new System.Windows.Forms.FontDialog(); fontDlg.ShowHelp = true; Text = "Click on me to change the font"; currFont = new Font("Times New Roman", 12); ... } // Обработчик события MouseUp private void FontDlgForm_MouseUp(object sender, MouseEventArgs e) { if (fontDlg.ShowDialog() != DialogResult.Cancel) { currFont = fontDlg.Font; Invalidate(); } } }

№37 слайд
Классы System.Drawing.Drawing
Содержание слайда: Классы System.Drawing.Drawing2D

№38 слайд
Перечисления
Содержание слайда: Перечисления System.Drawing.Drawing2D

№39 слайд
Определение качества вывода
Содержание слайда: Определение качества вывода графического объекта private void MainForm_Paint(object sender, PaintEventArgs e) { Graphics g = e.Graphics; // Устанавливаем качество вывода графического объекта g.SmoothingMode = SmoothingMode.AntiAlias; // Еще лучше – HighQuality // Еще быстрее - HighSpeed }

№40 слайд
Рисование пером
Содержание слайда: Рисование пером

№41 слайд
Некоторые свойства класса Pen
Содержание слайда: Некоторые свойства класса Pen

№42 слайд
Работа с перьями private void
Содержание слайда: Работа с перьями private void MainForm_Paint(object sender, PaintEventArgs e) { Graphics g = e.Graphics; // Создаем большое перо синего цвета Pen bluePen = new Pen(Color.Blue, 20); // Создаем еще одно перо при помощи заготовок из коллекции Pens Pen pen2 = Pens.Firebrick; // Выводим при помощи созданных нами перьев геометрические фигуры g.DrawEllipse(bluePen, 10, 10, 100, 100); g.DrawLine(pen2, 10, 130, 110, 130); g.DrawPie(Pens.Black, 150, 10, 120, 150, 90, 80); // Выводим многоугольник пурпурного цвета Pen pen3 = new Pen(Color.Purple, 5); pen3.DashStyle = DashStyle.DashDotDot; g.DrawPolygon(pen3, new Point[] { new Point (30, 140), new Point(265, 200), new Point(100, 225), new Point(190, 190), new Point(50, 330), new Point(20, 180),} ); // Добавляем прямоугольник со вписанным нами текстом Rectangle r = new Rectangle(150, 10, 130, 60); g.DrawRectangle(Pens.Blue, r); g.DrawString("Hello out there...How are ya?", new Font("Arial", 12), Brushes.Black, r); }

№43 слайд
Работаем с наконечниками
Содержание слайда: Работаем с наконечниками перьев (Перечисление LineCap)

№44 слайд
Наконечники перьев private
Содержание слайда: Наконечники перьев private void MainForm_Paint (object sender, PaintEventArgs e) { Graphics g = e.Graphics; Pen thePen = new Pen(Color.Black, 10); int yOffSet = 10; // Получаем все значения перечисления LineCap Array obj = Enum.GetValues(typeof(LineCap)); // Выводим линию с использованием значения из LineCap for(int x = 0; x < obj.Length; x++) { // Настраиваем "наконечник" пера LineCap temp = (LineCap)obj.GetValue(x); thePen.StartCap = temp; thePen.EndCap = temp; // Выводим имя значения перечисления g.DrawString(temp.ToString(), new Font("Times New Roman", 10), new SolidBrush(Color.Black), 0, yOffSet); // Выводим линию с выбранным наконечником g.DrawLine(thePen, 100, yOffSet, Width - 50, yOffSet); yOffSet += 40; } }

№45 слайд
Работаем с кистью
Содержание слайда: Работаем с кистью

№46 слайд
Работа с кистью private void
Содержание слайда: Работа с кистью private void MainForm_Paint(object sender, PaintEventArgs e) { Graphics g = e.Graphics; // Создаем "плотную кисть" — SolidBrush — синего цвета SolidBrush blueBrush = new SolidBrush(Color.Blue); // Создаем еще одну кисть при помощи заранее готовой коллекции Brushes SolidBrush pen2 = (SolidBrush)Brushes.Firebrick; // Закрашиваем этими кистями геометрические фигуры g.FillEllipse(blueBrush, 10, 10, 100, 100); g.FillPie(Brushes.Black, 150, 10, 120, 150, 90, 80); // Закрашиваем многоугольник пурпурным цветом SolidBrush brush3 = new SolidBrush(Color.Purple); g.FillPolygon(brush3, new Point[]{ new Point(30, 140), new Point(265, 200), new Point(100, 225), new Point(190, 190), new Point(50, 330), new Point(20, 180)} ); // и прямоугольник с текстом — синим: Rectangle r = new Rectangle(150, 10, 130, 60); g.FillRectangle(Brushes.Blue, r); g.DrawString("Hello out there...Now are ya?", new Font("Arial", 12), Brushes.White, r); }

№47 слайд
Работаем со штриховыми
Содержание слайда: Работаем со штриховыми кистями (Перечисление HatchStyle)

№48 слайд
Работаем со штриховыми
Содержание слайда: Работаем со штриховыми кистями private void MainForm_Paint(object sender, PaintEventArgs e) { Graphics g = e.Graphics; int yOffSet = 10; // Помещаем в массив все члены перечисления HatchStyle Array obj = Enum.GetValues(typeof(HatchStyle)); // Выводим эллипс со штриховкой, соответствующей членам перечисления HatchStyle // с 1 по 10 for(int x =0; x < 10; x++) { // Настраиваем кисть HatchStyle temp = (HatchStyle)obj.GetValue(x); HatchBrush theBrush = new HatchBrush(temp, Color.White, Color.Black); // Выводим имя каждого из значений перечисления g.DrawString(temp.ToString(), new Font("Times New Roman", 10), new SolidBrush (Color.Black), 0, yOffSet); // Закрашиваем эллипс штриховой кистью g.FillEllipse(theBrush, 150, yOffSet, 200, 25); yOffSet += 40; } }

№49 слайд
Работаем с текстурными
Содержание слайда: Работаем с текстурными кистями public class MainForm : System.Windows.Forms.Form { // Потребуются переменные типа Brush для загрузки изображений private Brush texturedTextBrush; private Vrush texturedBGroundBrush; public MainForm() { ... // Загружаем изображение для текстуры формы Image bGroundBrushImage = new Bitmap(Coluds.bmp"); texturedBGrounBrush = new TextureBrush(bBroundBrushImage); // Загружаем изображение для текстуры теста Image textBrushImage = new Bitmap("Soap Bubbles.bmp"); texturedTextBrush = new TextureBrush(textBrushImage); } ... }

№50 слайд
Используем текстурные кисти
Содержание слайда: Используем текстурные кисти private void MainForm_Paint(object sender, PaintEventArgs e) { Graphics g = e.Graphics; Rectangle r = ClientRectangle; // Выводим облака на форме g.FillRectangle(texturedBGroundBrush, r); // Текст должен быть большим — чтобы можно было разглядеть текстуру g.DrawString ("Bitmaps as brushes! Way cool...", new Font("Arial", 60, FontStyle.Bold | FontStyle.Italic), texturedTextBrush, r); }

№51 слайд
Работа с градиентными кистями
Содержание слайда: Работа с градиентными кистями private void MainForm_Paint(object sender, PaintEventArgs e) { Graphics g = e.Graphics; Rectangle r = new Rectangle(10, 10, 100, 100); LinearGradientBrush theBrush = null; int yOffSet = 10; // Получаем все значения перечисления LinearGradientMode Array obj = Enum.GetValues(typeof(LinearGradientMode)); // Выводим прямоугольник, используя значения LinearGradientMode for(int x = 0; x < obj.Length; x++) { // Настраиваем кисть LinearGradientMode temp = (LinearGradientMode)obj.GetValue(x); theBrush = new LinearGradientBrush(r, Color.Red, Color.Blue, temp); // Выводим имя значения перечисления g.DrawString(temp.ToString(), new Font("Times New Roman", 10), new SolidBrush(Color.Black), 0, yOffSet); // Заполняем прямоугольник при помощи градиентной кисти g.FillRectangle(theBrush, 150, yOffSet, 200, 50); yOffSet += 80; } }

№52 слайд
Вывод изображений Члены
Содержание слайда: Вывод изображений Члены класса Image

№53 слайд
Вывод изображений public
Содержание слайда: Вывод изображений public class mainForm : System.Windows.Forms.Form { // Объявляем переменные типа Image private Image bMapImageA; private Image bMapImageB; private Image bMapImageC; public MainForm() { ... // Используем для этих переменных объекты класса Bitmap bMapImageA = new Bitmap("ImageA.bmp"); bMapImageB = new Bitmap("ImageB.bmp"); bMapImageC = new Bitmap("ImageC.bmp"); } ... }

№54 слайд
Вывод изображений private
Содержание слайда: Вывод изображений private void Form1_Paint(object sender, System.Windows.Forms.PaintEventArgs e) { Graphics g = e.Graphics; // Выводим изображения g.DrawImage(bMapImageA, 10, 10, 90, 90); g.DrawImage(bMapImageB, rectB); g.DrawImage(bMapImageC, rectC); }

№55 слайд
Форматы изображений Тип
Содержание слайда: Форматы изображений // Тип Bitmap поддерживает все распространенные форматы! Bitmap myBMP = new Bitmap("CoffeeCup.bmp"); Bitmap myGIF = new Bitmap("Candy.gif"); Bitmap myJPEG = new Bitmap("Clock.jpg"); Bitmap myPNG = new Bitmap("Speakers.png"); Bitmap myTIFF = new Bitmap("FooFighters.bmp"); // Выводим изображения при помощи Graphics.DrawImage() g.DrawImage(myBmp, 10, 10); g.DrawImage(myGIF, 220, 10); g.DrawImage(myJPEG, 280, 10); g.DrawImage(myPNG, 150, 200); g.DrawImage(myTIFF, 300, 200);

№56 слайд
Методы Add класса
Содержание слайда: Методы Add класса GraphicsPath AddArc AddBezier AddBeziers AddclosedCurves AddCurve AddEllipse AddLine

№57 слайд
Построение пути public
Содержание слайда: Построение пути public MainForm : System.Windows.Forms.Form { // Создаем объект GraphicsPath GraphicsPath myPath = new GraphicsPath(); public MainForm() { // Добавляем в объект GraphicsPath элементы, из которых он будет состоять myPath.StartFigure(); myPath.AddLine(new Point(150, 10), new Point(120, 150)); myPath.AddArc(200, 200, 100, 100, 0, 90); Point point1 = new Point(250, 250); Point point2 = new Point(350, 275); Point point3 = new Point(350, 325); Point point4 = new Point(250, 350); Point[] points = {point1, point2, point3, point4}; myPath.AddCurve(points); myPath.CloseFigure(); ... } }

№58 слайд
Проверка попадания в фигуру
Содержание слайда: Проверка попадания в фигуру private void Form1_MouseUp(object sender, System.Windows.Forms.MouseEventArgs e) { // Get (x, y) of mouse click. Point mousePt = new Point(e.X, e.Y); // See if the mouse is anywhere in the 3 regions... if (rectA.Contains(mousePt)) { isImageClicked = true; imageClicked = 0; this.Text = "You clicked image A"; } … else if (myPath.IsVisible(mousePt)) { isImageClicked = true; imageClicked = 3; this.Text = "You clicked the strange shape..."; } else // Not in any shape, set defaults. { isImageClicked = false; this.Text = "Images"; } // Redraw the client area. Invalidate(); }

№59 слайд
Выводим объект GraphicsPath
Содержание слайда: Выводим объект GraphicsPath private void MainForm_Paint(object sender, PaintEventArgs e) { Graphics g = e.Graphics; ... // Выводим объект GraphicsPath g.FillPath(Brushes.AliceBlue, myPath); // Обводим этот объект рамкой (по щелчку) if(isImageClicked = = true) { Pen outline = new Pen(Color.red, 5); switch(imageClicked) { ... case 3: g.DrawPath(outline, myPath); break; default: break; } } }

№60 слайд
Ресурсы .resx .resources
Содержание слайда: Ресурсы *.resx *.resources ResourceManager ResourceWriter ResourceReader

№61 слайд
Что еще? Элементы управления
Содержание слайда: Что еще? Элементы управления Ввод/вывод и сериализация объектов Взаимодействие с DLL, созданными на С и VB 6.0 Доступ к данным ADO.NET Разработка Web-приложений Web-службы

Скачать все slide презентации Графика. Важные пространства имен одним архивом: