TDCC Laboratory
TDCC 研究室

   HOME ENGLISH                                        

卵形の曲線を表す方程式 VI

山本信雄

本ページの図形は自由にコピーして自由にご使用できます。

    本サイトは   GENERATING AVIAN EGG USING RATIONAL BEZIER QUADRATIC CURVES に紹介されています。
    上記のサイトや論文に紹介・引用された本サイトの著者名が 「Yamamoto」となっていますが、本サイトのアドレスが古い順に 「http://www.geocities.jp/nyjp07/index_egg6.html」 を経過して現在の本サイトのアドレス「http://nyjp07.com/index_egg6.html」になっています。
    古いアドレスは使えませんが、無料の インターネット・アーカイブ検索(Internet Archive)古いアドレスを検索すると、保存されていた当時のサイトが現れる可能性があります。

    別のページに取り上げる凹形ひずみ円(こちら ひずみ円)を変えて、卵形に近い曲線になると考えられる次式を取り扱います。

                     .                      (1)

(1)式を解くと次式になります。

                     .                      (2)
これが存在する条件は次式です。

                     .                      (3)

    (2)式をコンピュータで計算させて、最も現実の卵の形に近い形を追求した結果、a=0 もしくは a の値が小さい範囲にのみそれが存在することが分かりました。以前に見つけた卵形曲線(こちら 卵形曲線)と比較して図1に示します。
    a の値が大きくなるにつれ、図2のように変形し、さらに大きくなると(3)式を満足せず、曲線も存在しなくなります。さらに大きくなると、再び(3)式を満足しますが、図3のようなy 方向に発散する図形が得られます。

図1 今回の卵形曲線(The type in this article)と以前に
山本が見つけたもの(Previously found one)との比較。

ただし、後者は座標の移動や図形の伸縮を行っている。
図2

図3

    a=0, b=2.0, c=2.65, d=k1=k2=k3=1 の場合と現実の卵との比較を図4に示します。ただし、パラメータ値 c は、図1のときより少し変えています。図4を見て分かるように、凹形ひずみ円の変形から作られる卵形曲線は、現実の卵の形とかなりよく一致しているようです。


図4 a=0, b=2.0, c=2.65, d=k1=k2=k3=1 のときの
卵形曲線
(ピンク色のカーブ)と現実の卵の形
との比較

    (2)式を数値計算して図1から図3を得るための C++ プログラムはこちら 1個の曲線の計算プログラムです。
    次に、 C++ システム・ファイル上の「ファイル」の中の「新規作成」をクリックすると、編集画面が現れますが、この画面に上記コピーしたプログラムを貼り付けます。場合によっては編集も行います。そして、「ビルド」をクリックすると実行ファイルが作成されます。さらに、「実行」をクリックすることにより、上記どちらのプログラムでも、「egg_shaped_curve.txt」という名のテキストファイルが作られて、計算されたデータ(卵形曲線上の各 x-y 座標点の座標データ)が格納されます。
   次に、このテキストファイルに格納されたデータをエクセルファイルに移し変えます。それには、エクセルファイルの「外部データの取り込み」機能で行います。ただし、ここに紹介した計算プログラムの場合、テキストファイルに保存されるデータ間の仕切りはカンマ()で指定してありますので、「外部データの取り込み」にはこれを選択します。
   最後に、エクセルファイルに移された各列の x-y 座標データ全てをドラッグした後に、エクセルファイルにある「グラフ ウィザード」をクリックして、その中の「散布図」を選び、スムーズなカーブになる絵図をクリックすると卵形曲線が描かれます。

    次に、凸形ひずみ円からの卵形への変形は次式になります。
                     .                      (4)
(1)式を解くと次式になります。

                     .                      (5)
これが存在する条件は次式です。

                     .                      (6)

   (5)式をコンピュータで計算させて、最も現実の卵の形に近い形を追求した結果、 の場合、 の場合、および、その他の場合の3例をグラフに表すと,それぞれ、図5、図6、および、図7の青色カーブのようになります。ピンク色のカーブは、比較のため、以前に見つけた卵形曲線を示します。このように、広範囲のパラメータ値にわたって卵形曲線が存在します。

    ここで注意するべきは、(4)式において、 とすると、 となり、(4)式自体が成立しません。

図5 今回の卵形曲線(The type in this article)と以前に
山本が見つけたもの(Previously found one)との比較。

ただし、後者は座標の移動や図形の伸縮を行っている。
図6

図7

    1つの例として、a=0, b=1.5, c=2.2, d=k1=k2=k3=1 の場合と現実の卵との比較を図8に示します。ただし、パラメータ値 a, b は、図1のときより少し変えています。図8を見て分かるように、凸形ひずみ円からの変形による卵形曲線の現実の卵の形との一致はあまりよくありません


図8 a=0, b=1.5, c=2.2, d=k1=k2=k3=1 のときの
卵形曲線
(ピンク色のカーブ)と現実の卵の形
との比較

    (5)式を数値計算して図5から図7を得るための C++ プログラムはこちら 1個の曲線の計算プログラムです。



~ブラウザの「戻る」で 前に開いたページに戻ります~

~または、下のボタンを押して HOME に戻ります~


HOME

Updated: 2009.11.11, edited by N. Yamamoto.
Revised on Feb. 06, 2015, Mar. 16, 2015, Jul. 22, 2016, May 05, 2020, Jan. 17, 2021, May 08, 2021, Sep. 23, 2021 and Mar. 06, 2022.