Разработка программы, демонстрирующей выполнение функций рисования геометрических фигур (Лабораторная работа по № 1)

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

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

Министерство образования и науки Р.Ф.

Новосибирский государственный технический университет.

Кафедра ПМт.

Лабораторная работа по ООП №1

Факультет : ПМИ

Группа :

Преподаватель :

Студент :

2008г.

  1. Постановка задачи :

            По предложенному преподавателем варианту  разработать функции, рисующие на                                                                                                                экране следующие геометрические фигуры:

– незакрашенную фигуру,

– закрашенную фигуру,

– две вложенных одну в другую фигуры, внешняя фигура закрашена за     исключением пространства внутренней фигуры.

Разработать программу, демонстрирующую выполнение указанных функций, обеспечить ввод пользователем параметров трапеций (координат и др.), параметров рисуемых линий и закраски. Включить в программу проверки нахождения фигуры в пределах экрана и вложенности двух фигур. Результаты работы программы должны сопровождаться выводом поясняющего сообщения в графическом режиме.

  1. Алгоритм :

      Find_Error_Parallel ( MAS ) //функция проверки параллельности противолежащих

                                                     //сторон , где MAS – множество, состоящее из

                                                     //координат вершин трапеции

         

       tri_tochki (int a,int b,int c,int d,int e,int f) //функция , которая определяет принадлежат

                                                                          //ли 3 точки одной прямой , где a,b,c,d,e,f

                                                                         //координаты 3-х точек

 


             

      Vlojennost (MAS,MAS1 ) //функция,которая определяет вложенность 2-х

                                                 // трапеций , коордананы которых находятся во

                                                //множествах  MAS,MAS1

      Входные параметры : 1.тип : int *

                                            2.тип : int *

      Прототип : int Vlojennost (int *MAS,int *MAS1 ) ,  возвращается 1,если фигуры

                          Вложены иначе - 0

3.   Текст разработанной программы :

#include<stdlib.h>

#include <stdio.h>

#include <conio.h>

#include <graphics.h>

#include <math.h>

int MAS[8] ;

int MAS1[8] ;

int Co_R , St_E , Co_R1 , St_E1;  //zalivka

int Line_Light , Line_Tip , Line_Light1 , Line_Tip1 ; //linii

#include "L_Geomet.cpp"

#include "L_Graphi.cpp"

#include "L_Paint.cpp"

void main()

             {

                                                                int a = 0;

                                                               while(a!=18)

                                                                        {  clrscr();

printf("\nVYBERI :\n\

1.vvod geometricheskih parametrov is faila\n\

2.vvod geometricheskih parametrov s keyboard\n\

3.vvod graphicheskih parametrov : line s keyboard\n\

4.vvod graphicheskih parametrov : line is faila\n\

5.vvod graphicheskih parametrov : zalivka s keyboard\n\

6.vvod graphicheskih parametrov : zalivka is faila\n\

7.narisovat' vneshnuu trapeciu\n\

8.narisovat' vnutrennuu trapeciu\n\

9.narisovat' vneshnuu zakrashennuu trapeciu\n\

10.narisovat' vnutrennuu zakrashennuu trapeciu\n\

11.narisovat' trapeciu v trapecii\n\

12.vyvod geometricheskih parametrov na desplay\n\

13.vyvod geometricheskih parametrov v fail\n\

14.vyvod graphicheskih parametrov : line na Display\n\

15.vyvod graphicheskih parametrov : line v fail\n\

16.vyvod graphicheskih parametrov : zalivka na Display\n\

17.vyvod graphicheskih parametrov : zalivka v fail\n\

18.exit\n") ;

                                                                       scanf("%d",&a);

                                                                       switch (a)

                                                                           {

                                                                            case 1 : Enter_Geometry_Par_From_File( );break;

                                                                            case 2 : Enter_Geometry_Par_From_Kb;break;

                                                                            case 3 : Enter_Graphics_Par_LiNe_From_Kb( ) ;break;

                                                                            case 4 : Enter_Graphics_Par_LiNe_From_File(  );break;

                                                                            case 5 : Enter_Graphics_Par_DCOloR_From_Kb( );break;

                                                                            case 6 : Enter_Graphics_Par_DCOloR_From_File( );break;

                                                                            case 7 : {if(Find_Errors(MAS)&&Find_Errors_D(MAS)){paint_F_ (1);clrscr();}else {clrscr();printf("Error");getch();}}break;

                                                                            case 8 : {if(Find_Errors(MAS1)&&Find_Errors_D (MAS1)){paint_F_ (2);clrscr();}else {clrscr();printf("Error");getch();}}break;

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

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