Вращение фигуры

line(xd*x[5]+t,sd*y[5]+p,xd*x[6]+t,sd*y[6]+p);

line(xd*x[5]+t,sd*y[5]+p,xd*x[7]+t,sd*y[7]+p);

line(xd*x[7]+t,sd*y[7]+p,xd*x[8]+t,sd*y[8]+p);

line(xd*x[6]+t,sd*y[6]+p,xd*x[8]+t,sd*y[8]+p);

delay(40);

if (i<-29)

{

i++;

getch();

bios_time = biostime(0, 0L);

tm1=bios_time / CLK_TCK;

}

}

bios_time = biostime(0, 0L);

tm2=bios_time / CLK_TCK;

(data).timer=tm2-tm1;

if (ch!=27)

ch=getch();

}

void size_on_hdd()

{

long int hc;

hc = open("mov1990.exe", O_RDONLY);

(data).hdd = filelength(hc);

close(hc);

}

void about_mes()

{

int key=0;

while (key!=283)

{

setfillstyle(1,3);

bar(100,155,550,330);

setlinestyle(0,0,1);

THICK_WIDTH;

setcolor(11);

rectangle(99,154,551,331);

setcolor(0);

outtextxy(285,160,"Об авторе .");

NORM_WIDTH;

line(280,168,385,168);

outtextxy(150,180," Данная программа создана Нетупским ");

outtextxy(150,190," Олегом Игоревичем, студентом группы ");

outtextxy(150,200," ВВТ-207. В программе выпо-");

outtextxy(150,210," лняется вращение параллелепипеда по");

outtextxy(150,220," варианту задания номер 8.");

key=bioskey(0);

}

setfillstyle(1,1);

bar(99,154,551,331);

}

void prog_mes()

{

int key=0;

while (key!=283)

{

setfillstyle(1,3);

bar(100,155,550,330);

setlinestyle(0,0,1);

THICK_WIDTH;

setcolor(11);

rectangle(99,154,551,331);

setcolor(0);

outtextxy(285,160,"О программе .");

NORM_WIDTH;

line(280,168,385,168);

outtextxy(150,180," В программе выполняется вращение");

outtextxy(150,190," параллелепипеда по варианту задания номер 8.");

key=bioskey(0);

}

setfillstyle(1,1);

bar(99,154,551,331);

}

void help_mes()

{

int key=0;

while (key!=283)

{

setfillstyle(1,3);

bar(100,155,550,430);

setlinestyle(0,0,1);

THICK_WIDTH;

setcolor(11);

rectangle(99,154,551,431);

setcolor(0);

outtextxy(285,160,"Помощь");

NORM_WIDTH;

line(280,168,335,168);

outtextxy(150,180," 1. Клавиши управления");

outtextxy(150,190," Меню программы упраляется при помощи клавиш ");

outtextxy(150,200,"управления курсором (влево и вправо). Вход в ");

outtextxy(150,210,"выделенное меню осуществляется клавишей Enter.");

outtextxy(150,220," При вращении фигуры возможно досрочное за-");

outtextxy(150,230,"вершить этот процесс нажатием клавиши Esc");

outtextxy(150,250," 2. Меню прграммы");

outtextxy(150,260," В программе имеется 3 пункта меню. ");

outtextxy(150,270," Выбор выделенного пункта меню осуществля-");

outtextxy(150,280," ется нажатием клавиши <Enter>. Перемеще-");

outtextxy(150,290," по главному меню осуществляется клавишами-");

outtextxy(150,300," стрелками(влево,вправо), по пунктам подменю");

outtextxy(150,310," стрелками вверх и вниз. Возврат к предыдущему");

outtextxy(150,320," меню выполняется нажатием <Esc>. Информация ");

outtextxy(150,330," о выделенном пукте меню находитя в строке со-");

outtextxy(150,340," стояния.");

outtextxy(150,360," 3. Ввод данных ");

outtextxy(150,370,"После входа в меню Пуск, пользователю необходимо ");

outtextxy(150,380,"ввести длину ребер фигуры, ось вращения и часто-");

outtextxy(150,390,"мерцания. Диапазон допустимых значений для ребер");

outtextxy(150,400,"составляет [50 - 225], для оси [1-2], для частоты ");

outtextxy(150,410,"мерцания [1-10]. Если данные введены не верно, ");

outtextxy(150,420,"то потребуется ввести их снова. ");

key=bioskey(0);

}

setfillstyle(1,1);

bar(99,154,551,431);

}

void status_bar()

{

setcolor(10);

line(0,465,640,465);

line(0,479,640,479);

setfillstyle(1,5);

bar(0,466,640,478);

}

void submenu1()

{

setfillstyle(1,4);

bar(40,29,180,189);

setcolor(12);

rectangle(40,29,180,189);

setfillstyle(1,12);

bar(40,30,180,69);

setcolor(10);

outtextxy(60,44,"Пуск");

outtextxy(60,86,"Открыть");

outtextxy(60,126,"Сохранить");

outtextxy(60,168,"Очистить");

status_bar();

setcolor(11);

outtextxy(30,468,"Выполнить вращение фигуры");

int key1=0,keys1=1;

while (key1!=283)

{

key1=bioskey(0);

switch (key1)

{

//Esc

case 283:{

setfillstyle(1,1);

bar(40,29,180,189);

setcolor(9);

line(40,29,180,29);

line(40,30,180,30);

setcolor(15);

line(40,31,180,31);

setcolor(11);

status_bar();

outtextxy(30,468,"Для входа в меню Файл нажмите <Enter>");

break;

}

//стрелка вниз

case 20480:{

if (keys1==4) keys1=1;

else keys1++;

switch (keys1)

{

case 1:{

setcolor(10);

setfillstyle(1,4);

bar(41,149,179,188);

outtextxy(60,168,"Очистить");

setfillstyle(1,12);

bar(40,30,180,69);

outtextxy(60,44,"Пуск");

status_bar();

setcolor(11);

outtextxy(30,468,"Выполнить вращение фигуры");

break;

}

case 2:{

setcolor(10);

setfillstyle(1,4);

bar(41,30,179,69);

outtextxy(60,44,"Пуск");

setfillstyle(1,12);

bar(40,70,180,109);

outtextxy(60,86,"Открыть");

status_bar();

setcolor(11);

outtextxy(30,468,"Вывести на экран файл с результатами тестов");

break;

}

case 3:{

setcolor(10);

setfillstyle(1,4);

bar(41,70,179,109);

outtextxy(60,86,"Открыть");

setfillstyle(1,12);

bar(40,110,180,149);

outtextxy(60,126,"Сохранить");

status_bar();

setcolor(11);

outtextxy(30,468,"Сохранить результаты последнего теста в файл");

break;

}

case 4:{

setcolor(10);

setfillstyle(1,4);

bar(41,110,179,149);

outtextxy(60,126,"Сохранить");

setfillstyle(1,12);

bar(40,150,180,189);

outtextxy(60,168,"Очистить");

status_bar();

setcolor(11);

outtextxy(30,468,"Удалить всю информацию из файла тестов");

break;

}

}//switch

break;

}

//стрелка вверх

case 18432: {

if (keys1==1) keys1=4;

else keys1--;

switch (keys1)

{

case 1:{

setcolor(10);

setfillstyle(1,4);

bar(41,70,179,109);

outtextxy(60,86,"Открыть");

setfillstyle(1,12);

bar(40,30,180,69);


Страница: