How to | アニメーションをインポートしたりエキスポートしたりする方法

Wolfram言語内でアニメーションを作成したり編集したりしてから,それを別のプログラムで使うようにエキスポートすることが可能である.Wolfram言語ではさまざまな形式でアニメーションをインポートしたりエキスポートしたりすることができる.

This page requires that JavaScript be enabled in your browser.
Learn how »

ビデオからの例題のいくつかを以下に挙げる.

Wolfram言語のドキュメントのExampleDataディレクトリにあるQuickTimeファイルの中で,Importに使用できる要素を見る:

In[1]:=
Click for copyable input
Out[1]=

QuickTimeファイルをアニメーションとしてインポートする:

In[2]:=
Click for copyable input
Out[2]=

Lengthを使ってアニメーションの中にいくつフレームが含まれているかを調べる:

In[38]:=
Click for copyable input
Out[38]=

アニメーションの特定のフレームをインポートする:

In[35]:=
Click for copyable input
Out[35]=

を使ってリストのフレームをすべてインポートする.の代りにを使っても同じことが行える:

In[7]:=
Click for copyable input

ImageResizeScaledと一緒に使って,各フレームをもとの大きさの半分にする:

In[27]:=
Click for copyable input

Sharpenをフレームのそれぞれに使う:

In[28]:=
Click for copyable input

ListAnimateを使って,処理されたフレームから新しいアニメーションを作成する:

In[29]:=
Click for copyable input
Out[29]=

新しいアニメーションをFlashに基づいた形式であるSWFにエキスポートする.の記号は最後の出力(この場合はアニメーション)を指す:

In[11]:=
Click for copyable input
Out[11]=

エキスポートされたアニメーションを開くと,機能しないコントロールが上の部分に含まれていることが分かる.アニメーションは,基本的に映画の映画である.エキスポートしたアニメーションからこれらのコントロールを削除するには,フレームのリストをアニメーションがサポートするファイル形式に直接エキスポートするだけでよい.

以下では,フレーム(記号に保存される)のリストは,直接SWFにエキスポートされる:

In[12]:=
Click for copyable input
Out[12]=
    

Wolfram言語で作成したアニメーションのインポートとエキスポートを行うこともできる.

まず,Tableを使って,である5つののプロットを作成する:

In[1]:=
Click for copyable input
Out[1]=

ListAnimateを使ってプロットのリストからアニメーションを作成する:

In[2]:=
Click for copyable input
Out[2]=

上と同じように,フレーム(この場合はプロット)のリストをアニメーションで使う用にサポートされたファイル形式に直接エキスポートすることによって,フレームのアニメーションを作成する:

In[3]:=
Click for copyable input
Out[3]=

一旦アニメーションがエキスポートされると,Wolfram言語にそれをもう一度インポートし直すこともできる:

In[4]:=
Click for copyable input
Out[4]=
    

Manipulateのオブジェクトをアニメーションとしてエキスポートすることもできる.

ManipulatePlot3Dと一緒に使って, の値が0から4まで変化するのインタラクティブな3Dプロットを作成する:

In[1]:=
Click for copyable input
Out[1]=

次の3つのステップは,コントロール等も含めてManipulateオブジェクト全体をアニメーションにエキスポートする方法に等しい.

以下では,最後の出力(この場合はManipulateオブジェクト)をエキスポートする:

In[2]:=
Click for copyable input
Out[2]=

Manipulateにも保存されているので,をエキスポートしても同じ結果が得られる:

In[3]:=
Click for copyable input
Out[3]=

Manipulate式をExport式の中に置くこともできる:

In[4]:=
Click for copyable input
Out[4]=

3つのアニメーションはまったく同じものである.また,これらのアニメーションはWolfram言語のManipulateオブジェクトに典型的なフレームとコントロールを含む.

フレームやコントロールを含まないアニメーションをエキスポートするには,Manipulateで使うのに適切な数の刻み幅を表すグラフィックスのリストを生成してから,そのリストをアニメーションで使われるファイル形式にエキスポートする.

例えば,Tableを使ってのリストプロットを作成し, が0.2の刻み幅で0から4まで動くことを指定する:

In[5]:=
Click for copyable input

グラフィックスのリストをファイルにエキスポートする:

In[6]:=
Click for copyable input
Out[6]=

Tableで使われた刻み幅を小さくすることによって,より長く滑らかなアニメーションを作ることができる.例えば,刻み幅を0.2から0.1に減らすと,リスト中に2倍の数のプロットができ,結果としてアニメーションとしてエキスポートしたときに2倍の数のフレームが作られる.

それに比例して,アニメーションのファイルサイズとWolfram言語がプロットとアニメーションを作成するのにかかる時間も約2倍になる.