基礎から学ぶActionScript 3.0

座標間の距離を求める - 三平方の定理

全334コースを10日間無料で

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
ダイナミックなアニメーションでは座標間の距離を求めたいことがあります。三平方の定理と、その計算に用いるメソッドをご説明します。
講師:
06:33

字幕

スクリプトによるアニメーションなど ダイナミックなコンテンツを作る際に 2 つの座標の距離を 求めたい という場合があります そのようなときには 三平方の定理を使います 三平方の定理の考え方と その計算をする時に用いる メソッドをご説明します 三平方の定理は その定理を 証明したといわれる― ピタゴラスの名前を取って ピタゴラスの定理 とも呼ばれます その内容は 直角三角形を考えて 直角を挟む二辺を a と b としたとき a^2 + b^2 2 つの長さの 二乗の和ですね それが 斜辺の二乗に一致するという― 定理です すると斜辺 c の長さというのは 逆に a の二乗と b の二乗を足し その平方根を求めれば 良い ということになります 三平方の定理を座標で考えてみます 左側の この座標を (x1, y1) とします そして斜辺の右側 この座標を (x2, y2) とします すると この水平の長さと いうのは x1 - x2 です 高さは y1 - y2 です すると この長さの二乗と この長さの 二乗を足すということですから x1 - x2 の二乗と y1 - y2 の二乗を足し込む そして 平方根をとれば この長さ l が 求まる ということになります もっとも 今の説明を聞いていて x1 から x2 を引くと x2 のほうが右にあるから マイナスになるんじゃないかと 思われたかもしれません どちらから引いても構いません というのは 差を二乗すれば いずれにしても正の数になるからです 三平方の定理で距離を求める際には Math クラスの メソッドを 2 つ使います 1つ目は二乗を求める時ですが Math.pow これは power の頭文字なんですが 何乗するというのは power というふうに英語で言います そして 何乗される数のことを 「底」と言い 何乗 と 累乗ですね それを「指数」と言います ですから 累乗される数に対して , (カンマ)で 第2引数として 指数をわたします 二乗の場合には 指数が 2 になるということです 次に平方根 これは Math.sqrt square root 根ですね その略字になります これは単に 引数に数値をわたせば その数値の平方根を求めて返します 練習問題として この 2 つのペンギンのインスタンスの 距離を求めてみましょう インスタンス名は左側が pen0_mc という 名前にしてあります 右側というか 右上は pen1_mc です スクリプト用のレイヤーを作ってありますので 右クリックで 「 アクション 」 パネルを開きます まず x 座標の差 ですね nX という変数名にしましょう Number です そして pen0_mc の x 座標を引くことの pen1_mc の x 座標 y 座標とやってしまいました x 座標ですね これ 0 と 1 どっちが先でも 構いません 次に もうコピーしてしまいましょう y 座標を 同じように 差を取ります y ですね pen0_mc の y pen1_mc の y 0 と 1 の 順番は どちらでもいいんですが x と y では この順番が そろってないといけません 次に距離ですね distance と nDistance とします Number です まず 二乗からいきましょう pow ですね そして nX の二乗 と 足すことの 同様に pow で nY の 二乗 と それの平方根です Math.sqrt これは square root 全部入れないと コードヒントからは選べないのが ちょっと残念です そして ; (セミコロン)を最後につけます ) は対応が 合うようにしてください これが中ですね sqrt の ( ) と ) を忘れないようにしてください そして 結果を見ましょう 結果は trace で見ます distance...nDistanceが どうなったでしょうか ということです ムービープレビューで 確かめてみましょう 「制御」 > 「ムービープレビュー」 です 「出力」パネルに距離が表示されます 107.7 測ってみないとわかりませんが だいたい それぐらいだと思います 三平方の定理のおさらいです 三平方の定理は 直角三角形で 直角を挟む二辺 それぞれの二乗の和が 斜辺の二乗に 等しくなる という定義です ですから 2 つの座標が与えられたとき 片方から もう片方 x y それぞれを引いて それぞれを二乗した和を取ります そして その平方根をとれば 距離が求まる ということになります その際に使う Math クラスのメソッドは Math.pow と書きますが 読み方は power でしょう ( ) の中に累乗される数 , (カンマ)累乗ですから 今回の場合 ここは二乗になります ) それから 平方根は Math. 読みにくいですが square root と発音しときましょう ( ) の中に数値を入れると その数値の平方根が求められます この 2 つを使えば 2 つの座標間の 距離が求まる ということです 以上 三平方の定理と その際に使う メソッドの説明でした

基礎から学ぶActionScript 3.0

このコースではFlashのActionScript 3.0を初めて学ぶ方を対象に、ActionScriptの基礎から実際にプログラミングをするところまで学習していきます。簡単なスクリプトによるオブジェクトの操作の仕方から始まり、変数や関数といったプログラミングの基礎、そしてインタラクティブなコンテンツの作成まで詳しく解説いたします。

6時間30分 (49 ビデオ)
現在、カスタマーレビューはありません…
 
ソフトウェア・トピック
価格: 3,990
発売日:2014年01月16日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。