Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Побудова графіків функцій засобами мови С#

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних технологій, автоматики та метрології
Факультет:
Не вказано
Кафедра:
Кафедра захисту інформації

Інформація про роботу

Рік:
2011
Тип роботи:
Лабораторна робота
Предмет:
Програмування комп’ютерної графіки
Група:
УІ-32

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» ІКТА кафедра ЗІ З В І Т до лабораторної роботи №3 з курсу «Програмування комп’ютерної графіки» на тему: «Побудова графіків функцій засобами мови С#» Виконав:ст. гр. ЗІ-31 Прийняв: Львів – 2011 Мета роботи. Набути практичних навиків в складанні програм для побудови графіків функцій за допомогою засобів мови С#. ЗАВДАННЯ Ознайомитися з методами побудови графіків функцій на екрані монітора комп’ютера. Вивчити основні процедури мови С# для виведення тексту в графічному режимі. Написати програму, яка будує в середині екрану систему координат XY і на ній графік функції Y=F(X), використовуючи графічні оператори мови С#, якщо аргумент або параметр змінюється на проміжку [a;b] з кроком h. N% Функція Інтервал Крок  3  x=[0;180] h=0.5   Текст програми 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; using Tao.OpenGl; using Tao.FreeGlut; using Tao.Platform.Windows; namespace WindowsFormsApplication1 { public partial class Form1 : Form { double ScreenW, ScreenH; private float devX; private float devY; private float[,] GrapValuesArray; private int elements_count = 0; private bool not_calculate = true; private int pointPosition = 0; float lineX, lineY; float Mcoord_X = 0, Mcoord_Y = 0; public Form1() { InitializeComponent(); AnT.InitializeContexts(); } private void Form1_Load(object sender, EventArgs e) { Glut.glutInit(); Glut.glutInitDisplayMode(Glut.GLUT_RGB | Glut.GLUT_DOUBLE); Gl.glClearColor(255, 255, 255, 1); Gl.glViewport(0, 0, AnT.Width, AnT.Height); Gl.glMatrixMode(Gl.GL_PROJECTION); Gl.glLoadIdentity(); if ((float)AnT.Width <= (float)AnT.Height) { ScreenW = 30.0; ScreenH = 30.0 * (float)AnT.Height / (float)AnT.Width; Glu.gluOrtho2D(0.0, ScreenW, 0.0, ScreenH); } else { ScreenW = 30.0 * (float)AnT.Width / (float)AnT.Height; ScreenH = 30.0; Glu.gluOrtho2D(10.0, 80.0 * (float)AnT.Width / (float)AnT.Height, -25.0, 55.0); } devX = (float)ScreenW / (float)AnT.Width; devY = (float)ScreenH / (float)AnT.Height; Gl.glMatrixMode(Gl.GL_MODELVIEW); PointInGrap.Start(); } private void PointInGrap_Tick(object sender, EventArgs e) { if (pointPosition == elements_count - 1) pointPosition = 0; // переходимкначальномуэлементу Draw(); pointPosition++; } private void AnT_MouseMove(object sender, MouseEventArgs e) { Mcoord_X = e.X; Mcoord_Y = e.Y; lineX = devX * e.X; lineY = (float)(ScreenH - devY * e.Y); } private void PrintText2D(float x, float y, string text) { Gl.glRasterPos2f(x, y); foreach (char char_for_draw in text) { GLUT_BITMAP_9_BY_15. Glut.glutBitmapCharacter(Glut.GLUT_BITMAP_9_BY_15, char_for_draw); } } private void functionCalculation() { float x = 0, y = 0; GrapValuesArray = new float[400, 2]; elements_count = 0; for (x = 0; x < 180; x += 0.5f) { y = 20 * ((float)Math.Sin(x / 5) + (float)Math.Cos(2 * x)); GrapValuesArray[elements_count, 0] = x; GrapValuesArray[elements_count, 1] = y; elements_count++; } not_calculate = false; } private void DrawDiagram() { if (not_calculate) { functionCalculation(); } ...
Антиботан аватар за замовчуванням

01.01.1970 03:01

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини