三角形の4心を表示するウェブアプリケーション
ClojureScriptを使用して、三角形の4心を表示するウェブアプリケーションを作成しました。三角形の頂点をドラッグすることで、三角形の形状を変形できます。それに応じて4心の位置も変わります。アプリは以下のリンクより利用可能です。
https://pigmet.github.io/triangle/
三角形の4心とは
三角形の4心の定義を以下に述べます。
- 外心(circumcenter)
- 外接円の中心です。三角形の3つの頂点から等しい距離にあります。
- 内心(incenter)
- 内接円の中心です。三角形の3つの辺から等しい距離にあります。
- 垂心(orthocenter)
- 三角形の各頂点から対辺に引いた垂線が交わる点です。
- 重心(centroid)
- 三角形の各頂点から対辺の中点に引いた直線が交わる点です。
実装について
与えられた三角形の頂点の座標から、各心の座標や、内接円、外接円の半径を求める処理が必要になります。このような数学的計算には、JavaScriptのライブラリーであるmathjsを使っています。また、図形の描写にはreact-konvaを使いました。
ClojureScriptでは、上記のようなJavaScriptライブラリーをスムーズに呼び出すことができます。
最後に
このようなアプリを通して幾何学に親しんでもらえれば、うれしい限りです。今後も、数学関連のアプリの制作に挑戦したいと思います。