直角三角形
4桁までの好きな数↓
1辺の長さ:
1辺の長さ:
1辺の長さ:
の直角三角形
ツェラーの公式
曜日を調べたい日付↓
/ /
その日は
曜日です。
今日の年月日 20 / /
現在の時刻 : ;
4つの数で"10"を

正△/□角形について



正△/□角形とは



正△角形といえば、正三角形、正方形、正五角形、正六角形……のことですが、正△/□角形といえばなんのことでしょう?私が昨日図書館で借りた本に書いてありました。読んだ本は「数学脳―シンプルな図解ができればひらめき力がアップする!」(岡部恒治 桃崎剛寿 編著)です。

たとえば、正5/2角形といえば、☆の形となります。元々正n角形の定義が「円周を360°/nで刻んでいった点を順に結んだもの」だと考えることができます。(引用)そして、正△/□角形も、「円周を360°/(△/□)で刻んでいった点を順に結んだもの」と考えることができます。

面白いのが、この正△/□角形の形が、植物の上からみた葉のつき方に表われているというので、なるほどと思いながらも驚きました。正5/2角形がヒメジオン、ひまわり。正8/3角形はオニユリ、菊、桐、大根。他にもいろいろあるのかもしれないですね。




FLASHで作ってみた



PHPでもGDライブラリを導入すればできそうだということがわかったのですが、サーバー環境が今後かわることも考慮して、FLASHで作ってみました。(なんとなく)


正△/□角形 by FLASH MX (11/02/21)

好きな数字を入れて、正△/□角形を表示します。デフォルトは12/5角形となっています。よく分からない方はとりあえずGO!ボタンを押してください。普通の正多角形を表示したい場合は分母を1にしてください。




上のFLASHのActionScript1.0記述



そんな大したことは何もしてないのですが、覚え書きも兼ねて



600ピクセル×450ピクセルのサイズにする。なお、描画の基本となる円の半径は200ピクセル。

"m_txt"と"n_txt"のテキスト入力用テキストフィールドを作る。

"btn"のムービークリップorボタン(描画してシンボル変換)を作る。

<フレーム1、レイヤー1>

stop();

if ( m == null ){

m_txt.text = 12;
}
else {
m_txt.text = m;
}

if ( n == null){
n_txt.text = 5;
}
else{
n_txt.text = n;
}

btn.onRelease = function(){

m = m_txt.text;
n = n_txt.text;
trace (m);
trace(n);

gotoAndPlay(5);

}



<フレーム5、レイヤー1>←5は特に意味はありません。

_root.createEmptyMovieClip("a_mc", 1);

with(a_mc){

beginFill(0x123456);
lineStyle(5, 0xABCDEF);

trace (m);
trace(n);

// 正m/n角形

//最初の点

x = 200 * Math.cos(Math.PI/180 * degree) + 220;
y = 200 * Math.sin(Math.PI/180 * degree) + 220;

degree = n * 360 / m;

moveTo(x,y)

for (var i=2; i<=m; i++){

x = 200 * Math.cos(Math.PI/180 * degree) + 220;
y = 200 * Math.sin(Math.PI/180 * degree) + 220;

degree = n * ( 360 / m ) * i;

lineTo(x, y);

}

endFill();
}




このページのTOPへ