iPhoneグラフ関数電卓化1

先日、PythonistaというiOSアプリを紹介しました。

iPhoneをグラフ関数電卓っぽく使うのに割と適した方法はSympyを使うことだと思います。中でもgeometryというモジュールがあって、そのモジュールを使うと点や直線、多角形を作ることができ、円の外周長さや面積の計算、図形の交差判定などが可能です。

今日は2直線の交点を求めてみます。

下のプログラムでは点(1, 1)と点(5, 4)を通る直線1と、点(1, 3)と点(5, 2)を通る直線2の交点を求めます。

まずは紙の上で計算してみます。

直線1と直線2の式を作り、交点を求めるために連立方程式を解きます。このまま関数電卓の連立方程式モードで解けばいいと思います。今回は行列を作って、計算してみました。もちろん、手計算でも問題なく解けると思います。この場合、yの係数が4と-4なので、暗算でも解けますね。

次の画像はPythonistaでのプログラムです。

sympy.geometryは2直線の交点を求めることは可能ですが、それを図示するにはmatplotlibを使って、作図してあげる必要があります。

交点の座標を書き込むとか、軸のラベルを付けるとか、色々装飾を施すことは可能ですが、プログラムが煩雑になるので骨組みのところだけを示します。



これを実行すると以下のような結果が得られます。

2つの直線が描画されているのと、交点の座標が求められていることがわかると思います。

私はプログラムを上手に教えられる程の知識がないので、内容までは解説しませんが、そのまま打ち込めば実行可能です。

連絡はこちらから