Компьютерный форум NoWa.cc Здесь может быть Ваша реклама
Правила Форума
редакция от 22.06.2020
Форум .::NoWa.cc::.
Вернуться   Компьютерный форум NoWa.cc > В помощь вебмастеру > Веб - Программирование > Java Script

Уважаемые пользователи nowa.cc. Мы работаем для вас более 20 лет и сейчас вынуждены просить о финансовой помощи по оплате за сервер.
Окажите посильную поддержку, мы очень надеемся на вас. Реквизиты для переводов ниже.
Webmoney Webmoney WMZ: Z021474945171 Webmoney WME: E159284508897 Webmoney WMUSDT: T206853643180
Кошелёк для вашей помощи YooMoney 4100117770549562
YooMoney Спасибо за поддержку!

Ответ
 
Опции темы Опции просмотра Language
Старый 15.09.2010, 19:51   #1
Новичок
 
Пол:Женский
Регистрация: 15.09.2010
Сообщений: 1
Репутация: 0
Question анимация на canvas

PHP код:
function Elevator(x,y,sx,sy,color,context) {
    
this.x;
    
this.y;
    
this.sx sx;
    
this.sy sy;
    
this.color color;
    
this.context context;
};
Elevator.prototype.show = function() {
    
this.context.clearRect(0,0,500,500);
    
this.context.fillStyle this.color;
    
this.context.fillRect(this.x,this.y,this.sx,this.sy);
    return 
0;
};
Elevator.prototype.animation_up = function() {
    if (
this.100 >= 0) {
        for (var 
0100i++) {
            
this.this.1;
            
//-------------------
            
this.show();
        };
        return 
0;
    };
    
this.show();
    return 
0;
}; 
в js я новичёк
нужно сделать анимацию на canvas
код рабочий, просто не анимирует перемещение
как я прочитал, никаких аналогов sleep() в js нет, выходит нужно применить как-то settimeout/setinterval, но я никак не могу придумать как
мб кто-нить подскажет, или предложит как реализовать анимацию по-другому.
заранее спасибо
hatalsky вне форума
 
Ответить с цитированием Вверх
Здесь может быть Ваша реклама
Здесь может быть Ваша реклама


Реклама: on клиникстолы круглые в арендудеревянный ригель для браслетовКлапан КПС-1м(90)-НО-ЭМ(220)-900х550браслет из белого и желтого золота женский


Старый 15.07.2011, 14:46   #2
dust999
Неактивный пользователь
 
Пол:Мужской
Регистрация: 15.07.2011
Сообщений: 10
Репутация: 2
По умолчанию Re: анимация на canvas

Ты должен просто вызывать функцию отрисовки обекта через какой то интервал времени(это и есть анимация).
А параметры отображения объекта хранишь в внешней глобальной переменной height=0 там же хранишь если требуется глобальную переменную старта и конца anim=false, иначе у тебя будет бесконечная анимация

Алогритм следующий:

1. Проверяешь начата if (anim==true){
Если да то сет интервалом вызываешь функцию отрисовки туда передаёшь координаты лифта своего.

2. в конце функции увеличиваешь перемещение на 1 height+=1; или несколько пикселей (дробные лучше не использовать) и проверяешь не ушёл ли лифт за границы видимости или не достиг ли он нужной высоты

если он ещё движется то ничего не делаешь эта функция будет вызывать сама себя пока лифт не доедет.
если он в нужной точки ставишь глобальной переменной anim=false;

и он просто не будет бльше вызывать эту функцию с отрисовкой и лифт замрёт где надо.
dust999 вне форума
 
Ответить с цитированием Вверх
Ответ


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
3D Canvas-программа для трехмерного моделирования Eugenius_V Графика 3 14.11.2013 10:52
Анимация Мастер 15.0D Postality 3D графика 2 13.11.2008 03:00
Анимация fxMS Аниме-Анимешки/Flash 20 12.10.2008 07:41

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 12:50. Часовой пояс GMT +3.


Copyright ©2004 - 2025 NoWa.cc

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2026, vBulletin Solutions, Inc. Перевод: zCarot
Время генерации страницы 0.03820 секунды с 11 запросами