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

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

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

Регистрация: Aug 2006
Сообщений: 102
По умолчанию часы: альтернатива onEnterFrame

в скрипт встроены часы типа getDate. поскольку часы это только часть кода, то просчет времени onEnterFrame очень отягощает. какие могут быть альтернативы? точно ли будет отмерять время setInterval поставленный, скажем, на пол-секунды?

Старый 15.01.2009, 13:22
Zik. вне форума Посмотреть профиль Отправить личное сообщение для Zik. Найти все сообщения от Zik.
  № 2  
Ответить с цитированием
Zik.
 
Аватар для Zik.

Регистрация: Nov 2007
Сообщений: 1,724
вообще не понятно чего вы хотите

Старый 15.01.2009, 13:53
Волгоградец вне форума Посмотреть профиль Отправить личное сообщение для Волгоградец Найти все сообщения от Волгоградец
  № 3  
Ответить с цитированием
Волгоградец
 
Аватар для Волгоградец

блогер
Регистрация: Sep 2007
Адрес: Гамбург
Сообщений: 1,648
Записей в блоге: 12
Сам setInterval ничего не отмеряет. Можно поставить интервал в 1с чтобы обновлять экран раз в секунду.

Старый 15.01.2009, 14:54
polol вне форума Посмотреть профиль Отправить личное сообщение для polol Найти все сообщения от polol
  № 4  
Ответить с цитированием
polol

Регистрация: Aug 2006
Сообщений: 102
я использую объект типа new Date, чтобы получать в режиме реального времени секунды, минуты, часы. в сцене объект движется в зависимости от этих данных (секунды умножаются на определенное число и это число задает координаты для объекта в сцене). и на данный момент время запрашивается onEnterFrame и объект движется onEnterFrame.

Старый 15.01.2009, 15:05
Zik. вне форума Посмотреть профиль Отправить личное сообщение для Zik. Найти все сообщения от Zik.
  № 5  
Ответить с цитированием
Zik.
 
Аватар для Zik.

Регистрация: Nov 2007
Сообщений: 1,724
опять ничего не понял. если вам нужны только секунды, тогда:
Код AS1/AS2:
_root.onEnterFrame = function() {
      var a:Date = new Date();
      a.getSeconds();
}

Старый 15.01.2009, 16:20
Волгоградец вне форума Посмотреть профиль Отправить личное сообщение для Волгоградец Найти все сообщения от Волгоградец
  № 6  
Ответить с цитированием
Волгоградец
 
Аватар для Волгоградец

блогер
Регистрация: Sep 2007
Адрес: Гамбург
Сообщений: 1,648
Записей в блоге: 12
Если юзать onEnterFrame, то при частоте кадров 30 будет 30 раз запрошено одно и то же значение - пустая трата ресурсов. В интервале логичнее было бы запрашивать текущее время.
Код AS1/AS2:
var a:Date = new Date();
var b:Number = a.getSeconds();
 
function seconds():Void{
   b = a.getSeconds();
}
 
var intID:Number = (this, "seconds", 1000);

Старый 15.01.2009, 16:28
chingachgoog вне форума Посмотреть профиль Найти все сообщения от chingachgoog
  № 7  
Ответить с цитированием
chingachgoog
Banned
[+4 01.02.09]
[+1 01.02.09]
 
Аватар для chingachgoog

блогер
Регистрация: Nov 2006
Адрес: Moscow
Сообщений: 2,145
Записей в блоге: 7
Если нужно просто отлавливать полсекунды, то лучше setInterval трудно, что-то придумать - тогда может вообще эта затея с Date не нужна?

Старый 15.01.2009, 17:30
Fatality вне форума Посмотреть профиль Отправить личное сообщение для Fatality Найти все сообщения от Fatality
  № 8  
Ответить с цитированием
Fatality
 
Аватар для Fatality

Регистрация: Jan 2009
Адрес: Одесса
Сообщений: 309
Отправить сообщение для Fatality с помощью ICQ
Цитата:
Сообщение от Волгоградец Посмотреть сообщение
var intID:Number = (this,"seconds",1000);
это как понимать ?оО

Код:
var intID:Number = setInterval(this, "seconds", 1000);
1000 милисекунд тут использовать нежелательно, если процессор будет перегружен и справится не за 1000, а например за 1018, в идеале использовать 250


Последний раз редактировалось Fatality; 15.01.2009 в 19:01.
Старый 15.01.2009, 18:55
polol вне форума Посмотреть профиль Отправить личное сообщение для polol Найти все сообщения от polol
  № 9  
Ответить с цитированием
polol

Регистрация: Aug 2006
Сообщений: 102
большое спасибо за ответы.

а вот еще вопрос: если в сцене должно находиться несколько циферблатов (разные часовые пояса), то самым рациональным решением будет разместить там прототип-Object, свойства которого будут включать в себя все сдвиги во времени? и самый ли этот нетребовательный к ресурсам способ?

Старый 15.01.2009, 19:09
Fatality вне форума Посмотреть профиль Отправить личное сообщение для Fatality Найти все сообщения от Fatality
  № 10  
Ответить с цитированием
Fatality
 
Аватар для Fatality

Регистрация: Jan 2009
Адрес: Одесса
Сообщений: 309
Отправить сообщение для Fatality с помощью ICQ
Цитата:
Сообщение от polol Посмотреть сообщение
самый ли этот нетребовательный к ресурсам способ?
в подобном приложении разница в производительности от использования объекта или храниения значений в отдельных переменных если и есть то настолько незначительна что не стоит об этом заморачиваться.
Делай как тебе удобнее, но лично я бы тоже выбрал объект =)

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

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

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


 


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


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