| Name |
miru |
| Date |
2008年12月03日 (水) 11時16分 |
| Message |
憲ちゃんさん、みなさん こんにちは
いつも拝見させて頂いております。
今回、中心の円の周りを衛星が回転するものを作成したかったのですが
衛星の下部が常に円に向いて回る
という事をしたくて、試行錯誤していたのですが
どうも、スムーズに回転してくれなくてギクシャクした感じになってしまいます。
お忙しいと思いますがどうぞご教授下さいませ。
作成品 |
Response
01
|
| 2008年12月04日
(木) 00時20分> joy
|
|
miruさん、
モーションガイドだと、精度が悪いので、ここは、三角関数を使ったscriptで記載すると、動きが安定します。
Flash MX以上ですと、フレームアクションが使えますので、第一フレームのscriptレイヤーに以下のように記載します。
//ここから
this.stop();
var degree:Number = 0;
var angle:Number;
var r:Number = 200;//該当MCが廻る、半径、少ない数字にすると、小さい円軌道を描きます。ご自分のお好きな数値にしてください。
var centerX:Number = Stage.width/2;//ステージの中央のX座標をcenterXに代入
var centerY:Number = Stage.height/2;//同様に、Y座標も
mc.onEnterFrame = function() {//廻る対象MCのインスタンス名を、mcとして、
degree += 10;//廻る速度調整値で、大きくするおt、速く廻ります
radian = Math.PI/180*degree;//度数をradianに変換
this._x = centerX+r*Math.cos(radian);//ステージの中央から半径rの円のcosの位置
this._y = centerY+r*Math.sin(radian);//ステージの中央から半径rの円のsinの位置
angle=Math.atan2(this._y-centerY,this._x-centerX)*180/Math.PI;//ステージ中央からmcまでの角度を、度数で算出し、
this._rotation=angle+90;//90度回転させて、angleを加算して、回転させる
};
//ここまで
となります。
|
|
Response
02
|
| 2008年12月04日
(木) 03時16分> miru |
|
joyさん、お忙しい中ありがとうございます。
本当に初心者で申し訳ないのですが
>フレームアクションが使えますので、第一フレームのscriptレイヤーに以下のように記載します。
上記の部分がよく理解できていないようで
衛星にはインスタンス名を mc としたのですが
全く回転しなくなってしまいました。
三角関数を使ったscript という言葉も初めて聞いたので…
お手数をお掛けしますが、もう少しご教授願えればと思います
本当にすみません。
|
|
Response
03
|
| 2008年12月05日
(金) 02時31分> joy
|
|
miruさん、
以下にサンプルを置きました。professional 8で保存してます。
今日は、飲み会があって、酔っ払ってますので、デザインは、出鱈目ですが、動きは、分かるかと思います。
尚、
>フレームアクションが使えますので、第一フレームのscriptレイヤーに以下のように記載します。
→
シーン上でも、シンボル編集画面上でもいいのですが、レイヤー名をscript(任意名)として、scriptを記載する方法を、俗称、フレームアクションと言います。
これに対して、MCやBTNに直接記載する方法を、クリップアクション、ボタンアクションと言います。
好き好きですが、機能の範囲が広いのと、scriptの一覧性という観点から、私は、フレームアクションと使います。AS3.0では、クリップアクションやボタアクションは使えませんので、AS3.0まで幅を広げたいと思ってるなら、フレームアクションに慣れていた方が、いいでしょう。
http://homepage2.nifty.com/joys/answers/satellite/satellite.html
|
|
Response
04
|
| 2008年12月06日
(土) 16時58分> miru |
|
joyさん
お忙しい中、サンプルまで作成して頂いて本当にありがとうございます。
ずっと、ガイドだけを使用してきたのでとても勉強になります。
ASに関しては、 joyさんから頂いたサンプルを元に勉強していきたいと思います。
ありがとうございました。
<参考>
◎回転のメカニズム
|
|