Создание графических объектов (Лабораторная работа № 2)

Страницы работы

Содержание работы

Лабораторная Работа № 2

ТЕМА :  Рисование графика

СРОК  СДАЧИ :  6 неделя.

ЦЕЛЬ РАБОТЫ : Приобретение навыков работы создания графических объектов

ТЕОРЕТИЧЕСКИЕ ЗНАНИЯ :  .

задание

Составьте программу, которая решает поставленную в вашем варианте задачу. Программа должна:

Ø  представлять собой диалоговое приложение

Ø  содержать русско-язычный интерфейс

Ø  содержать ввод исходных данных с клавиатуры или исходные данные должны быть заданны в качестве начальных значений переменных

Ø  отображать сведения о назначении и возможностях программы

Ø  отображать сведения об авторе программы

Ø  выводить результаты расчётов на экран

Ø  содержать запрос о продолжении работы

Ø  содержать в коде необходимые пояснения

Ø   

Функция

Общий вид

1.

y=ctg(x)

Y=A*ctg(Bx+C)+D

2.

y=lg(x)

Y=A*Lg(Bx+C)+D

3.

y=x2

y=A(Bx+C)2+D

4.

y=x3

y=A(Bx+C)3+D

5.

y=2x

y=A2(Bx+C) +D

6.

y=x

y=Ax+B

7.

y=tg(x)

Y=A*tg(Bx+C)+D

8.

y=cos(x)

Y=A*cos(Bx+C)+D

9.

y=ln(x)

Y=A*Ln(Bx+C)+D

10.

y=

y=

11.

y=x2

Y=Ax2+Bx+C

12.

y=x3

Y= Ax3+Bx2+Cx+D

13.

Y=arcsin(x)

Y=Aarcsin(x)+B

14.

y=1/x

Y=A/(Bx+C)+D

15.

y=1/x2

Y=A/(Bx+C)2+D

16.

y=1/x3

Y=A/(Bx+C)3+D

17.

Y=Loga(x)

Y=A* Loga(Bx+C)+D

18.

Y=Sin(x)

Y=A*sin(Bx+C)+D

19.

Y=arccos(x)

Y=Aarcos(x)+B

20.

Y=arctg(x)

Y=Aarctg(Bx+C)+D

21.

x2+y2=R2

(Ax+B)2+(Cy+D)2=R2

В среде Visual C++ составьте программу, которая отображает график функции y = A ( B x + C )3 + D. Программа должна:

Ø  представлять собой диалоговое приложение

Ø  содержать русскоязычный интерфейс

Ø  содержать меню с командами, которые отображают диалоговые окна для ввода значений параметров функции и графика

Ø  позволять пользователю изменять значения констант A, B, C и D в отдельном диалоговом окне

Ø  позволять пользователю изменять цвет графика, осей и сетки в отдельном диалоговом окне

Ø  позволять пользователю изменять шаг и диапазон сетки в отдельном диалоговом окне

Ø  сохранять установленные пользователем значения параметров во внешнем файле

Ø  считывать установленные пользователем значения параметров из внешнего файла и использовать их при построении графика

Ø  размер диалогового окна должен быть не меньше определённого размера

Этапы  разработки  проекта

Создание диалогового приложения

Ø  В среде Visual C++ в меню File выбираем команду New

Ø  В диалоговом окне New выбираем вид проекта –MFC AppWizzard, расположение проекта в личной папке, даем имя проекту – Graph, и нажимаем ОК

Ø  В диалоговом окне MFC AppWizzardStep 1 выбираем вид приложения Dialog based и нажимаем кнопу Finish.

Создание меню

Ø  В меню выбираем команду Insert \ Resource

Ø  В диалоговом окне Insert Resource выбираем Menu и нажимаем кнопку New

Ø  В окне Workspace на вкладке ResourceView выбираем пункт IDR_MENU и в его контекстном меню выбираем Properties и устанавливаем язык Russian

Ø  Двойным щелчком по названию пункта меню открываем окно свойств и устанавливаем идентификаторы и подписи:

IDM_COLOR_LINE - Цвет линии

IDM_COLOR_GRID - Цвет сетки

IDM_CONST - Константы

Ø  Для того чтобы отобразить меню в форме IDD_GRAPH_DIALOG, открываем его окно свойств и в поле Menu выбираем IDR_MENU

Поскольку, мы не предполагаем использовать меню IDR_MENU в других диалоговых окнах кроме IDD_GRAPH_DIALOG, то мы включим методы нашего меню в класс CGraphDlg

Добавляем в класс CGraphDlg функции обработки щелка по пункту меню, для этого:

Ø  в контекстном меню диалогового окна IDD_GRAPH_DIALOG выбираем ClassWizard,

Ø  в поле Object IDs выбираем идентификатор объекта, например IDM_COLOR_LINE

Ø  в поле Massages выбираем COMMAND и нажимаем кнопку Add Funcion

Создание функций изменения цвета:

Мы должны открыть диалоговое окно выбора цвета запомнить цвет, выбранный пользователем и применить его к графическим объектам. Поскольку инициализация цвета и его использования предполагается осуществлять с помощью функций одного класса CGraphDlg, то целесообразно объявить новые свойства класса в файле GraphDlg.h:

         COLORREF ColorLine, ColorGrid;

В конструкторе класса осуществим инициализацию этих переменных:

CGraphDlg::CGraphDlg(CWnd* pParent): CDialog(CGraphDlg::IDD, pParent)

{

Похожие материалы

Информация о работе