close

Вход

Забыли?

вход по аккаунту

?

лаба3

код для вставкиСкачать
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
"Саратовский государственный технический университет имени Гагарина Ю.А."
Лабораторная работа №3
по курсу "Компьютерная графика"
для студентов направления
"Информатика и вычислительная техника"
Выполнил:
студент б2ивчт31
Доронин С.В.
Проверил: Балаев А.Ф
Саратов 2013
Цель работы: Изучение алгоритмов растеризации графических примитивов.
Задание. Разработать программу, выводящую графические примитивы.
Описание программы : выводит на экран графические примитивы.
Текст программы:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication8
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Bitmap bmp = new Bitmap(200, 200);
Graphics g = Graphics.FromImage(bmp);
g.Clear(Color.White);
int c = 15;
int w = pictureBox1.Width / (c + 1);
// сектор
//g.FillPie(Brushes.Blue, new Rectangle(2 * w, 2 * w, 12 * w, 12 * w), 0, -90);
Point[] points = new Point[] {
new Point(8 * w, 8 * w),
new Point(14 * w, 8 * w),
new Point(8 * w, 14 * w)
};
// тругольник
g.FillPolygon(Brushes.Blue, points);
// сетка
for (int i = 0; i < c; i++)
g.DrawLine(Pens.Black, w * (i + 1), 0, w * (i + 1), pictureBox1.Height);
for (int i = 0; i < c; i++)
g.DrawLine(Pens.Black, 0, w * (i + 1), pictureBox1.Width, w * (i + 1));
pictureBox1.Image = bmp;
}
private void pictureBox2_Click(object sender, EventArgs e)
{
}
private void pictureBox2_Paint(object sender, PaintEventArgs e)
{
}
private void pictureBox1_Click(object sender, EventArgs e)
{
}
private void button2_Click(object sender, EventArgs e)
{
Bitmap bmp = new Bitmap(200, 200);
Graphics g = Graphics.FromImage(bmp);
g.Clear(Color.White);
int c = 15;
int w = pictureBox1.Width / (c + 1);
// сектор
// g.FillPie(Brushes.Blue, new Rectangle(2 * w, 2 * w, 12 * w, 12 * w), 0, -90);
Point[] points = new Point[] {
new Point(8 * w, 8 * w),
new Point(14 * w, 8 * w),
new Point(14 * w, 14 * w),
new Point(8 * w, 14 * w)
};
// квадрат
g.FillPolygon(Brushes.Blue, points);
// сетка
for (int i = 0; i < c; i++)
g.DrawLine(Pens.Black, w * (i + 1), 0, w * (i + 1), pictureBox1.Height);
for (int i = 0; i < c; i++)
g.DrawLine(Pens.Black, 0, w * (i + 1), pictureBox1.Width, w * (i + 1));
pictureBox1.Image = bmp;
}
private void button3_Click(object sender, EventArgs e)
{
Bitmap bmp = new Bitmap(200, 200);
Graphics g = Graphics.FromImage(bmp);
g.Clear(Color.White);
int c = 15;
int w = pictureBox1.Width / (c + 1);
// сектор
// g.FillPie(Brushes.Blue, new Rectangle(2 * w, 2 * w, 12 * w, 12 * w), 0, -90);
Point[] points = new Point[] {
new Point(4 * w, 4 * w),
new Point(12* w, 4 * w),
new Point(12 * w, 8 * w),
new Point(4 * w, 8 * w)
};
// прямоугольник
g.FillPolygon(Brushes.Blue, points);
// сетка
for (int i = 0; i < c; i++)
g.DrawLine(Pens.Black, w * (i + 1), 0, w * (i + 1), pictureBox1.Height);
for (int i = 0; i < c; i++)
g.DrawLine(Pens.Black, 0, w * (i + 1), pictureBox1.Width, w * (i + 1));
pictureBox1.Image = bmp;
}
private void button4_Click(object sender, EventArgs e)
{
Bitmap bmp = new Bitmap(200, 200);
Graphics g = Graphics.FromImage(bmp);
g.Clear(Color.White);
int c = 15;
int w = pictureBox1.Width / (c + 1);
// сектор
g.FillPie(Brushes.Blue, new Rectangle(2 * w, 2 * w, 12 * w, 12 * w), -90, -90);
g.FillPie(Brushes.Blue, new Rectangle(2 * w, 2 * w, 12 * w, 12 * w), 0,-90);
g.FillPie(Brushes.Blue, new Rectangle(2 * w, 2 * w, 12 * w, 12 * w), 0, 90);
g.FillPie(Brushes.Blue, new Rectangle(2 * w, 2 * w, 12 * w, 12 * w), 90, 90);
for (int i = 0; i < c; i++)
g.DrawLine(Pens.Black, w * (i + 1), 0, w * (i + 1), pictureBox1.Height);
for (int i = 0; i < c; i++)
g.DrawLine(Pens.Black, 0, w * (i + 1), pictureBox1.Width, w * (i + 1));
pictureBox1.Image = bmp;
}
}
}
Контрольные примеры:
Вывод: Изучил алгоритмы растеризации графических примитивов.
Документ
Категория
Рефераты
Просмотров
3
Размер файла
103 Кб
Теги
лаба
1/--страниц
Пожаловаться на содержимое документа