2019年9月29日日曜日

円積曲線(円積線)の作図と操作

 さて、古代のギリシャに発生した円正方化問題が遠く日の本の国では《円積問題》と広く呼称されている由縁は古来日本に《円積法》と呼ばれる〈円の面積の計算方法〉が和算家の間に普及しておりそれにともなって《円積率》もまた精度の高いものが使用されていた次第によると考えられるのでした。
 タイトルにある《円積曲線》というのは、《円積問題》の解決に深く関わるとされたゆえの名称らしいのですけれど、ここらで〈円積〉の概念に混乱が生じてまいります。混乱の個人的な現象としては過去形なので、つまりはまいったのです。

 ◯ 辞典など繙いてみましょう。多く語られていたり語られていなかったり、はたまた語句そのものが項目として採用されていなかったり。ちなみに小学館発行の『日本国語大辞典 第二版』には、【円積(えんせき)】は「円の面積」と説明されていました。


『広辞苑 第四版』

さんだいもんだい【三大問題】

〔数〕古代ギリシアの幾何学における作図の問題。角の三等分、立方倍積問題、円積問題の三つ。いずれも定規とコンパスだけでは作図不能。

えんせきもんだい【円積問題】

与えられた円と同面積の正方形を作図する問題。古代ギリシアの幾何学三大問題の一。一八八二年にリンデマン (C.Lindemann 1852~1939) が作図不能を証明。円正方化問題。


『算数・数学用語辞典』

武藤徹[むとう・とおる] 三浦基弘[みうら・もとひろ] /著
2010年06月30日 東京堂出版/発行
 (pp. 22-24)
えん [circle]
 コンパスで描いた曲線が囲む平面の一部を円といいます。また、この曲線を、この円の周といいます。円の周の一部を弧といいます。
 コンパスを使わない一般的な定義は次のようになります。
 平面上の 1 点 O から等距離にある点は、1 つの曲線を描きます。この曲線の囲む平面の 1 部を円といい、点 O を、この円の中心といます。また、この曲線を円周といいます。
 円の中心と円周上の点を結ぶ線分を、半径といいます。また、円周上の 2 点を結ぶ線分を弦といいます。長さが最大の弦を直径といいます。円の直径は、円の中心を通ります。
 円の弦は、円周を 2 つの部分に分けますが、大きい方を優弧、小さい方を劣弧といいます。あわせて、単に弧といいます。

円周 えんしゅう [circumference]
 円を囲んでいる曲線を、円周といいます。
 円を放物線や双曲線の仲間と考えて、円周のことを円と呼ぶこともあります。天体の円軌道というのは、その例です。このときは、円は曲線となり、面積を持たないことになります。

円周率 えんしゅうりつ [ratio of circumference of circle to its diameter]
 円周の長さと直径の長さとの比を円周率といいます。円周率は、回りを表すギリシャ語ペリフェレイア (περιφέρεια) の頭文字をとって、π(パイ)で表します。
 π = 3.1415926535897932384 …
が知られています。計算機の進歩によって、現在、その値は 2 兆桁を超えて計算されています。

円積問題 えんせきもんだい [quadrature of circle]
 与えられた円と等しい面積を持つ正方形を、定規とコンパスを有限回使うだけで作図せよ、という問題です。

円積率 えんせきりつ [ratio of area of circle to its circumscribed square]
 円と外接正方形との面積比を、円積率といいます。
π / 4 = 0.7853981 …となります。
古代エジプトでは、円の面積を、直径からその 9 分の 1 を引いて平方して求めました。
直径 9 の円の場合、円の面積 8 × 8 = 64 、この円を囲む正方形の面積は 9 × 9 = 81 ですから
円積率は 64 / 81 = 0.790123456 …で、現在との誤差は 0.60% でした。
 和算家吉田光由の『塵劫記 [じんこうき] 』では、円積率 0.79 が用いられています。


『算数・数学活用事典』

武藤徹[むとう・とおる] 三浦基弘[みうら・もとひろ] /著
2014年09月25日 日本評論社/発行

4 章 幾何の誕生

 (p. 72)

エリスのヒッピアス [Hippias (前 460 ? ~ ? )]

 けばけばしい紫の衣を身に着けて現れ、指輪をはじめ身に付けているものは、全部、自分で作ったといったことで有名です。彼は円積曲線 [えんせききょくせん] (quadratrix) を利用して任意の角の 3 等分に成功しました。
 エリスのヒッピアスは、任意の角の 3 等分を実現するために、右図のように、正方形の 1 辺を、2 等分、4 等分、8 等分、… し、また、直角を、2 等分、4 等分、8 等分、… して、それらの線分の交点の描く曲線を利用すると、任意の角に対応する辺を 3 等分するとき、対応する任意の角が 3 等分されることを発見しました。
 この曲線は、後に、円積問題の解決に役立つことが分かり、円積曲線と呼ばれることになりました。


☝ 上記の引用文中にある「右図」が、☟ おおよそ下の「図 1」の右半分に該当します。


✥ ヒッピアスの円積曲線 ✥

τετραγωνίζουσα

● 四角形 ABCD は正方形で、PD の曲線が、円積曲線にあたる。
〔 ※ 右回転が角度のプラス、左回転がマイナスの角度になっています。図 1 では、角度 0 度は、AD のラインに一致。〕

角度 °  1  2

✍ 辺 AB = AD の長さを基準として、角度の変更に応じて、

 45° で半分、
 30° で 3 分の 1 、
 60° で 3 分の 2 の割合等々で、

辺を分割するラインが移動し、交点座標の変化が確認できます。

2019年9月27日金曜日

《円積率》とは和算の用語であるような

 さてこのたびもやうやうひと月をすぎて、まずはあらため π なる数値へのみちゆきとあひなりまするがしかしては、まへ口上はさておき、さてはここに《円積率》がひとつにさだまるといふことにつき、いにしへよりの物語を紹介いたしませう。はてさて《円積率》とは何のことやらいつかうに。

―― これはすなはち、正方形には互ひに相似な図形しかなく、円でも同様ゆへに、円と外接する正方形の面積比は一定となる、といふいにしへからの次第にござります。

 ◯ さてもにはかに ―― にわかに登場した「円積」とは、どうやら和算の用語で「円の面積」を指し示すようであります。


『和算用語集』

(代表)佐藤健一[さとう・けんいち]/著
2005年10月20日 研成社/発行

 (pp. 10-11)

円周法(えんしゅうほう)

 円周率のことである。円率ともいった。

円積法(えんせきほう)

 円の面積を求める方法である。和算では円の面積を求めるのに、(直径) × (直径) × (円積率) で求めていた。江戸時代初期では円積率は 0.8 または 0.79 が多く使われていた。現在の π / 4 に相当する。

円積率(えんせきりつ)

 円の面積とその円に外接する正方形の面積との比で円周率 π の 1 / 4 である。


  正方形の 1 辺の長さが 2 倍になると、面積の比率は長さの倍率の 2 乗で 4 倍、 3 倍だと、3 2 乗の 9 倍になります。円では、同様に半径の倍率の 2 乗になるわけです。
 ⛞ 円と外接する正方形との面積の比率は、円の半径を r とするなら、正方形の 1 辺の長さは 2r となって、面積の比(円の面積:正方形の面積)は、π  ∕  4 と計算されます。
πr2 : (2r)2 = πr2 : 4r2 = π : 4
document.getElementById('pi_square').innerHTML = Math.PI/4;
π  ∕  4 =

 ⛞ 半径が r の円周と、外接する正方形 4 辺の合計との比も同じく、
2πr : 4(2r) = 2πr : 8r = 2π : 8 = π : 4
であり、試しに π = 3.14 として、具体的な数値で計算してみましょう。
● r = 100 と仮定してみれば、面積と円周は
πr2 = 3.14 × 100 × 100 = 31400
2πr = 2 × 3.14 × 100 = 628
■ いっぽう、正方形の面積と、4 辺の長さの合計は、
2r × 2r = 200 × 200 = 40000
2r × 4 = 200 × 4 = 800
 ◎ 面積と長さの比率の計算
・ 31400 ÷ 40000 = 0.785
・ 628 ÷ 800 = 0.785
  ここで、円周の長さと同じ長さの、正方形の壁を作って、面積を比較してみましょう。
■ 正方形の 1 辺は、2πr ÷ 4 となるので、
(2πr ∕ 4)2 = 4(πr)2 ∕ 16 = (πr)2 ∕ 4
● この計算結果と、円形との面積の比率は
(πr)2 ∕ 4 ÷ πr2 = π2r2 ∕ 4πr2 = π ∕ 4
◆ 具体的に、π = 3.14 とすれば、正方形での面積は 24,649 と計算され、円形では 31,400 でした。
・ 24,649 ÷ 31,400 = 0.785
 ⛞ そういうわけでこの計算結果から、同じ長さの壁だと、今度は正方形よりも円形のほうが円積率分だけ、床面積が大きくなると理解できるのです。
―― となれば、倉庫を建造する場合、材料費を考えると円形の建物が、効率が良いと判明する次第です。

 さうするうち、古代のギリシャにて円正方化問題が発生いたしました。
―― 言の葉は時系列を超越しこれが世に《円積問題》といはれるものではあります。

2019年9月25日水曜日

Canvas の幅・高さと style 指定

 参考図として図を描き、その書き方(記述例)などを、少々説明したいと思います。

 ✥ ここで用意した参考図の最初のタグでは、
 <canvas id="moon_model"></canvas>
と、記述しています。タグでは Canvas の幅と高さを指定していません。指定しなければ、初期値が使われます。
⇒ 初期値は、
 width="300" height="150"
です。
 ● もしもスタイルシートで幅 (width)・高さ (height) の値を変更すると、見た目の座標そのもの(ピクセル間隔)の基準値が変わってしまいます。
 ◈ 高さか幅、どちらか片方の値をスタイルシートで指定した場合には、縦横の比率を保ったまま、拡大・縮小されるのですが、両方の値を指定すると、x 軸と y 軸で拡大・縮小率が異なることにもなります。
 ⇒ それに応じて Canvas 全体が拡大・縮小されるので、そうなると、円を描いたとき楕円に見え、弧や半円、すべての図形がその比率に応じた形になるのです。
 これを技として、幅か高さのどちらかだけを指定することで、図の全体を拡大したり、縮小したりできるのですけれど、調子に乗ると、拡大でラインの境界が荒くなって、図全体が荒れた感じになることがあります。
#moon_model {
  margin-left: 20px;
  width:  px;
  height:  px;
  background-color: darkcyan;
}
 ◆ この見本図では変更操作が可能なように、プログラムの記述で、スタイルを指定しています。
var cvs = document.getElementById('moon_model');
var pen = cvs.getContext('2d');
var x = cvs.width/2 + 3;
var y = 125;
var z = 10;
var theta = 75*Math.PI/180;
var r = 80;
var px = r*Math.cos(Math.PI/3);
var py = -r*Math.sin(Math.PI/3);
var w = document.getElementById('cvsW').selectedIndex + 150;
var h = document.getElementById('cvsH').selectedIndex + 150;
  cvs.style.width = w + 'px';
  cvs.style.height = h + 'px';
  // Canvas 全体の画像を消去してから ペン軸の座標基準点を移動させる
  pen.clearRect(0, 0, cvs.width, cvs.height);
  pen.translate(x, y);
―― この冒頭、
  cvs.style.width = w + 'px';
  cvs.style.height = h + 'px';
の部分で、スタイルの再指定を実行しているのです。
 ◈ 同じ画像を再描写しているだけなのですけれども、その都度 Canvas 全体の画像を消してから描画しているのは、このように重ねて描画し続けると描線が荒れていくので、それを避ける目的があります。
  // ペン軸の座標基準点を移動させる
  pen.translate(x, y);
というのは、本来 Canvas の左上が、x 軸と y 軸の基準点 (0, 0) となっているので、作図の計算に都合のいい座標を原点 (0, 0) にしてしまう方法なのです。
 ● これを実行した際には、最後に必ず、ペン軸の座標をもとの位置に戻しておきましょう。
  // ペン軸をリセットする
  pen.translate(-x, -y);

 ◈ ちなみに、移動させた (x, y) 座標から、ペン軸の基準点をリセットする前に、―― つまりペン軸の基準を移動させたままの状態で ―― Canvas 全体の画像を消すには、次のように記述します。
  pen.clearRect(-x, -y, cvs.width, cvs.height);

 ◈ 今回の作図で、最も計算が難しかったのが、直角の記号を描くラインでした。
var z = 10;
var theta = 75*Math.PI/180;
  // 直角の記号
  pen.strokeStyle = 'green';
  pen.lineWidth = 1;
  pen.beginPath();
  pen.moveTo(-px + z*Math.cos(Math.PI/6), py + z*Math.sin(Math.PI/6));
  pen.lineTo(-px + z*Math.sqrt(2)*Math.cos(theta), py + z*Math.sqrt(2)*Math.sin(theta));
  pen.lineTo(-px - z*Math.cos(Math.PI/3), py + z*Math.sin(Math.PI/3));
  pen.stroke();

 記号用のラインの長さを z = 10 (px) として、斜めになった 10px の、x 座標と y 座標を求めています。
 ► theta = 75 * Math.PI / 180 というのは、直角三角形の斜めの角度 30° に、直角二等辺三角形の角度 45° を足した 75° のラジアン単位です。
  pen.lineTo(-px + z*Math.sqrt(2)*Math.cos(theta), py + z*Math.sqrt(2)*Math.sin(theta));
 ► 75° に対して、直角二等辺三角形の辺の比率 (1 : 1 : √2) の長さを基準に座標計算しています。
 ◈ z * Math.sqrt(2) が、10 × √ 2  の、計算になります。
  こういう複雑な計算が苦手なので、問題の頂点の座標へと、もう一度ペン軸の原点 (0, 0) を移動させてから、さらにペン軸の座標方向そのものを回転させてしまうという必殺技を多用しています。
 ⛞ ヒポクラテスの月の作図例 ⛞ (「古代の《暦》」のページ版)で使っている手法が、それなのです。
 ◆ その記述方法の説明に代え、例として主要な部分だけを抜粋しておきましょう。
var x = 370;
var y = 250;
var z = 16;
var r = 150;
var m1 = r * Math.cos(Math.PI/6);
  // ペン軸の座標基準点を移動させ 反時計回りに 150° 回転
  pen.translate(x, y);
  pen.rotate(-Math.PI/6*5);
  // 直角の記号を描き加える
  pen.strokeStyle = 'darkgoldenrod';
  pen.lineWidth = 0.5;
  pen.beginPath();
  pen.moveTo(m1*2, -z);
  pen.lineTo(m1*2-z, -z);
  pen.lineTo(m1*2-z, 0);
  pen.stroke();
  // ペン軸の座標をリセットして タイトルの記入
  pen.rotate(Math.PI/6*5);
  pen.translate(-x, -y);
  pen.fillStyle = 'darkgoldenrod';
  pen.font = '17px sans-serif';
  pen.fillText('ヒポクラテスの月', 20, 30);
 ► ペン軸の基準をリセットする際には、変更した逆向きの順番で戻していかなければなりません。
 ● ちゃんと、問題なく、ペン座標がもとに戻っているかの確認用という意味も含めて、タイトルを一番最後に記述するようにしています。
 そこにあるべきタイトルがもし書かれてない場合に、どこか途中でプログラムが停止していると知ることのできる、わかりやすい信号にもなっていますし。
  ⛞ ヒポクラテスの月の作図例 ⛞ (「古代の《暦》」のページ版)
へのリンク
 このリンクの場所にも、上と同じ(ただし大きさの変わらない)参考図がありますが、同じページの末尾近く〈ヒポクラテスの月 の 構図〉に、この参考図のための説明と、見本図およびプログラムの本文を掲載しています。

 ◆ JavaScript での書式(具体的な書き方)などは、リンクしたページで、実際のスクリプトを参照してみてください。

―― 前回分と合わせ、コピペしてそのまま使える、JavaScript の見本をテキスト化して掲載したページを、すでに説明したところの、以下のサイトで公開しています。

Canvas に描くヒポクラテスの月
http://theendoftakechan.web.fc2.com/eII/hitsuge/arcus/Hippokrates.html

2019年9月23日月曜日

移動する ヒポクラテスの月

 ヒポクラテスの月のことは、それなりに情報が得られますけれど、その作図方法については、あまり見られません。

―― そこで自分なりに工夫して、さまざまな直角三角形からの三日月形に対応すべく、

ヒポクラテスの月形》を JavaScript を使って Canvas に描いてみました。


Movin' Moon



中心角の角度 :  °

※ 中心角の大きさは、∠CAB の倍になります。角度の変更で、月形が移動します。

2019年9月20日金曜日

方冪(ほうべき)の定理

 ◈ (べき)は累乗(るいじょう)に同じで、同じ数または文字を次々に掛け算していくことです。
―― 日本語の〈冪・方冪〉は、英語では〈power〉といいます。

⦻ 方冪(ほうべき)の定理 (power theorem) は、円と直線についての掛け算の法則になります。

 参考書にかなり詳しく解説されていましたので、まずはその内容を参照してから、その記述に基づき参考図を作図してみたいと思います。


『高校と大学をむすぶ幾何学』

第 6 章  6.1 方べきの定理

 (p. 79)
 円 O と点 P が与えられたとする。点 P を通り円 O と 2 点 A, B で交わる直線を引いたとき、積 PA∙PB の値を円 O に関する点 P の方べきという。ここで、P は円 O の内部にあっても外部にあってもよい。また、P が円周上にあるときは、P = A または P = B だから、PA∙PB = 0 であると考える。方べきの定理は、方べきが直線の引き方に無関係に一定であることを主張する定理である。

定理 6.1(方べきの定理)

 円 O と点 P が与えられたとする。点 P を通る 2 本の直線が円 O とそれぞれ 2 点 A と B、A′ と B′ で交わるとき、等式

  PA ∙ PB = PA′ ∙ PB′    (6.1)

が成り立つ。

 (p. 80)

定理 6.2(方べきの定理)

 半径 r の円 O と点 P が与えられたとする。点 P を通る直線が円 O と 2 点 A と B で交わるとき、等式

  PA ∙ PB = | r ∙ r - OP ∙  OP  |    (6.2)

が成り立つ。ただし、点 O は円 O の中心である。

 (p. 81)

定理 6.3(方べきの定理)

 円 O の外部の点 P を通る直線が円 O と 2 点 A, B で交わるとする。点 P から円 O に引いた接線の接点を T とするとき、等式

  PA ∙ PB = PT ∙ PT    (6.3)

が成り立つ。

定理 6.4(方べきの定理の逆)

 相異なる 4 点 A, B, C, D がある。2 直線 AB と CD が 1 点 P で交わり、次の (1), (2) の一方が成り立つとする。

 (1) P は線分 AB と線分 CD の上にある。
 (2) P は線分 AB の上になく、線分 CD の上にもない。

このとき、もし等式

  PA ∙ PB = PC ∙ PD    (6.4)

が成り立つならば、4 点 A, B, C, D は同一円周上にある。
〔大田春外著『高校と大学をむすぶ幾何学』 2010年09月15日 日本評論社/発行 より〕


✥ 〈方冪の定理〉の参考図
[ PA ∙ PB = PA′ ∙ PB′ ] ⇒ [ PA ∙ PB = PC ∙ PD ]
   半円に描く三角形(参考)
     ▸ PA ∙ PB = PC2
 点 A ° , 点 C °
  第 1 (定理 6.1 )
  第 2 (同)
    ▸ PA ∙ PB = PC ∙ PD
  第 3 (定理 6.2 )
  第 4 (同)
    ▸ PA ∙ PB = | r 2 - OP 2 |
  第 5 (定理 6.3 )
  第 6 (同)
    ▸ PA ∙ PB = PT 2
  第 7 (定理 6.4 )
    ▸ PA ∙ PB = PC ∙ PD

 ⛞ 〈方冪の定理〉の解説  ⛞
〔 ※ 以下の説明文ではすべて、上記参考書の定理に記載された A′C に、B′D に、記号を変更しています。〕
 ▶ 第 1 (定理 6.1 の条件)で、点 P が、円周の内側にある場合。
 ▶ 第 2 (定理 6.1 の条件)で、点 P が、円周の外側にある場合。
 ◎ △PBC と、△PDA は、相似な図形である。
 * 理解しやすいように、点 A と点 C が、円の右側にある場合で考えてから角度の変更を試してみる。
  ✥ 証明
 円周角の定理より、∠PBC ∠PDA は、両方とも弧 AC に対する円周角なので、∠PBC = ∠PDA
 同じく、∠PCB ∠PAD は、ともに弧 BD に対する円周角なので、∠PCB = ∠PAD
(また、∠BPC ∠DPA は対頂角なので、∠BPC = ∠DPA 。)
∴ △PBC ∽ △PDA
 したがって、PC : PB = PA : PD から、PC / PB = PA / PD が成り立つ。
∴ PA ∙ PB = PC ∙ PD
 ▶ 第 3 (定理 6.2 の条件)で、点 P が、円周の内側にある場合。
 ▶ 第 4 (定理 6.2 の条件)で、点 P が、円周の外側にある場合。
 ◎ △PBC と、△PDA は、相似な図形である。
∴ PA ∙ PB = PC ∙ PD
 第 3 図では、
PC = r - OP
PD = r + OP
∴ PA ∙ PB = (r 2 - OP) ∙ (r 2 + OP)
∴ PA ∙ PB = r 2 - OP 2
 第 4 図では、
PC = OP - r
PD = OP + r
∴ PA ∙ PB = (OP - r) ∙ (OP + r)
∴ PA ∙ PB = OP 2r 2
 したがって、次のことが、成り立つ( | x | は、x の絶対値)。
r 2 - OP 2 = | r 2 - OP 2 | = OP 2r 2
∴ PA ∙ PB = | r 2 - OP 2 |
 ▶ 第 5 (定理 6.3 の条件)で、点 T が、円の下側にある場合。
 ▶ 第 6 (定理 6.3 の条件)で、点 T が、円の上側にある場合。
 ◎ 直線 PT は、円 O の接線なので、∠PTO は直角。
 ⇒ △OPT は直角三角形なので、ピタゴラスの定理より、
∴ OT 2 + PT 2 = OP 2
∴ PT 2 = OP 2 - OT 2 = OP 2r 2
である。また、第 4 図では、点 A, B, P が同じ配置にあって、
PA ∙ PB = OP 2r 2
が、成り立っていたので、次のことが成立する。
∴ PA ∙ PB = PT 2
 ▶ 半円に描く三角形の図は、この解説と同様の考え方となる。
〔図の説明は⛞ もうひとつの考え方 ⛞(第 3 図) を参照のこと〕
 ▶ 第 7 (定理 6.4 の条件)で、△ABC の外接円 O を描く。
 (1) P は線分 AB と線分 CD の上にある。
 (2) P は線分 AB の上になく、線分 CD の上にもない。
 相異なる 4 A, B, C, D があって、2 直線 AB CD 1 P で交わり、上記のどちらか一方の条件が満たされて、かつ、
● PA ∙ PB = PC ∙ PD
であれば、4 A, B, C, D は同一円周上にある、ということを証明せよという命題であった。
 ◎ 図では、点 C は、円 O の円周上にあり、直線 PC は、円 O の接線。
 この図で命題の条件を満たすためには、線分 AB の上に点 P がないので、(2) の場合となるが、(2) の場合であるなら、点 P は線分 CD の上にもないはずなので、点 P から見て、点 D は点 C の方向にあることになる。
◈ しかしながら、すでに(定理 6.3 の条件で)、
PA ∙ PB = PC 2
は判明しており、ここで同時に、
● PA ∙ PB = PC ∙ PD
という条件を満たすためには、
PC 2 = PA ∙ PB = PC ∙ PD
が、成立しなければならないのであるけれども、
PC 2 = PC ∙ PD
であれば、[ PC ∙ PC = PC ∙ PD ]となり、すなわち、[ PC = PD ]が必要な条件となる。
◈ これは「相異なる 4 A, B, C, D 」という条件に反するので、この図は、成立しない。
 となれば、先の第 1 図か第 2 図の場合に、限定されてくる。
最後までの詳しい証明は、参考とした「大田春外/著『高校と大学をむすぶ幾何学』(p.82)」に掲載されているので、参照されたし。

 ◆ JavaScript での書式(具体的な書き方)などは、実際のスクリプトを参照してみてください。

―― 前回分と合わせ、コピペしてそのまま使える、JavaScript の見本をテキスト化して掲載したページを、以下のサイトで公開しています。

外接円・内接円・傍接円
http://theendoftakechan.web.fc2.com/eII/hitsuge/arcus/arch.html

2019年9月17日火曜日

外接円・内接円・傍接円

 ✣ 物体の重さのバランスがつり合っている 1 点を指して重心という ✣


⛞ 三角形の各頂点から対辺の中点に引いた線分を中線というのですけれども、3 本の中線は 1 点で交わり、三角形の重心が、その共通の交点にあります。

〔 ※ 多角形の辺は一定の長さをもつ線分でした。辺(線分)に垂直二等分線を引いたときの交点が、辺の中点となります。〕

✥ 三角形の五心 ✥


⛞ また、あまり聞くことはありませんけど、三角形には《三角形の五心》というものがあって、外心内心重心垂心傍心の 5 つを指します。

 重心(じゅうしん)は、辺の中点を求めることで得られました。
 外心(がいしん)は 3 本の垂直二等分線の共通の交点で、《外接円》の中心になります。
 内心(ないしん)は、各頂点(角)の二等分線の共通の交点で、《内接円》の中心です。
 垂心(すいしん)は各頂点から対辺へ引いた垂線の共通の交点をいいます。
 傍心(ぼうしん)というのは、《傍接円》の中心になります。

『広辞苑 第四版』

ぼうせつえん【傍接円】

三角形の一辺と他の二辺の延長線とに接する円。一つの三角形について三つ存在する。

『高校と大学をむすぶ幾何学』

大田春外[おおた・はると]/著
2010年09月15日 日本評論社/発行

第 5 章 三角形の五心

(p. 72)

定理 5.7(傍心定理)

三角形の 1 つの頂点の内角の二等分線と他の 2 つの頂点の外角の二等分線は 1 点で交わる。


〔 ※ 弧 AB   ∕ 180 , 弧 AC   ∕ 180
  傍心 (傍接円の中心点)
 外心 (各辺の垂直二等分線の交点)
 重心 (各辺の中線の交点)
 内心 (各頂点の二等分線の交点)
 垂心 (各辺の垂線の交点)

※ 角度の変更に対応した傍接円の作図はとても難しそうなので、上の図では、固定図で表現しています。

◎ 傍接円以外は角度の変更が可能です。

2019年9月14日土曜日

Canvas に JavaScript で 扇形を作図する

 ⛞ 扇形は、次のように記述すると、描画できます。

pen.beginPath();
pen.moveTo(x, y);
pen.arc(x, y, r, start, end);
pen.closePath();
pen.stroke();

 ⛝ 扇形は、次のように記述すると、描画できません。

pen.beginPath();
pen.arc(x, y, r, start, end);
pen.closePath();
pen.stroke();

❗ ようするに弧を描く構文で 1 行、弧(円)の中心座標にペンを移動させる、ひと手間が必要なのです。


◎ ところで、グラフ用紙などに座標を書く際、平面座標は、4 つの象限に分けられます。
  1.  xy の両方が正の値になるとき、第 1 象限
  2.  x が負の値になって y が正の値になるとき、第 2 象限
  3.  xy の両方が負の値になるとき、第 3 象限
  4.  x が正の値になって y が負の値になるとき、第 4 象限
開始角度を象限で指定して 扇形を描きます
∠ O ° ( ∠ O ; 中心角の大きさ)
  第 象限    線  /  塗

 第 1 象限では、時計の 12 時の位置から、指定された角度に応じて、扇形を描線、または塗り潰します。
 第 2 象限では 9 時、第 3 象限では 6 時、第 4 象限では 3 時の位置から始めて、扇形を描画します。


◎ グラフの座標の象限は、反時計回り。
JavaScript で、Canvas に弧を描く角度は、時計回り。


 ◆ JavaScript での書式(具体的な書き方)などは、実際のスクリプトを参照してみてください。

―― コピペしてそのまま使える、JavaScript の見本をテキスト化して掲載したページを、以下のサイトで公開しています。

扇形の作図・中心角・円周角
http://theendoftakechan.web.fc2.com/eII/hitsuge/arcus/sector.html

2019年9月10日火曜日

JavaScript: 半月に描く直角三角形

三平方の定理(ピタゴラスの定理)がおおよそいつでも成り立っているかを、1 度ずつ角度の違う三角形を作図して計算してみようと試みます。
 このときの作業に、おおいに役立つのが JavaScript で動作する Canvas の機能という次第でもあります。

 ▼ 下の図で、AB は、AB と見た場合、円の直径に相当します。AB は、したがってO を中心に半円を描く弧です。また最初に設定した角度は ∠COA = ∠COB = 90° なのですが、角度を変更しないと、O, H の二文字が重なって、あいにく見えにくくなっています。

 ◎ 頂点 A に対する辺(対辺)を a とし、同様に B の対辺を b とし、 C の対辺を cとします。
 ◎ 図では c底辺の位置になるのですけれど、c はまた同時に直角三角形 ABC斜辺に相当します。

角度を変える: ∠ COB = °
長さの一覧表(円の半径 r = 100
長さ 2 a2 + b2
a a2 + b2  
= 40,000 
b
c

⛞ ∠COB = 45° の場合について、三平方の定理が成立すると信じて計算した結果に、矛盾がないかを確かめてみましょう(角度を指定するたびに、計算結果が表示されます)。

   a = 76.54   (a*a = 5858)

   b = 184.78  (b*b = 34142)

 ✥ この計算方法について、簡単に説明します(円の半径 r = 100 として)。

  1.  円周上の点 C から、 AB に垂直に線を引きます(これを垂線といって、垂線の交点には、通常H の記号を使い、H垂線の足といいます)。
  2.  線分 CH の長さ。 r * sin45° = 70.71067811865474
  3.  線分 OH の長さ。 r * cos45° = 70.71067811865475
  4.  線分 BH の長さ。 r - OH = 29.289321881345245
  5.  BH*BH + CH*CH = 5857.864376269047
  6.  線分 CB = a の長さ。BH*BH + CH*CH の平方根 ( 76.53668647301794 )
  7.  線分 AH = r + OH
  8.  (r + OH)*(r + OH) + CH*CH = 34142.13562373095
  9.  線分 CA = b の長さ。AH*AH + CH*CH の平方根 ( 184.77590650225736 )

 ◆ JavaScript での計算方法(計算式の書き方)は、実際のスクリプトを参照してください。

―― 山頂から見える水平線の話題などと一緒に、前回分と合わせて、コピペしてそのまま使える、JavaScript の見本をテキスト化して掲載したページを、以下のサイトで公開しています。

Canvas: ピタゴラスの定理の証明
http://theendoftakechan.web.fc2.com/eII/hitsuge/arcus/Pythagoras.html

2019年9月7日土曜日

Canvas:《ピタゴラスの定理》の証明方法

◈ ピタゴラスの定理

学校教科書的証明方法の説明図


 ただただ作図しやすいという理由で図には、

⊿ (高さ:底辺:斜辺)= ( 3 : 4 : 5 )

の比率の、直角三角形を最初に例示しています。
 * 四角形 FHCD は、正方形なのであります。

◇ 正方形 AEGB を、斜めになった内側の正方形
□ 正方形 FHCD を、外側の正方形、とします。

 オレンジ色で塗られた中央の正方形には、記号がつけられていませんので、証明方法の説明には、

・ 直角三角形 ABC = △ABC
・ 直角三角形の(底辺)= a
・ 直角三角形の(高さ)= b
・ 直角三角形の(斜辺)= c

という、4 つの記号だけを使うことにします。

移動 : 高さ b =    
回転 : 底辺 a =  30
 ◆ まずオレンジ色で塗られた中央の正方形の面積の計算式は、次のようになります。
  (a - b)2
 ◆ オレンジで塗られた正方形の面積に、その周囲にある、△ABC の面積の 4 つ分を足せば、斜めになった内側の正方形の面積が、算出できます。
 *〝回転〟のボタンを押してみると、わかりやすいかもしれません。
 ● これは、次の式で表せます。
  c2 = 4 × (ab ÷ 2) + (a - b)2
∴ c2 = 2ab + (a - b)2
⛞ この式、[ c2 = (a - b)2 + 2ab ] を整理してみましょう。
◈ c2 = (a - b)2 + 2ab
∴ c2 = (a2 - 2ab + b2 ) + 2ab
    = a2 - 2ab + b2 + 2ab = a2 + b2
∴ a2 + b2 = c2
 びっくりポン ❕ なんと ❗
 いつの間にやら、かの〈ピタゴラス〉の定理が、出現しているではありませんか。
 ◆ そしてさらに、斜めになった内側の正方形の面積に、またもや △ABC の面積の 4 倍を足すことで、外側の正方形の面積 [ (a + b)2 ] と同じになって、次の方程式が成立します。
  c2 + 2ab = (a + b)2
∴ c2 = (a + b)2 - 2ab
⛞ この式、[ c2 = (a + b)2 - 2ab ] も整理してみましょう。
◈ c2 = (a + b)2 - 2ab
∴ c2 = (a2 + 2ab + b2 ) - 2ab
    = a2 + 2ab + b2 - 2ab = a2 + b2
∴ a2 + b2 = c2
 ◆ ちなみに、a = b となる特別な場合には、斜めになった内側の正方形の面積は直角三角形 4 つ分の面積と同じになりますので、次の計算式になります。
  c2 = 4 × (ab ÷ 2) = 2ab
  c2 = 2ab = ab + ab
 ● 条件より、a = b なので、⇒ [ ab + ab = aa + bb ]
∴ c2 = a2 + b2

⛞ 最後に念のため、(高さ:底辺:斜辺)= ( 3 : 4 : 5 ) の直角三角形を使って、実際の数値で計算してみます。

  (4 - 3) × (4 - 3) = 1
  (4 × 3) × 2 = 24
  5 × 5 = 25 = 24 + 1
  (3 + 4) × (3 + 4) = 7 × 7 = 49
  49 - 25 = 24