FlxMath
API Reference > flixel.math > FlxMath
FlxMath
数学ユーティリティ関数群
- FlxMath
- staticメソッド
- roundDecimal() : 指定の位で小数部を切り上げます
- bound() : 指定の範囲内に値を丸めます
- lerp() : MinからMaxを線形補間した値を求めます
- isBound() : 指定の範囲内に値があるかどうかを判定します
- isOdd() : 奇数かどうかを判定します
- isEven() : 偶数かどうかを判定します
- numericComparison() : 2つの値を比較します
- pointInCoordinates() : 指定の点が、指定の矩形内に存在するかどうかを判定します
- pointInFlxRect() : 指定の点が、FlxRect内に存在するかどうかを判定します
- mouseInFlxRect() : マウスカーソルが、FlxRect内に存在するかどうかを判定します
- maxAdd() : 加算された値を丸めます (整数値)
- wrap() : 指定の範囲外であれば値をループさせます
- dotProduct() : 内積を求めます
- vectorLength() : ベクトルの長さを求めます
- getDistance() : 2点間の距離を求めます
- distanceBetween() : 2つのFlxSpriteの間の距離を求めます
- isDistanceWithin() : 2つのFlxSprite間の距離が指定の距離内であるかどうかチェックします
- distanceToPoint() : FlxSpriteから指定の座標への距離を求めます
- isDistanceToPointWithin() : FlxSpriteから指定の座標への距離が、一定の距離内であるかどうかチェックします
staticメソッド
roundDecimal() : 指定の位で小数部を切り上げます
e.g. roundDecimal(1.2485, 2) -> 1.25
- 引数
- Value:Float : 切り上げを行う小数値
- Precision:Int : 切り上げを行う位
- 戻り値:Float : 切り上げした小数値
bound() : 指定の範囲内に値を丸めます
Min に null を指定すると Maxの値のみで丸めます。 Max に null を指定すると Minの値のみで丸めます。
- 引数
- Value:Float : 丸める値
- ?Min:Float : 最小の値
- ?Max:Float : 最大の値
- 戻り:Float : 丸めた値
lerp() : MinからMaxを線形補間した値を求めます
- 引数
- Min:Float : 最小値
- Max:Float : 最大値
- Ratio:Float : 補完係数 (0.0〜1.0)
- 戻り値:Float : 線形補間した値
isBound() : 指定の範囲内に値があるかどうかを判定します
Min に null を指定すると Maxの値のみで判定します。 Max に null を指定すると Minの値のみで判定します。
- 引数
- Value:Float : 判定する値
- ?Min:Float : 最小の値
- ?Max:Float : 最大の値
- 戻り:Bool : 指定の範囲内であれば true。そうでなければ false
isOdd() : 奇数かどうかを判定します
整数部のみを使用して判定を行います
- 引数
- n:Float : 判定を行う値
- 戻り値:Bool : 奇数であればtrue
isEven() : 偶数かどうかを判定します
整数部のみを使用して判定を行います
- 引数
- n:Float : 判定を行う値
- 戻り値:Bool : 偶数であればtrue
numericComparison() : 2つの値を比較します
- 引数
- num1:Float : 左辺値
- num2:Float : 右辺値
- 戻り値:Bool : num1の方が小さければ-1。num1の方が大きければ1。同じ値であれば0
pointInCoordinates?() : 指定の点が、指定の矩形内に存在するかどうかを判定します
境界線上を含みます
- 引数
- pointX:Float : 点の座標(X)
- pointY:Float : 点の座標(Y)
- rectX:Float : 矩形の左上座標(X)
- rectY:Float : 矩形の左上座標(Y)
- rectWidth:Float : 矩形の幅
- rectHeight:Float : 矩形の高さ
- 戻り値:Bool : 矩形領域内に点が存在すればtrue
pointInFlxRect?() : 指定の点が、FlxRect?内に存在するかどうかを判定します
境界線上を含みます
- 引数
- pointX:Float : 点の座標(X)
- pointY:Float : 点の座標(Y)
- rect:FlxRect? : 矩形
- 戻り値:Bool : FlxRect?内に点が存在すればtrue
mouseInFlxRect?() : マウスカーソルが、FlxRect?内に存在するかどうかを判定します
境界線上を含みます 通常は、useWorldCoordsをtrueはゲームオブジェクトとの判定、 falseは、HUDとの判定に使います
- 引数
- 戻り値:Bool : FlxRect?内に点が存在すればtrue
maxAdd() : 加算された値を丸めます (整数値)
- 引数
- value:Int : 元の値
- amount:Int : 加算する値
- max:Int : 最大値
- min:Int = 0 : 最小値
- 戻り値:Int : 加算後に丸めた値
wrap() : 指定の範囲外であれば値をループさせます
メニューのカーソルなどに使うと便利です
// e.g. メニューの項目が3つ(0, 1, 2)あり、最後の項目(2)で下に移動(2 -> 3)させたら一番上(0)に戻す var selected:Int; // カーソル番号 selected = FlxMath.wrap(selected, 0, 2); // 0〜2の間でループする
- 引数
- value:Int : ループさせる値
- min:Int : 最小値
- max:Int : 最大値
- 戻り値:Int : ループした値
dotProduct() : 内積を求めます
- 引数
- ax:Float : ベクトルAのX成分
- ay:Float : ベクトルAのY成分
- bx:Float : ベクトルBのX成分
- by:Float : ベクトルBのY成分
- 戻り値:Float : 内積の値
vectorLength() : ベクトルの長さを求めます
- 引数
- dx:Float : ベクトルのX成分
- dy:Float : ベクトルのY成分
- 戻り値:Float : ベクトルの長さ
getDistance() : 2点間の距離を求めます
distanceBetween() : 2つのFlxSpriteの間の距離を求めます
- 戻り値:Int : 2つのFlxSpriteの距離
isDistanceWithin?() : 2つのFlxSprite間の距離が指定の距離内であるかどうかチェックします
- 引数
- 戻り値:Bool : 指定の距離内であればtrue