NEWS

2008.5.9 ActionScript「Flashの全画面表示」を追加しました。

コンテンツ

FLASHとは

操作

アニメーション

ActionScript

よくある質問

FLASH関連

ダウンロード

リンク

ゲーム


Adobe

Lolipop レンタルサーバ

Flash講座開催 デジハリ

Lunascape

フローク

アニメーション

奥行がある円運動

概要

FLASHで奥行がある動作(3D動作)をする場合、三角関数を利用します。
三角関数と基礎となる概念は「角度とラジアン」と「円運動の基礎」に記載しています。

サンプル解説

球体が円運動により近寄ったり遠ざかったりします。

作成法

(1) シンボルの準備
  ・円運動させるシンボルを用意
  ※下図では、球体画像をシンボル「ball」に配置しています。
シンボルの準備
 
(2) ステージへ配置
  ・ActionScriptのレイヤー「Action」を用意する
  ・パーツを配置するレイヤー「Parts」を用意する
  ・シンボル「ball」や枠線を下図のように配置する
  ・配置したシンボル「ball」にインスタンス名を「ball」と設定する
ステージへ配置
 
(3) ステージへのActionScript設定
  ・レイヤー「Action」にActionScriptを設定する
 
01
02
03
04
_root.d1 = 0;
_root.centerx = 100;
_root.centery = 100;
_root.r = 70;
 
(4) シンボルへのActionScript設定
  ・シンボル「ball」を選択してActionScriptを設定する
 
01
02
03
04
 
05
06
07
08
onClipEvent (enterFrame) {
 _root.radian = Math.PI/180 * _root.d1;
 _root.ball._x = _root.centerx + _root.r * Math.cos(_root.radian);
 _root.ball._y = _root.centery + _root.r *
  Math.sin(_root.radian) / 2;
 _root.ball._xscale = _root.ball._y;
 _root.ball._yscale = _root.ball._y;
 _root.d1 += 3;
}

解説

(3)のActionScriptは動作するための設定値です。
1行目は角度、2行目と3行目は円運動する中心座標、4行目は中心座標からの半径です。
(4)のActionScriptは動作するために必要です。
2行目でラジアンに変換し、3行目と4行目で指定されたラジアンのときの座標を指定しています。
Y座標だけ2で割っていますが、こうすることで運動の軌跡が真円から楕円に変わり、奥行があるように見えます。
5行目と6行目は近寄ったときにシンボルを大きく、逆に遠ざかるときは小さくしています。 7行目で角度増やして常に動くようにしています。

ページ上部へ