TDCC Laboratory
TDCC 研究室

   HOME ENGLISH                                        

卵形およびリンゴ形の 3D 表示

Svein Daniel Solvenus 氏(ノルウェー)、山本信雄

    2011年1月にスヴェイン・ダニエル・ソルヴェヌス氏(以下、ダニエル氏)から卵形曲線を 3D 表示に出来ないか、との要請がありました。そこで山本が定式化して Cプログラムを組んで計算し、卵形表面の3次元座標データをエクセルファイルに格納しました。このファイルをもとにダニエル氏が 3D 化しました。リンゴ形も行います。


1. 卵形

    先ず、第1のモデルとして、卵形曲線のページの(9b)式が与える曲線を x 軸の周りに回転させて出来る卵形を考えます。(y, z)平面の位相角を導入すると、卵形曲面は次式で表されます。
                    ,                      (1)
ただし、0 < < 2

    (1)式をコンピュータで計算して得たデータをもとに、ダニエル氏が図1および図2の3D画像を作成しました。

図1 ダニエル氏による第1のモデルによる卵形の3D画像

図2 同左

    しかし、図3に見られるように、両端にホールが出来たり、メッシュが余りにも不均一、という欠点があります。このモデルではこれを改善することが難しい。


図3 第1のモデルのホールと不均一なメッシュ

    そこで、第2のモデルとして、卵形曲線II のページの(1)式が描く曲線を x 軸の周りに回転させて出来る卵形を考えます。この式に上記と同じ考え方で(y, z)平面の位相角を導入すると、第2のモデルの卵形は次の式になります。
                    ,                      (2)
ただし、0 < < 2

    (2)式をコンピュータで計算させてエクセルファイルで表示した結果、図4の正面図と平面図が得られます。

図4 第2のモデル[(2)式]による卵形の正面図と側面図

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


2. リンゴ形

    (x, y)平面におけるリンゴ形曲線の方程式はリンゴ形曲線の方程式のページの(3)式ですが、上記と同様の手順に従って行い、次の 3D表示のリンゴ形の式が書かれます。
                    ,                      (3)
ただし、0 < < 2

    (3)式をコンピュータで計算して得たデータをもとに、ダニエル氏が図5および図6の 3D画像を作成しました。図6は素晴らしいですね。

図5 ダニエル氏による
第2のモデルによる卵形の3D画像

図6 左図をダニエル氏が着色したもの


    (3)式を数値計算して図5と図6を得るための C++ プログラムはこちら リンゴ形の 3Dモデルの計算プログラムです。



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

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


HOME

Updated: 2011.01.22, edited by N. Yamamoto.
Revised on Mar. 16, 2015, Jul. 24, 2016, May 05. 2020, Jan. 30, 2021, May 05, 2021 and Mar. 22, 2022.