Packageorg.libspark.utils
Classpublic class GeomUtil

図形計算のためのユーティリティクラスです



Public Methods
 MethodDefined by
  
addPolar(pt:Point, len:Number, angle:Number):Point
[static] 極座標ペアを直交点座標に変換し、指定のポイント(座標)に加算した新しいポイントを作成します。
GeomUtil
  
angle(pt1:Point, pt2:Point):Number
[static] 2つのPoint間の角度を求めます
GeomUtil
  
circumference(width:Number, height:Number):Number
[static] 楕円形の円周の近似値を求めます(楕円積分).
GeomUtil
  
cubicBezier(a:Number, b:Number, c:Number, d:Number, t:Number):Number
[static] 4つの座標数値から3次ベジェ曲線の中間座標を取得します。
GeomUtil
  
degradeBox(mt:Matrix):Object
[static] 指定のマトリックスオブジェクトから Matrix.createBox の逆算を行います。 getRotateFromMatrix や getScaleFromMatrix で得られる結果とは異なりますので注意してください。
GeomUtil
  
ellipseArea(width:Number, height:Number):Number
[static] 楕円形の面積を求めます.
GeomUtil
  
getCurveControlPoint(start:Number, passage:Number, anchor:Number):Number
[static] 3つの座標数値から2次ベジェ曲線のコントロールポイントの座標を取得します。
GeomUtil
  
getPoint(target:Object):Point
[static] 指定オブジェクトのプロパティ x, y から新しい Point インスタンスを作成します。
GeomUtil
  
getPositionFromMatrix(mt:Matrix):Point
[static] 指定のマトリックスオブジェクトから位置情報を調べ、ポイントオブジェクトを作成します。
GeomUtil
  
getRect(target:Object):Rectangle
[static] 指定オブジェクトのプロパティ x, y, width, height から新しい Rectangle インスタンスを作成します。
GeomUtil
  
getRotateFromMatrix(mt:Matrix):Number
[static] 指定のマトリックスオブジェクトから回転値(ラジアン単位)を調べます。
GeomUtil
  
getScaleFromMatrix(mt:Matrix):Point
[static] 指定のマトリックスオブジェクトから拡大・縮小値を調べます。 scaleX 、 scaleY は、それぞれ新たに作成されたポイントオブジェクトの x , y に代入されます。
GeomUtil
  
intersection(a:Object, b:Object, c:Object, d:Object):Point
[static] 直線AB と直線CD の交点を求めます.
GeomUtil
  
polygonArea(... points):Number
[static] 3つ以上の直線によって構成された多角形の面積を求めます.
GeomUtil
  
quadraticBezier(a:Number, b:Number, c:Number, t:Number):Number
[static] 3つの座標数値から2次ベジェ曲線の中間座標を取得します。
GeomUtil
  
setPoint(target:Object, pt:Point):void
[static] 指定オブジェクトのプロパティ x, y に、それぞれポイントの値を代入します。
GeomUtil
  
setRect(target:Object, rect:Rectangle):void
[static] 指定オブジェクトのプロパティ x, y, width, height に、それぞれ Rectangle の値を代入します。
GeomUtil
  
spline(p0:Number, p1:Number, p2:Number, p3:Number, t:Number):Number
[static] 4つの座標数値からスプライン曲線の中間座標を取得します。
GeomUtil
  
toString(target:Object):String
[static] 指定されたオブジェクトのストリング表現を返します。
GeomUtil
Method detail
addPolar()method
public static function addPolar(pt:Point, len:Number, angle:Number):Point

極座標ペアを直交点座標に変換し、指定のポイント(座標)に加算した新しいポイントを作成します。

Parameters
pt:Point — 追加するポイント
 
len:Number — 極座標ペアの長さ座標
 
angle:Number — 極座標ペアの角度 (ラジアン単位)

Returns
Point — 新しいポイント
angle()method 
public static function angle(pt1:Point, pt2:Point):Number

2つのPoint間の角度を求めます

Parameters
pt1:Point
 
pt2:Point

Returns
Number — 2点間の角度
circumference()method 
public static function circumference(width:Number, height:Number):Number

楕円形の円周の近似値を求めます(楕円積分). 楕円を求めるには最短の直径と最長の直径が分かっていないといけません.

Parameters
width:Number — 楕円の最短の直径
 
height:Number — 楕円の最長の直径

Returns
Number — 円周の近似値
cubicBezier()method 
public static function cubicBezier(a:Number, b:Number, c:Number, d:Number, t:Number):Number

4つの座標数値から3次ベジェ曲線の中間座標を取得します。

Parameters
a:Number — 始点の座標数値
 
b:Number — 点 a のコントロールポイントの座標数値
 
c:Number — 点 b のコントロールポイントの座標数値
 
d:Number — 終点の座標数値
 
t:Number — 曲線の進度値。0 から 1 の小数値で指定します。

Returns
Number — 指定された時点におけるベジェ式の値。
degradeBox()method 
public static function degradeBox(mt:Matrix):Object

指定のマトリックスオブジェクトから Matrix.createBox の逆算を行います。 getRotateFromMatrix や getScaleFromMatrix で得られる結果とは異なりますので注意してください。

Parameters
mt:Matrix — 対象となるマトリックスオブジェクト

Returns
Object — scaleX, scaleY, rotation, x, y のプロパティを持つオブジェクト 得られた結果オブジェクトは toString() で内容を確認用の文字列に変換します。
ellipseArea()method 
public static function ellipseArea(width:Number, height:Number):Number

楕円形の面積を求めます. 楕円を求めるには最短の直径と最長の直径が分かっていないといけません.

Parameters
width:Number — 楕円の最短の直径
 
height:Number — 楕円の最長の直径

Returns
Number — 面積
getCurveControlPoint()method 
public static function getCurveControlPoint(start:Number, passage:Number, anchor:Number):Number

3つの座標数値から2次ベジェ曲線のコントロールポイントの座標を取得します。

Parameters
start:Number — 始点の座標数値
 
passage:Number — 通過点の座標数値
 
anchor:Number — 終点の座標数値

Returns
Number — コントロールポイントの座標数値
getPoint()method 
public static function getPoint(target:Object):Point

指定オブジェクトのプロパティ x, y から新しい Point インスタンスを作成します。

Parameters
target:Object — 指定オブジェクト

Returns
Point — 新しい Point インスタンス
getPositionFromMatrix()method 
public static function getPositionFromMatrix(mt:Matrix):Point

指定のマトリックスオブジェクトから位置情報を調べ、ポイントオブジェクトを作成します。

Parameters
mt:Matrix — 対象となるマトリックスオブジェクト

Returns
Point — 位置情報を持つポイントオブジェクト
getRect()method 
public static function getRect(target:Object):Rectangle

指定オブジェクトのプロパティ x, y, width, height から新しい Rectangle インスタンスを作成します。

Parameters
target:Object — 指定オブジェクト

Returns
Rectangle — 新しい Rectangle インスタンス
getRotateFromMatrix()method 
public static function getRotateFromMatrix(mt:Matrix):Number

指定のマトリックスオブジェクトから回転値(ラジアン単位)を調べます。

Parameters
mt:Matrix — 対象となるマトリックスオブジェクト

Returns
Number — 回転値(ラジアン単位)
getScaleFromMatrix()method 
public static function getScaleFromMatrix(mt:Matrix):Point

指定のマトリックスオブジェクトから拡大・縮小値を調べます。 scaleX 、 scaleY は、それぞれ新たに作成されたポイントオブジェクトの x , y に代入されます。

Parameters
mt:Matrix — 対象となるマトリックスオブジェクト

Returns
Point — 拡大率の情報を持つポイントオブジェクト
intersection()method 
public static function intersection(a:Object, b:Object, c:Object, d:Object):Point

直線AB と直線CD の交点を求めます. 2つの直線が平行である場合は null を返します.

Parameters
a:Object — 直線AB の点Aの座標( x, y の数値プロパティを持つオブジェクト )
 
b:Object — 直線AB の点Bの座標( x, y の数値プロパティを持つオブジェクト )
 
c:Object — 直線CD の点Cの座標( x, y の数値プロパティを持つオブジェクト )
 
d:Object — 直線CD の点Dの座標( x, y の数値プロパティを持つオブジェクト )

Returns
Point — 2直線の交点座標
polygonArea()method 
public static function polygonArea(... points):Number

3つ以上の直線によって構成された多角形の面積を求めます. 引数には x, y の数値プロパティを持つオブジェクトを3つ以上渡す必要があります.

Parameters
... points — x, y の数値プロパティを持つオブジェクト

Returns
Number — 面積
quadraticBezier()method 
public static function quadraticBezier(a:Number, b:Number, c:Number, t:Number):Number

3つの座標数値から2次ベジェ曲線の中間座標を取得します。

Parameters
a:Number — 始点の座標数値
 
b:Number — コントロールポイントの座標数値
 
c:Number — 終点の座標数値
 
t:Number — 曲線の進度値。0 から 1 の小数値で指定します。

Returns
Number — 指定された時点におけるベジェ式の値。
setPoint()method 
public static function setPoint(target:Object, pt:Point):void

指定オブジェクトのプロパティ x, y に、それぞれポイントの値を代入します。

Parameters
target:Object — 指定オブジェクト
 
pt:Point — 適応する Point オブジェクト
setRect()method 
public static function setRect(target:Object, rect:Rectangle):void

指定オブジェクトのプロパティ x, y, width, height に、それぞれ Rectangle の値を代入します。

Parameters
target:Object — 指定オブジェクト
 
rect:Rectangle — 適応する Rectangle オブジェクト
spline()method 
public static function spline(p0:Number, p1:Number, p2:Number, p3:Number, t:Number):Number

4つの座標数値からスプライン曲線の中間座標を取得します。

Parameters
p0:Number — 始点座標数値
 
p1:Number — 通過点座標数値(求められる曲線の始点)
 
p2:Number — 通過点座標数値(求められる曲線の終点)
 
p3:Number — 終点座標数値
 
t:Number — 2 つの座標間の補間値。 0 から 1 までの数値

Returns
Number — p1 から p2 の間にある t の位置を示す座標値
toString()method 
public static function toString(target:Object):String

指定されたオブジェクトのストリング表現を返します。

Parameters
target:Object — 出力対象オブジェクト

Returns
String — オブジェクトのストリング表現