描画メソッドでの Math クラスの使用

Flash Player 9 以降、Adobe AIR 1.0 以降

Graphics オブジェクトを使用して円や四角形を描画できますが、特に、その描画メソッドを Math クラスのプロパティやメソッドと組み合わせて使用すると、より複雑なフォームを描画することもできます。 Math クラスには、円周と円の直径の比を表す定数 Math.PI (約 3.14159265...)など、一般的な数学定数があります。また、 Math.sin() Math.cos() Math.tan() などの三角関数のメソッドも含まれます。これらのメソッドおよび定数を使用してシェイプを描画すると、特に繰り返しや再帰を使用した場合、より動的な視覚効果を作成できます。

Math クラスの多くのメソッドでは、角度の単位に度ではなくラジアンを使用します。 Math クラスは、これら 2 種類の単位間の変換によく使用されます。

var degrees = 121; 
var radians = degrees * Math.PI / 180; 
trace(radians) // 2.111848394913139

次の例では、正弦波と余弦波を作成して、特定の値での Math.sin() メソッドと Math.cos() メソッドの違いを示します。

var sinWavePosition = 100; 
var cosWavePosition = 200; 
var sinWaveColor:uint = 0xFF0000; 
var cosWaveColor:uint = 0x00FF00; 
var waveMultiplier:Number = 10; 
var waveStretcher:Number = 5; 
 
var i:uint; 
for(i = 1; i < stage.stageWidth; i++) 
{ 
    var sinPosY:Number = Math.sin(i / waveStretcher) * waveMultiplier; 
    var cosPosY:Number = Math.cos(i / waveStretcher) * waveMultiplier; 
     
    graphics.beginFill(sinWaveColor); 
    graphics.drawRect(i, sinWavePosition + sinPosY, 2, 2);  
    graphics.beginFill(cosWaveColor); 
    graphics.drawRect(i, cosWavePosition + cosPosY, 2, 2); 
}