最近はベイスターズ観戦日記と化しております

さぶれの日記
http://flex91.blog19.fc2.com/  presented by さぶれ@

プロフィール


さぶれ@

Author:さぶれ@
Webアプリなんぞ作っている会社に勤めるサラリーマン。自分の技術力のなさを嘆きつつ、日々勉強中。


最近の記事



カテゴリー



月別アーカイブ



スポンサーサイト

--/--/-- --:--|スポンサー広告
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

時間単位でアニメーションの変化量を計算する方法

2008/06/03 12:33|ActionScript3TB:0CM:0
アニメーションをコーディングするときに、「アニメーション開始から何秒たったから、オブジェクトをこの位置に移動」などの計算をしたいときがあります。
そこで、イベント開始からの経過時間を求めるために、以下のようなコードを使っています。
import flash.utils.getTimer;

//時間カウント開始時刻を保存する。
private var startTime:int;

//一定時間ごとの処理を登録
private function onStartButtonClick(event:MouseEvent) : void {
this.addEventListener(Event.ENTER_FRAME, onTimerTick);
//現在時刻の取得(ミリ秒)
startTime = getTimer();
}

//フレームごとの処理
private function onTimerTick(event:Event) : void {
//経過時間(秒)の計算
var elapsedTime:int = (getTimer() - startTime) / 1000;
//時間ごとの実際の処理・・・
}

private function onStopButtonClick(event:MouseEvent) : void {
this.removeEventListener(Event.ENTER_FRAME, onTimerTick);
}
最初は、TimerEvent.TIMERイベントを使おうとしていました。
しかし、マニュアルを見てみるとTimerイベントは指定したインターバルごとにイベントが発生するとは限らないらしいです。
まぁ、当然と言えば当然な仕様ですね。
仕方がないので上記のような方法をとってみたのですが、毎回現在時刻を取得する処理が何か無駄な気がしてならないのです。
もっとうまい方法が欲しいところです。
スポンサーサイト

コメントの投稿

管理者にだけ表示を許可する

トラックバック
トラックバックURLはこちら
http://flex91.blog19.fc2.com/tb.php/9-269dc8d4

Amazon



ブログ内検索



RSSフィード



 |  未分類 | Flex | ActionScript3 | BlazeDS | Silverlight | 読書 | Javascript | Java読書会 | 横浜ベイスターズ | 
Copyright(C) 2008All Rights Reserved. さぶれの日記
Powered by FC2ブログ.  template designed by 遥かなるわらしべ長者への軌跡.
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。