最終更新日:1999年01月24日
[1]を参考に、何種類かの面積保存型カオスについて、パラメータを変えながら描画するプログラムを作成してみました。
ここで作成したプログラムは、パラメータを変えながら上図のような画面を描画するプログラムと、パラメータを指定して一つの図形を描画するプログラムの二種類です。両方とも同じアルゴリズムで描画します。
描画に用いる計算式は次のとおりです。
このプログラムは、[1]を基に、Yamada,Kさんが作成された、「Win32用 基本グラフィックス・クラスライブラリ GLIBW32 ver1.23」を使用して作成しました。このライブラリは高度な機能を備えているのですが、相変わらず、低水準の利用方法になっています ^^;
一覧を描画するプログラムは、aの値を-1.99から指定された幅で増加させながら、図形を描画していきます。各図形は、5万点描画しています。また、その時用いたaの値も、その図形の描画領域内に表示しています。各図形を描画するサイズは100x100ドットで、これが(-20, -20)-(20, 20)の座標系に対応しています。
図形を一つ描画するプログラムは、400x400ドットの範囲内に、指定された座標系を対応させています。こちらは、その図形を100万点描画しています。
初期値はいずれも、X0 = 4, y0 = 0としています。
caoscat.exeが一覧を描画するプログラムで、これを実行すると、まずどの式を用いるかを選択します。次に、aの値を増加させる幅を指定します。上の図は、網目状のカオスでaの値を0.02ずつ増加させたときのものです。描画中にマウスを左クリックすると、描画を中断します。その状態でマウスを右クリックすると、描画を再開します。
caosview.exeが指定されたパラメータで図形を描画するプログラムで、これを実行すると、どの式を用いるか、aの値をどうするか(増加させる値ではありません)、描画する範囲を指定します。描画する範囲は、例えば100を指定すると、(-100, -100)-(100, 100)の範囲をウィンドウ内に描画します。網目状のカオスで、aの値を1.85、描画する範囲を50にすると、下図のような結果が得られました。
ファイル名 | caoscat.lzh |
---|---|
バージョン | 1.0 |
ファイルサイズ | 172Kバイト |
OS | Windows NT 4.0 (Windows 95/98でも動作すると思いますが未確認です) |
アーカイブの内容 | caoscat.exe ... 図形一覧描画プログラム |
caosview.exe ... 図形詳細描画プログラム | |
caoscat.txt ... 簡単な説明 | |
備考 |
パラメータを少しずつ変えながら描画するのが面倒なので、一覧表示するプログラムを作ってみました。パラメータが少し変わるだけで、図形がずいぶん変化するものです。