Pointクラス

June 4, 2007

ポイントは二次元座標系の位置を表します。

ポイントを作成するにはxプロパティとyプロパティを指定します。

var p1:Point = new Point(10,10);// x:10, y:10
var p2:Point = new Point();
p2.x = 20;
p2.y = 20;

ポイント間の距離を調べるにはdistance()メソッドを使います。

var distance:Number = Point.distance(p1,p2);
trace(distance);// 出力 14.142135623730951


つづけて、グローバル座標について考えてみたいと思います。
そこでまず、ステージのx座標10、y座標10の位置に矩形sq1を作成します。

var sq1:Sprite = new Sprite();
addChild(sq1);
sq1.graphics.beginFill(0x999999,1.0);
sq1.graphics.drawRect(0,0,20,20);
sq1.graphics.endFill();
sq1.x = 10;
sq1.y = 10;

sq1の表示リストにsq2を追加します。
そのとき、sq2のx座標、y座標は10とします。

var sq2:Shape = new Shape();
sq1.addChild(sq2);
sq2.graphics.beginFill(0x666666,1.0);
sq2.graphics.drawRect(0,0,20,20);
sq2.graphics.endFill();
sq2.x = 10;
sq2.y = 10;

次のtrace文で出力されるのはsq1を基準とする座標となります。

trace(sq2.x, sq2.y);// 出力 10 10

sq2について、ステージを基準とする座標を求めるにはlocalToGlobal()メソッドを使います。

var gP2:Point = new Point(sq2.x,sq2.y);
gP2 = sq2.localToGlobal(gP2);
trace(gP2.x, gP2.y);// 出力 30 30


次に、polar()メソッドを使ってみます。
polar()メソッドはパラメータに距離と角度(ラジアン)を指定し、その距離と角度(ラジアン)をもとに座標を返します。

まず、矩形をx座標、y座標ともに20の位置に配置します。

var square:Sprite = new Sprite();
addChild(square);
square.graphics.beginFill(0x666666);
square.graphics.drawRect(0,0,40,40);
square.graphics.endFill();
square.x = 20;
square.y = 20;

距離150ピクセル分、30°の方向に矩形を移動させるには次のようにします。

var distance:Number = 150;
var radian:Number = 30 * Math.PI/180;
var translatePoint:Point = Point.polar(distance, radian);
square.x += translatePoint.x;
square.y += translatePoint.y;


参考URL

Adobe Flex 2 リファレンスガイド flash.geom.Pointクラス

カテゴリー: 


Posted by scratchbrain at June 4, 2007 8:58 PM ブックマークに追加する

Trackback

Trackback URL for this entry:

Post a Comment


検索

このブログを検索

サイトコンセプト

レディオヘッド、Flash・ActionScript 3.0、Processing、アートに関すること。日記・雑感、読書感想など。
[SCRATCHBRAIN.NET ホーム]
[SCRATCHBRAIN プロフィール]
[お問い合わせ]
[Twitter]

リンク

  • scratchbrain.netホーム
  • scratchbrainプロフィール
  • 洋楽ブックマーク
  • こんなライヴに行きました
  • 戦略を、カジュアルに。
  • ドット絵
  • 4コマ漫画
  • 嫁と更新。レシピ、子育て
  • バルセロナ観光ガイド

広告

おすすめ

最近のエントリー

カテゴリー

タグクラウド

全てのエントリー一覧

RSSフィード

月別アーカイブ

powered by Movable Type

hosted by

あわせて読みたいブログパーツ