Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 03.07.2008, 00:23
N1ka вне форума Посмотреть профиль Отправить личное сообщение для N1ka Найти все сообщения от N1ka
  № 12  
Ответить с цитированием
N1ka
 
Аватар для N1ka

Регистрация: Mar 2007
Адрес: Ужгород (UA)
Сообщений: 62
Цитата:
Сообщение от ramshteks Посмотреть сообщение
так проблемка та наверное в том, что ты и не создаешь их... вернее создаешь, но каждый раз перезаписываешь...

Код:
function Carousel(){
var menuItemArray:Array=new Array;
			for (var i=0; i<numOfItems; i++){
				menuItemArray[i] = new Item();
				menuItemArray[i].name = "item"+i
				addChild(menuItemArray[i]);
				menuItemArray[i].rotation = i * ((Math.PI*2)/numOfItems);
				menuItemArray[i].addEventListener(Event.ENTER_FRAME, mover);
			}
		}
вот такую карусель попробуй...)
Сделал так и вот результат:
Как я и говорил ранее "вместо десяти menuItem бегает всего лишь один, быстрее чем нужно и мало того, еще и боком, тоесть сам menuItem перекручен на несколько градусов".

Удивительно, результат тот же что и предыдущий несмотря на то что main.Carousel.as с измененным кодом я сохранил.

И еще одно наблюдение, menuItem когда бегает по кругу, он бегает не стабильно перекручена несколько градусов, а бегает по кругу и постепенно перекручивается что аж верхногами кружиться и т.д...

И еще наблюдение, что я пропустил, даже если создать один menuItem
Код:
var numOfItems:Number = 1;
он хоть и бегает по кругу с нормальной скоростью, но оказуется тоже переворачуется просто очень медленно, т.е. со временем становиться верхногами и т.д. От скорости беганья зависит скорость переворачивания, это написано у нас тут:
Код:
this.rotation += this.speed;
Смотря на эту строку можно задуматься зачем нам в карусели чтобы menuItem переворачивался? Это уже не карусель а центрифуга получается, а достижением такой цели мы не занимаемся.

Исходя из этого приходит мысль о том что старый
Код:
menuItem.angle
не равняется новому
Код:
menuItem.rotation
Значит вместо angle должно быть не rotation, а что-то другое. Что? Чем заменить в AS3 строку
Код:
menuItem.angle = i * ((Math.PI*2)/numOfItems);
или если это и в AS3 должно работать, то почему у меня не хочет. В чем ошибка?


Последний раз редактировалось N1ka; 03.07.2008 в 00:55.
Создать новую тему   Часовой пояс GMT +4, время: 05:09.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


Часовой пояс GMT +4, время: 05:09.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.