1

私は、太陽系の惑星(およびその他のオブジェクト)の速度と位置を予測するためのコースのプロジェクトに取り組んでいます。予測されたオブジェクトのデータを視覚化できれば、3D画像を生成できれば、ビデオの場合は素晴らしいと思います。このデータを使用して画像やビデオを生成できるライブラリを知っていますか?(私はどの言語でかまいません)

データ:
-シミュレーションステップ(ビデオのタイムラインステップ)
-オブジェクトの位置
-オブジェクトの半径および/または色

よろしくお願いします。どんな提案でも大歓迎です。

4

2 に答える 2

2

このタイプの視覚化に (すべて Python 経由で) 使用したいくつかのアプローチがあります。

VPythonは習得が非常に簡単で、太陽の周りを回転する惑星の動的な 3D 視覚化を数分で取得できます。映画の作成を支援する寄付もありますが、私はこれらを使用していません。

たとえば、wxPython ウィンドウ内のPyOpenGLを介して、またはたとえばPyGletを使用して、OpenGL を直接使用することもできます。このアプローチは VPython よりも少し基本的であり、おそらく時間がかかります。映画を作成する唯一の方法は、スクリーンショットなどを使用することです。

VTKは非常に優れた 3D 視覚化ライブラリですが、習得がはるかに困難です。VTK は、他のものと同様に、すぐに使用できる動的な視覚化を行います。また、画像や動画を作成するためのモジュールが組み込まれているのは VTK だけです。ただし、これははるかに複雑なライブラリですが、惑星が星の周りを回転し、ガス雲の等高線図があり、ベクトル場のイオン嵐の真っ只中にある場合は、VTK で実行できます。VTK をよりアクセスしやすくインタラクティブにするMayaViもあります。

于 2010-05-04T13:43:31.080 に答える
1

私は非常に大まかな考えを持っており、それは出発点として役立つかもしれませんが、適切にプロフェッショナルに見えるためにはかなりの肉付けが必要になります。あなたのデータは、与えられた時点での宇宙の各惑星の位置を示していますか?もしそうなら、あなたはすることができます:

1)元々3Dであった場合は、位置データを2空間に投影します(2Dメソッドを使用して、画面に3Dで表示されているように見えるデータを表すことができます)

2)結果は、惑星の位置を格納する一連の2次元行列になるはずです。惑星の位置に対応する場合は行列要素を1とし、それ以外の場合は0とします。(マトリックスをプロットすると、黒い背景に一握りの白い点のように見えます。)

3)形態学的拡張を使用して、すべての位置ポイントを取得し、隣接するポイントの値を0ではなく1に設定します。これにより、プロットすると、手順(2)のポイントを中心とする円盤状の白いオブジェクトのセットが得られます。

4)プログラムを使用して、(3)の各行列を画像ファイルに書き込み、共通のフォルダに入れます。

5)実行時に、別のプログラムを使用して、フォルダから各画像を一度に1つずつインポートし、同じ図ウィンドウの画面に表示します。その結果、時間tの惑星を表す各画像が、時間(t-1)の画像に置き換わります。これは、ビデオファイルがそのウィンドウで再生されている場合と光学的に同じに見えるはずです。

最終結果は、黒い背景に対して軌道上にある白い円の束の動画ショーになります。それは役に立ちますか?

于 2010-05-03T19:22:19.980 に答える