Abdank-AbakanowiczのQuadratrix [見て楽しむ三角関数]
ScratchでAbdank-AbakanowiczのQuadratrixを描きます。Abdank-Abakanowiczは数学者の名前です。
曲線を描く処理の詳細は初回で説明していますので、そちらを参照してみてください。違う曲線ですが流れは同じです。
最初に変数です。Rは定数で、準備で値を設定します。
次に本体です。角度を-540度から540度まで変化させながら計算、移動を繰り返すと、この曲線が描けます。
次に準備です。変数の初期設定、ペンの属性などの設定、開始座標の計算を行い、開始座標に移動しています。
倍率は式には出てきませんが、曲線を拡大するために使っていて、51に設定するとY座標からの高さが最高で51になります。
式はこうなっています。Rは定数、θは角度です。
\[ x=R\sin(\theta) \\
y=\frac{R^2}{2}(\theta+\sin(\theta)\cos(\theta)) \] この式をプログラムにすると次のようになります。sin関数やcos関数の引数のθはScratchでは角度ですが、関数の外にあるθはラジアンですので、ラジアンも計算して使っています。
倍率は式には出てきませんが、曲線を拡大するために使っています。Rと倍率を変えると曲線が変化しますので、興味があればプログラムを変えながら試してみてください。
計算から呼び出すラジアンは次のような処理になります。
移動はいつも通りです。
完成版はこちら。
曲線を描く処理の詳細は初回で説明していますので、そちらを参照してみてください。違う曲線ですが流れは同じです。
最初に変数です。Rは定数で、準備で値を設定します。
次に本体です。角度を-540度から540度まで変化させながら計算、移動を繰り返すと、この曲線が描けます。
次に準備です。変数の初期設定、ペンの属性などの設定、開始座標の計算を行い、開始座標に移動しています。
倍率は式には出てきませんが、曲線を拡大するために使っていて、51に設定するとY座標からの高さが最高で51になります。
式はこうなっています。Rは定数、θは角度です。
\[ x=R\sin(\theta) \\
y=\frac{R^2}{2}(\theta+\sin(\theta)\cos(\theta)) \] この式をプログラムにすると次のようになります。sin関数やcos関数の引数のθはScratchでは角度ですが、関数の外にあるθはラジアンですので、ラジアンも計算して使っています。
倍率は式には出てきませんが、曲線を拡大するために使っています。Rと倍率を変えると曲線が変化しますので、興味があればプログラムを変えながら試してみてください。
計算から呼び出すラジアンは次のような処理になります。
移動はいつも通りです。
完成版はこちら。
コメント 0