問題タブ [fractals]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
591 参照

artificial-intelligence - マンデルブロ集合による遺伝的プログラミング

この魅力的な本の中で、遺伝的プログラミングを使用して画像をインタラクティブに進化させる方法についての章を読んでいます。関数セットのほとんどは、単純な算術関数と三角関数 (実際には画像を操作して返す関数) で構成されています。これらの関数は、画像をエンコードする解析ツリーの内部ノードを構成します。ツリーの葉、または最終値は、乱数と x、y 座標です。

複素平面の反復関数を関数セットに追加するセクションがあります。

遺伝学が特定のマンデルブロ集合を茂みのある木のどこかにノードとして挿入するとします。この関数は 2 つの引数を必要とします: mandel(cReal, cImag) で、それらを複素平面の実座標と虚座標として扱います。ゲノムがたまたまピクセル座標 (x,y) を提供し、mandel() がルート ノードであった場合、おなじみの Mset が得られます。しかし、cReal と cImag 自体が関数の分岐全体の結果である可能性が高く、座標 x、y の多くのインスタンスが葉の間に散らばっています。反復ループに入り、しばらく周回し、最後に Mset アトラクタまでの距離 (反復回数など) を測定して脱出します。

私の質問は、複素平面上の点の実座標と虚座標を引数として取り、マンデルブロ集合のレンダリングを返す関数として、マンデルブロ集合レンダラーをどのように作成しますか?

0 投票する
2 に答える
1510 参照

opengl - OpenGL でシェルピンスキー ガスケットを使用したフラクタル マウンテン

Edward Angel による OpenGL に関する本「Interactive Computer Graphics」を読んでいます。その中で彼は、シェルピンスキー ガスケット アルゴリズムを変更してフラクタル マウンテンを生成するように求めています。これを行うには、各辺の中点を見つけてから、分割する前にこの位置を摂動するように指示します。彼は場所を「混乱させる」方法をまったく説明しておらず、オンラインで調べても結果は得られませんでした.

誰がこれが何を意味するのか説明できますか?

ありがとう!

0 投票する
2 に答える
818 参照

php - PHPGDスノーフレークフラクタル

php gdを使用してコッホスノーフレークフラクタルを作成し、このように出力するにはどうすればよいですか...


代替テキスト

代替テキスト


出来ますか?使用できる別のリソースはありますか?

0 投票する
1 に答える
614 参照

database-design - マンデルブロ値をデータベースに保存するための最良の方法は何でしょうか?

私は現在、マンデルブロ集合のレンダリングを実験していますが、レンダリングごとに最大反復回数を再計算する必要がないことが便利であることにすぐに気付きました...一方、追跡するには大量のデータが必要ですの。(RDMSでの限られた経験に基づくと)データセットが大きくなるにつれてパフォーマンスに影響を与えたくないので、リレーショナルデータベースはおそらく行く方法ではないように思われます。ハッシュテーブルにはほぼ完璧な状況のようですが、これまで使用したことがなく、既存のWebサーバー言語(Python / PHPなど)のいずれかでハッシュテーブルを使用または管理する方法を理解できないようです。

もう少し明確にするために:保存される重要な値は次のとおりです。

  • 複素平面上の数の元の実数部
  • 複素平面上の数の元の虚数部
  • 最大反復回数
  • 最大反復回数に達する前、またはポイントが無限大になるまでの完了した反復回数 n
  • n回の反復後の複素平面上の数値の最後の実数部
  • n回の反復後の複素平面上の数値の最後の虚数部

いつでも、元の実数部元の虚数部、および最大反復回数を考慮して、最終的な実数部と虚数部を含む結果セットを取得できるようにしたいと思います。

それで、あなたはどう思いますか?ハッシュテーブルは行く方法ですか?問題は、単なる致命的なデータ構造には複雑すぎますか?

どんな助けでも大歓迎です。前もって感謝します!

編集

julienaubertの親切なリクエストで、この問題について少し説明します。

私が持っている目標は、ユーザーが計算の遅延なしにマンデルブロ集合にズームインできるようにすることです(事前定義されたズームを使用している場合でも)。また、サーバーに新しいデータ配列を常に要求しているブラウザーでこれを実行できるようにしたいのですが、新しいx座標とy座標、および複素平面で表示される高さと幅を指定します。ただし、ピクセルの色の値の計算ははるかに高速に実行できるため(max_iter、real_final、およびimag_finalを指定)、ユーザーが色の設定を調整できるようにすると便利なので、ブラウザーのみを送信します。私の投稿に列挙されている変数を使用して、ユーザーのブラウザに色を計算させます。

これを見てください:

http://jsfiddle.net/xfF3f/

drawMandelbrot()関数を見ると、ポイントループがデータセットと呼ばれる変数に重要な値を格納していることがわかります。次に、この変数はdrawMandelbrotFromData()関数で使用され、各ピクセルの色を把握するために必要な残りの計算を実行します。

「cleardabrot」をクリックすると、キャンバスが白い長方形に置き換わります。「refilldabrot」をクリックすると、drawMandelbrotFromData()関数が再度実行されます...これは、面倒な反復計算を実行する必要がない場合に、実際にセットをレンダリングできる速度を示すために行われます。

したがって、ここでの最終的な目標は、これらの値を任意の精度で計算できるようにすることです。これにより、ユーザーはセットの任意のレベルにズームし、サーバーにそれらの正確なポイント(またはできればNEARのポイント)のデータがあるかどうかを判断させることができます。それらの正確なポイント...ある種の範囲クエリを実行せずにこれをどのように実行できるかはわかりませんが)、ピクセルごとに情報を吐き出します。例えば...

  • ユーザーは300x300のキャンバスを使用しています。
  • 彼は左上隅がx = .000001とであるポイントにズームしy = .0000231ます。
  • このフレームで彼が選んだ幅と高さw = .00045h = .00045

彼はそれらの番号をサーバーに送信し、次に300 * 300のインデックス(各ポイントを表す1つ)を持つ配列を受け取ります。各インデックスには、キャンバス上の各ピクセルの色を決定するために必要な情報が含まれています。ここでの私の質問は...ユーザーが任意のx、y、w、およびh値を入力し、その中の複素平面上の点の値をすばやく引き戻すことができるように、事前に計算されたマンデルブロデータを格納するための最良の方法は何ですか範囲。

0 投票する
1 に答える
2322 参照

php - フラクタルの説明

しばらくの間、私はフラクタル、その背後にある数学、およびフラクタルが生成できるビジュアルに興味を持っていました。

数式を絵を描くコードにマッピングする方法がわかりません。
マンデルブロ集合のこの式を考えるPc(z) = z * z + c
と、次のコードとどのように比較されますか。

コードは完全ではなく、簡潔にするために主要な反復部分を示しているだけです。

だから問題は、数学がコードとどのように比較されるかを誰かが私に説明できるかということです。

編集:明確にするために、私は数学を説明する数十のリソースとコードを示す数十のリソースを見つけましたが、2つを組み合わせた良い説明をどこにも見つけることができません。

0 投票する
3 に答える
2297 参照

opengl - フラクタルの連続着色

OpenGLでマンデルブロ集合を視覚化しようとしていますが、滑らかな色付けに関しては非常に奇妙な動作を見つけました。

現在の複素数値について、 2を超えることが証明されたときに、反復C後にアルゴリズムがエスケープされたと仮定します。nZ

私はこのように着色部分をプログラムしました:

問題は、これはうまく機能しないということです。若干のスムージングは​​目立ちますが、完璧ではありません。

しかし、2つの反復を追加すると(説明なしでこれがどこかに見つかりました)

色を計算する前の「else」ブランチでは、画像は完全に優雅に滑らかになります。

なぜこれが起こるのですか?セット内のポイントを確認した、着色部分に追加の反復を配置する必要があるのはなぜですか?

0 投票する
6 に答える
2420 参照

java - 再帰で直角三角形を作る

三角形を描くためにアスタリスクを印刷する必要があるこの宿題があります。

drawTriangle(0); の場合。

drawTriangle(1); の場合。

drawTriangle(2); の場合。

drawTriangle(3);

drawTriangle(4);

drawTriangle(5);

アドバイスをいただければ幸いです。乾杯。

0 投票する
2 に答える
3518 参照

opengl - 手続き型惑星、高さマップ、テクスチャ

私は現在、OpenGL 手続き型惑星ジェネレーターに取り組んでいます。プレイヤーが惑星の表面に降りることができない宇宙 RPG に使用したいと考えているため、ROAM 関連は無視しました。現時点では、ここに示すように、VBO を使用して立方体を描画し、球体にマッピングしています。

私はほとんどのフラクタル高さマップ生成手法に精通しており、独自のバージョンの中点ディスプレイスメントを既に実装しています (この場合はあまり役に立ちません)。

私の質問は、高さマップを手続き的に生成する最良の方法は何ですか。タイル可能な高さマップ/テクスチャを作成できるlibnoiseを見てきましたが、私が見る限り、次のようなネットを生成する必要があります:

これ

タイリングを明白に残します。

誰かが私に最善のルートを教えてくれませんか?

任意の入力をいただければ幸いです。

ありがとう、

ヘンリー。

0 投票する
4 に答える
6380 参照

opengl - 地形の 3D プロシージャル生成またはフラクタル地形生成に関する優れたリソースを持っている人はいますか?

タイトル参照。どんな助けでも大歓迎です!

0 投票する
1 に答える
669 参照

flash - シェルピンスキーの三角形AS3の問題

AS3でシェルピンスキーの三角形を書き込もうとしていますが、何かが足りないようです。このコード行でスタックし、問題を解決しようとしています。計算を行いましたが、何かが足りないようです。手伝う?