memorandums

日々の生活で問題解決したこと、知ってよかったことなどを自分が思い出すために記録しています。

正多角形弦長定理をもとに正多角形を描画するスクリプトを書いてみた

部屋で昼ごはんを食べながら工作関係のブログ記事などを流し読みしていたら、以下の記事を目にしました。

makershub.jp

手書き(定規とコンパスを使って)で正多角形が描けるらしいです。。。ピタゴラスの定理以来。。。ってのが響きますよね。

記事を深く追っていないので詳しい(正確な)アルゴリズムはわかりませんが、上記を読んだ感じでは、コンパスで円を書き、上記のサイトで求めた弦長を使って定規でひたすら正確に円に内接?する線を描いていく。。。という感じではないかと思います。

とりあえず似たようなアルゴリズムで試すスクリプトをp5jsで書いてみました。タップする位置によって、半径と角数を変えることができます。

ちなみにですが。。。弦長を求めて円周に接するかどうかを試行錯誤できるのは「手書き」ならではですから、そこは再現していません。弦長を描き終えたあと、分度器を使って?シートを回転させているような感じになっています。。。

分度器が使えるなら。。。もっと簡単な方法がありそうですが。。。とりあえず真似してみました、ということです。はい。

帰ったら子供と一緒に「手書きで」かいてみよーっと。