Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.10.2012, 17:32   #1
Gulnaz379
 
Регистрация: 26.10.2012
Сообщений: 5
По умолчанию Тема:Модуль граф,-нужно чтобы получилась фигура и чтобы она двигалась

TUrbo Pascal/Тема:Модуль граф,задачка-нужно чтобы была фигураФото0377.jpg и чтобы она двигалась при нажатии клавиш-стрелок.. прога простая чтобы типа вот этого была,все так ,но координаты не получается определить помогите плиз..
uses Graph,CRT;
var
Driver, Mode:Integer;
x,y,a,b:integer;
Xs,Ys:string;
k:char;
begin
Driver:=Detect;
InitGraph(Driver,Mode,' ');
if GraphResult <> grok then Halt(1);
x:=100;
y:=100;
a:=20;
repeat
SetColor(10);
Circle (x+120,y+140,a+20);
Circle (x+230,y+40,a+20);
Circle (x+340,y+140,a+20);
Line(x+190,y+40,x+120,y+100);
Line(x+270,y+40,x+340,y+100);
Line(x+230,y+80,x+160,y+140);
Line(x+230,y+80,x+300,y+140);
Line(x+160,y+140,x+230,y+200);
Line(x+230,y+200,x+300,y+140);
SetColor(0);
Str(x,Xs);
Str(y,Ys);
SetColor(5);
OutTextXY(300,150,'x='+Xs+' : y='+Ys);
k:=ReadKey;
SetColor(0);
Circle (x+120,y+140,a+20);
Circle (x+230,y+40,a+20);
Circle (x+340,y+140,a+20);
Line(x+190,y+40,x+120,y+100);
Line(x+270,y+40,x+340,y+100);
Line(x+230,y+80,x+160,y+140);
Line(x+230,y+80,x+300,y+140);
Line(x+160,y+140,x+230,y+200);
Line(x+230,y+200,x+300,y+140);

Str(x,Xs);
Str(y,Ys);
Setcolor(0);
OutTextXY(300,150,'x='+Xs+' : y='+Ys);
if k=#77 then x:=x+10;
if k=#75 then x:=x-10;
if k=#72 then y:=y-10;
if k=#80 then y:=y+10;
if k=#13 then a:=a+10;
if k=#8 then a:=a-10;
if k=#49 then b:=4;
if k=#50 then b:=2;
if k=#51 then b:=3;
if k=#52 then b:=5;
if k=#53 then b:=6;
if k=#54 then b:=7;
if k=#55 then b:=8;
if k=#56 then b:=9;
if k=#57 then b:=10;
if k=#58 then b:=1;
until k=#27;
CloseGraph;
end.

Последний раз редактировалось Gulnaz379; 26.10.2012 в 18:01.
Gulnaz379 вне форума Ответить с цитированием
Старый 26.10.2012, 18:59   #2
rubius2008
Форумчанин
 
Регистрация: 19.03.2010
Сообщений: 409
По умолчанию

Оформите в виде отдельной процедуры рисование этой фигуры относительно заданного центра фигуры. Потом при нажатии клавиши вызываете эту процедуру передавая +/- смещение по соответствующей координате
Есть вопросы, пишите в ЛС.
rubius2008 вне форума Ответить с цитированием
Старый 26.10.2012, 23:12   #3
hon
Форумчанин
 
Регистрация: 08.06.2011
Сообщений: 693
По умолчанию

1. Устанавливаем текущую координату на 0,0 (это левый верхний угол).
2. Очищаем изображение (например так
Код:
CloseGraph; InitGraph(Driver,Mode,' ');
).
3. Относительно этой координаты рисуем изображение.
4. Ждем нажатия клавиши.
5. В зависимости от нажатой клавиши смещаем текущую координату.
6. Идем к пункту 2.
hon вне форума Ответить с цитированием
Старый 27.10.2012, 16:36   #4
Gulnaz379
 
Регистрация: 26.10.2012
Сообщений: 5
По умолчанию

А можно по подробней, я не могу координаты линий и внутреннего квадрата только определить и центр в том числе.вот только квадрат получается сделать:Rectangle(100,100,200,200) а дальше никак..пожалууйста,помогите
Gulnaz379 вне форума Ответить с цитированием
Старый 27.10.2012, 16:37   #5
Gulnaz379
 
Регистрация: 26.10.2012
Сообщений: 5
По умолчанию

а еще кругов этих.
Gulnaz379 вне форума Ответить с цитированием
Старый 27.10.2012, 16:56   #6
JIeIIIa
Пользователь
 
Регистрация: 21.12.2011
Сообщений: 54
По умолчанию

stealth(собака)bigmir.net
JIeIIIa вне форума Ответить с цитированием
Старый 27.10.2012, 17:38   #7
Gulnaz379
 
Регистрация: 26.10.2012
Сообщений: 5
По умолчанию

а можете здесь помочь, я не могу найти этот адрес..
Gulnaz379 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
что-то вроде змейки - программа в PascalABC, чтобы змейка из 3-4 звеньев двигалась в точку, указанную мышкой somebody unknown Помощь студентам 5 17.07.2012 15:55
что и где нужно прописать чтобы при добавление одежды через форму на Delphi она отображалась в таблице склад студенточка! Помощь студентам 0 14.12.2011 16:35
Как добавить нули перед числом, чтобы длина числа получилась 8? artemavd Общие вопросы Delphi 2 07.07.2011 19:30
Какой нужно установить драйвер на висту, чтобы bc_31 работал в граф.режиме? mfpit Общие вопросы C/C++ 1 17.05.2009 13:15
Нужна помощь! Нужно переделать программу написанную на дельфи, чтобы она работала под управлением Vista Karloss Фриланс 5 10.11.2008 17:14