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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 31.05.2010, 01:47
tsarapkabel вне форума Посмотреть профиль Отправить личное сообщение для tsarapkabel Найти все сообщения от tsarapkabel
  № 1  
Ответить с цитированием
tsarapkabel
 
Аватар для tsarapkabel

Регистрация: Nov 2009
Адрес: в златоглавой
Сообщений: 745
По умолчанию Класс, созданный автоматически и вручную работают по-разному!

Этот пример взят с сайта к книге http://www.learningactionscript3.com/

В примере рассматриваются 2 способа создания класса "Box".

Есть box
Код AS3:
package {
 
	import flash.display.MovieClip;
	import flash.display.Graphics;
	import flash.events.Event;
 
	public class Box extends MovieClip {
 
		public var color:uint = 0x000099;
 
		public function Box() {
            this.graphics.lineStyle(1, 0x000000);
			this.graphics.beginFill(color);
            this.graphics.drawRect(0, 0, 100, 100);
            this.graphics.endFill();
 
			this.addEventListener(Event.ENTER_FRAME, onLoop, false, 0, true);
		}
 
		private function onLoop(evt:Event):void {
			this.x += 5;
			trace(this, this.x);
		}
 
	}
}
есть square
Код AS3:
package {
 
	import flash.display.MovieClip;
	import flash.events.Event;
 
	public class Square extends MovieClip {
 
		public function Square() {
           this.addEventListener(Event.ENTER_FRAME, onLoop, false, 0, true);
		}
 
		private function onLoop(evt:Event):void {
			this.x += 5;
			trace(this, this.x);
		}
 
	}
}
И есть 2 способа создания экземпляра класса.

1 способ (ручной) - на таймлайне пишется
Код AS3:
import Box;
 
var box:Box = new Box();
addChild(box);
2 способ (автоматический) - когда в поле "Класс документа" пишут "Box".

Почему во время тестирования во втором варианте скорость передвижения square в 2 раза быстрее, чем в первом, несмотря на то, что square один и тот же и по трэйсу значения икса пишет одинаковые???
Вложения
Тип файла: swf Способ1.swf (740 байт, 54 просмотров)
Тип файла: swf Способ2.swf (592 байт, 55 просмотров)

Старый 31.05.2010, 02:16
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 2  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Класс документа это и есть таймлайн, это не автоматическое создание. Просто если вы не указываете никакой класс документа, то будет просто MovieClip использоваться.
__________________
Hell is the possibility of sanity

Старый 31.05.2010, 02:44
tsarapkabel вне форума Посмотреть профиль Отправить личное сообщение для tsarapkabel Найти все сообщения от tsarapkabel
  № 3  
Ответить с цитированием
tsarapkabel
 
Аватар для tsarapkabel

Регистрация: Nov 2009
Адрес: в златоглавой
Сообщений: 745
Хммм... Ну ладно. А скорости-то почему разные?

Старый 31.05.2010, 02:55
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 4  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Понятия не имею, может фпс разный, может резолюция разная, может вы в каком-то из вариантов два раза за кадр двигаете вместо одного, а может вам кажется Еще Исаак Ньютон говорил, что скорость понятие относительное
__________________
Hell is the possibility of sanity

Старый 31.05.2010, 12:00
tsarapkabel вне форума Посмотреть профиль Отправить личное сообщение для tsarapkabel Найти все сообщения от tsarapkabel
  № 5  
Ответить с цитированием
tsarapkabel
 
Аватар для tsarapkabel

Регистрация: Nov 2009
Адрес: в златоглавой
Сообщений: 745
В том-то и дело, что всё одинаково. И если бы 2 раза за кадр двигал, то и трэйсил бы в 2 раза больше. Просто понять не могу, как так на ровном месте выдаёт не пойми что.
Вложения
Тип файла: rar box_square.rar (10.7 Кб, 47 просмотров)

Старый 31.05.2010, 12:21
-De- вне форума Посмотреть профиль Отправить личное сообщение для -De- Найти все сообщения от -De-
  № 6  
Ответить с цитированием
-De-
 
Аватар для -De-

блогер
Регистрация: Oct 2005
Адрес: Днепродзержинск - город Брежнева и других логопедов
Сообщений: 1,421
Записей в блоге: 4
Отправить сообщение для -De- с помощью ICQ Отправить сообщение для -De- с помощью Skype™
Ох... во втором случае у тебя Square лежит ВНУТРИ Box. Сответственно его (Square) координаты это его координаты плюс координаты бокса.
Я думаю, тут поле "Класс документа" следует понимать как поле класс в свойствах символа в библиотеке.

Создать новую тему Ответ Часовой пояс GMT +4, время: 14:17.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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