![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
potay |
![]()
Сообщение
#1
|
|||
Группа: Пользователи Сообщений: 6 Пол: Мужской Репутация: ![]() ![]() ![]() |
program Man;
uses Graph,crt,ZVUK;
var
driver,mode,x,y,i:integer;
procedure Chelovek;
begin
circle(315,100,20);
line(315,120,315,230);
line(315,230,215,330);
line(315,230,415,330);
line(315,120,215,220);
line(315,120,415,220);
end;
begin
driver:=detect;
mode:=detect;
initgraph(driver,mode,'C:\tp7');
for i:=1 to 10000 do
begin
setcolor(0);
Chelovek;
Delay(100);
setcolor(white);
Chelovek;
end;
readln;
end.
Добавлено: Покажите хотябы как сдвинуть одну линию!!!
|
|||
мисс_граффити |
![]()
Сообщение
#2
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
1. нарисовал линию каким-то цветом
2. нарисовал такую же линию (с теми же координатами) цвета фона 3. нарисовал цветную линию в новом месте. только все будет происходить очень быстро, ты не успеешь заметить. поэтому между описанными операциями вставь delay(n), где n - время задержки. -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
potay |
![]()
Сообщение
#3
|
Группа: Пользователи Сообщений: 6 Пол: Мужской Репутация: ![]() ![]() ![]() |
1. нарисовал линию каким-то цветом 2. нарисовал такую же линию (с теми же координатами) цвета фона 3. нарисовал цветную линию в новом месте. только все будет происходить очень быстро, ты не успеешь заметить. поэтому между описанными операциями вставь delay(n), где n - время задержки. Только рисовать надо не в процедуре??? |
potay |
![]()
Сообщение
#4
|
Группа: Пользователи Сообщений: 6 Пол: Мужской Репутация: ![]() ![]() ![]() |
|
Lapp |
![]()
Сообщение
#5
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Во-первых, ты лучше сначала рисуй, потом жди, а потом стирай. Это означает, что ты должен сначала использовать белый цвет, а потом черный. Проверь результат, прежде чем читать дальше..
Проверил? Теперь совет: вставь параметры в процедуру Man, чтоб можно было рисовать человека в любом месте экрана. Публикую внизу модифицированную мной программу - разберись, как она работает, и приходи за вопросами дальше.. program Man;
uses Graph,crt{,ZVUK};
var
driver,mode,x,y,i,XMan,YMan,dX,dY,b:integer;
procedure Chelovek(x,y:integer);
begin
circle(x,y,20);
line(x,y+20 ,x ,y+130);
line(x,y+130,x-100,y+230);
line(x,y+130,x+100,y+230);
line(x,y+20 ,x-100,y+120);
line(x,y+20 ,x+100,y+120);
end;
begin
driver:=detect;
mode:=detect;
initgraph(driver,mode,'C:\tp7');
XMan:=GetMaxX div 3;
YMan:=GetMaxy div 2;
dX:=1;
dY:=1;
b:=GetMaxX div 6;
for i:=1 to 10000 do begin
setcolor(White);
Chelovek(XMan,YMan);
Delay(10);
setcolor(Black);
Chelovek(XMan,YMan);
XMan:=XMan+dX;
if (XMan>=GetMaxX-b)or(XMan<=b) then dX:=-dX;
YMan:=YMan+dY;
if (YMan>=GetMaxY-b)or(YMan<=b) then dY:=-dY;
end;
readln;
end.
-------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
potay |
![]()
Сообщение
#6
|
|||
Группа: Пользователи Сообщений: 6 Пол: Мужской Репутация: ![]() ![]() ![]() |
Вышло у тя неплохо, но мне надо чтобы он ноги роздвигал и здвигал, тоже самое и с руками.
Вот чтото похожое!! program Man;
uses Graph,crt,ZVUK;
var
driver,mode,x,y,i:integer;
procedure Chelovek;
begin
circle(315,100,20);
line(315,120,315,230);
line(315,230,215,330);
line(315,230,415,330);
line(315,120,215,220);
line(315,120,415,220);
line(315,120,215,90);
line(315,120,415,90);
line(315,230,215,290);
line(315,230,415,290);
setcolor(0);
line(315,230,215,330);
line(315,230,415,330);
line(315,120,215,220);
line(315,120,415,220);
line(315,120,215,90);
line(315,120,415,90);
line(315,230,215,290);
line(315,230,415,290);
end;
begin
initgraph(driver,mode,'C:\tp7');
for i:=1 to 200 do
begin
setcolor(3);
Chelovek;
Delay(3000);
setcolor(0);
Chelovek;
end;
readln;
end.
|
|||
Lapp |
![]()
Сообщение
#7
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Вышло у тя неплохо, но мне надо чтобы он ноги роздвигал и здвигал, тоже самое и с руками. Вот чтото похожое!! Уважаемый, я не говорил, что решаю твою задачу. Тебе был продемонстрирован принцип, а также удобный способ его реализации. Если тебе надо двигать руки-ноги - рекомендую, сделай процедуру, для их рисования с параметром (скажем, угол наклона), а потом рисуй-жди-стирай-двигай-рисуй-жди-стирай-двигай... Ты что - думал, что я его двигал, чтоб повеселить тебя? Совсем ничего не уяснил?.. Важен принцип. И его ты проигнорировал, как следует из того, что ты сделал.. Добавляю чуть позже. Приведу аналогию. Допустим, ты мастер игрушек (обычных, не компьютерных). К тебе приходит кто-то и говорит: - Я вот сделал человека, теперь его надо научить двигать руками-ногами. Помоги мне. И показывает фигурку из цельного куска дерева.. Что скажет мастер? Эту фигурку надо выбросить и сделать все иначе. Отдельно сделать руки и ноги, при этом оставить место, где их наложить и скрепить осями. Верно ведь?.. ![]() -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
potay |
![]()
Сообщение
#8
|
Группа: Пользователи Сообщений: 6 Пол: Мужской Репутация: ![]() ![]() ![]() |
Понял, буду исправлятса!
![]() |
![]() ![]() |
![]() |
Текстовая версия | 20.07.2025 5:17 |