IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Помогите с графикой
Buka
сообщение 1.06.2009 18:15
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 15
Пол: Женский

Репутация: -  0  +


Надо представить в виде мультфильма картину медленного захода солнца за линию горизонта с изменением освещения пейзажа.
есть текст как солнце заходит:
program fgh;
uses crt,graph;
var GrDr,GrMd,i,g,j:integer; f:word;
const
cga=1;
begin
grdr:=detect;
initgraph(grdr,grmd,'c:\pascal\bgi');
setcolor(2);
line(0,400,getmaxX ,400);
g:=getbkcolor;
i:=50;j:=50;
while i<700 do
begin
setcolor(yellow);
setfillstyle(1,yellow);
fillellipse(i,j,40,40);
delay(2000);
setcolor(g);
setfillstyle(1,g);
fillellipse(i,j,40,40);
i:=i+random(3);
j:=j+random(2);
end;

closegraph;
end.
readln;


а вот с фоном проблемы((

Тегами пользуйся в следующий раз (выделяешь код, и выбираешь в листбоксе CODE нужный язык программирования)

Сообщение отредактировано: volvo - 1.06.2009 18:30
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
volvo
сообщение 1.06.2009 20:17
Сообщение #2


Гость






Ну, тогда что-то в этом роде:
uses crt, graph;

var
gd, gm: integer;
x, y: integer;

begin
initgraph(gd, gm, '');
if graphresult <> grok then begin
writeln('graphics error'); readln; halt(100);
end;

setcolor(green);
line(0, getmaxy div 2 + 1, getmaxx, getmaxy div 2 + 1);
setviewport(0, 0, getmaxx, getmaxy div 2, true);
y := 0;
while y < getmaxy div 2 do
begin
case y div (getmaxy div 6) of
0: setbkcolor(lightblue);
1: setbkcolor(blue);
2: setbkcolor(black);
end;
clearviewport;

setcolor(yellow);
setfillstyle(solidfill, yellow);
fillellipse(x, y, 40, 40);
delay(30);
y:=y+random(3);
x:=x+random(2);
end;
readln;
end.
В FPC отработало, для Турбо-Паскаля могут быть 2 проблемы: 1) слишком маленькая задержка в Delay, поменяй на то, что больше подходит. 2) смена цвета фона будет распространяться на весь экран, а не только на Вьюпорт... Попробуй, если что не так - говори, будем думать, как исправлять, вместе smile.gif
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 12.08.2025 6:34
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"