• 締切済み

webGlでのジニーエフェクト

おはようございます。 現在、書籍を見ながらwebGL,CreateJSでのジニーエフェクトを作成しているのですが、 その中で分からない事があります。 仕組みは各頂点座標を計り、 クリックされた場所から離れた数だけ遅くなると言ったものです。 解説書には、この部分の説明があまり詳細でないため、 特に平方根の処理(Math.sqrt)が全く分かりません;; なぜ、平方根を使用するのかすら分かっていません;; 大変申し訳ないのですが、もしよろしければお教えいただければ幸いです。m(_ _)m。 for (var i = 0; i < vertices.length; i++) { var v = vertices[i]; // 遅延時間を計算 var delay = Math.sqrt((clickX - v.x) * (clickX - v.x) + (clickY - v.y) * (clickY - v.y)) / 800 * 1000; // 頂点を目標座標へ移動 Tween.get(v, {override:true}).wait(delay / 6).to({x:clickX, y:clickY}, delay, createjs.Ease.cubicIn); // 最大の遅延時間を保持 lastMaxDelay = Math.max(delay, lastMaxDelay); }

みんなの回答

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

全体が何をやっているのかわかってませんが… >特に平方根の処理(Math.sqrt)が全く分かりません;; 単純に、ピタゴラスの定理(三平方の定理)を利用して、2点間の距離を算出しているのではないのでしょうか? http://contest.japias.jp/tqj2002/50027/page182.html http://ja.wikipedia.org/wiki/%E3%83%94%E3%82%BF%E3%82%B4%E3%83%A9%E3%82%B9%E3%81%AE%E5%AE%9A%E7%90%86

関連するQ&A