NEWS

2017.10.21 「バージョンごとの機能比較」を更新しました。

  • Web creators

ActionScript

奥行がある円運動

概要

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行目で角度増やして常に動くようにしています。

ページ上部へ