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

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

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

> Анимацыя в паскале, Есть человечек, задача в том, что он должен двигать руками и ногами. П
potay
сообщение 21.11.2006 23:52
Сообщение #1





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

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


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.


Добавлено:
Покажите хотябы как сдвинуть одну линию!!!
М
Используй теги! Lapp

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Lapp
сообщение 22.11.2006 4:47
Сообщение #2


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Во-первых, ты лучше сначала рисуй, потом жди, а потом стирай. Это означает, что ты должен сначала использовать белый цвет, а потом черный. Проверь результат, прежде чем читать дальше..

Проверил? Теперь совет: вставь параметры в процедуру 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.


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
potay
сообщение 22.11.2006 7:59
Сообщение #3





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

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


Вышло у тя неплохо, но мне надо чтобы он ноги роздвигал и здвигал, тоже самое и с руками.
Вот чтото похожое!!


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.


М
Про теги еще раз напомнить? Что, тебе кнопка "Изменить" недоступна?
volvo

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lapp
сообщение 22.11.2006 15:23
Сообщение #4


Уникум
*******

Группа: Модераторы
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

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


Цитата(potay @ 22.11.2006 8:59) *

Вышло у тя неплохо, но мне надо чтобы он ноги роздвигал и здвигал, тоже самое и с руками.
Вот чтото похожое!!

Уважаемый, я не говорил, что решаю твою задачу. Тебе был продемонстрирован принцип, а также удобный способ его реализации. Если тебе надо двигать руки-ноги - рекомендую, сделай процедуру, для их рисования с параметром (скажем, угол наклона), а потом
рисуй-жди-стирай-двигай-рисуй-жди-стирай-двигай...

Ты что - думал, что я его двигал, чтоб повеселить тебя? Совсем ничего не уяснил?.. Важен принцип. И его ты проигнорировал, как следует из того, что ты сделал..

Добавляю чуть позже.
Приведу аналогию.
Допустим, ты мастер игрушек (обычных, не компьютерных). К тебе приходит кто-то и говорит:
- Я вот сделал человека, теперь его надо научить двигать руками-ногами. Помоги мне.
И показывает фигурку из цельного куска дерева..
Что скажет мастер? Эту фигурку надо выбросить и сделать все иначе. Отдельно сделать руки и ноги, при этом оставить место, где их наложить и скрепить осями.
Верно ведь?.. smile.gif


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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


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

 



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