1

私はPovrayの初心者です。.XYZ ファイルに、時間とともにすべてのビーズの座標があります。ffmpeg を使用してムービーを作成できるように、毎回 .png スナップショットを生成したいと考えています。私の問題は次のとおりです。ループ変数としてのファイル拡張子の形式を知りたかったのです。

つまり、次のコードを使用して、特定の時間にスナップショットを読み取って生成できます。

fopen MyFile "confs.txt" 読み取り

 #while (defined(MyFile))
 #read (MyFile,Vector1,Vector2)  
 .......
 .......
 
 #end

ここで、ファイル拡張子が confs%d.txt の別のタイム ループを使用して、何百万ものファイルを開いて読み取り、各時間に対応するスナップショットを生成できるようにします。

Povray でファイル拡張子をループ変数として使用するための提案を教えてください。このアイデアは、ファイル拡張子をループ変数として使用する私の C プログラミングから生まれました。複数のファイルを読み取る他の方法があれば教えてください。

4

1 に答える 1

0

bash/csh/perl スクリプトなどのインタープリター言語でファイル I/O を実行します。ファイルを順番にループするスクリプトを作成し、次のようにします。

  • 各ファイルを、その座標でビーズをプロットする POV コマンドに変換します
  • コマンドをファイルに書き込みます
  • そのファイルでレンダラーを実行します。出力画像は、入力 POV ファイル名とファイルタイプ (例: confs157.png ) に書き込まれます。

すべてのファイル (またはサブセット) の処理が完了したら、Image Magick を使用してそれらをアニメーションに結合します。たとえば、アニメーション GIF を作成するには: convert confs*.png confs.gif Image Magick は、ほとんどがスタンドアロンであり (通常は無視できるフォント依存関係があります)、どの OS にも簡単にインストールできるため、優れています。

任意の Web ブラウザでファイルを開いて表示します。インタラクティブなコントロール (一時停止、早送りなど) が必要な場合は、ネイティブのアニメーション ビューアを使用してください。

于 2016-03-03T03:59:53.463 に答える