How to| 导入与导出动画

在 Wolfram 语言中创建或编辑了一个动画后, 您可以将其导出用于其它程序. Wolfram 语言能够以多种格式导入与导出动画.

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

来自视频的精选范例:

在 Wolfram 语言参考资料中心 ExampleData 目录下的 QuickTime 文件中查看 Import 的可用元素:

导入作为动画的 QuickTime 文件:

Length 查看动画总帧数:

导入一个指定的动画帧:

使用 {"Frames",All} 将所有帧导入为一个列表. 用 "GraphicsList" 代替 {"Frames",All},也可完成同一任务:

ScaledImageResize 联用,使各帧的尺寸成为原始尺寸的一半:

Sharpen 将各帧锐化:

ListAnimate 将处理后的各帧制成新的动画:

将得到的新动画导出为 SWF 格式,这是一种基于 Flash 的格式. 符号 % 指定的是最近的输出,在这里就是这个动画:

如果打开导出的动画,您将看到它的顶端包含无功能的控件. 该动画实际上是一个动画的动画. 如要将这些控件从导出的动画去除,只需将帧列表直接导出为动画所支持的一种文件格式.

这里,帧列表(存储在符号 g3 中)直接导出为 SWF:

    

您也可以将 Wolfram 语言中创建的动画进行导入与导出.

首先,使用 Table 创建 分别在 的5幅图形:

使用 ListAnimate 将该图形列表制成动画:

如前所述,直接将帧列表(在这里为图形)导出为动画所支持的文件格式创建了各帧的动画::

动画导出后,您也可以将其重新导入 Wolfram 语言:

    

还可将 Manipulate 对象导出为动画.

ManipulatePlot3D 联合使用创建 的一个三维交互图形,其中 的值从0到4变化:

接下来的三步等价于将整个 Manipulate 对象及控件等导出为一个动画.

这里导出了最近的输出,即 Manipulate 对象:

Manipulate 也存入 m 中,因此导出 m 生成相同的结果:

您也可以将 Manipulate 表达式置于 Export 表达式内:

动画 "manipulate1.avi""manipulate2.avi""manipulate3.avi" 是相同的. 同时它们含有Wolfram 语言中的 Manipulate 对象通常所有的组帧与控件.

如要导出的动画缺少组帧或控件,您需要生成一个图形列表,它表示的是用于 Manipulate 中的适当数目的步骤,然后将该列表导出为一种用于动画的文件格式.

例如,用 Table 创建 的一列图形,并指定 从0到4移动,步长为0.2:

将该图形列表导出至文件 "manipulate4.avi"

通过减小用于 Table 中的步长,可以创建更长、更平滑的动画. 例如,将步长由0.2减为0.1将使列表中的图形数目加倍,从而在导出为动画时它的帧数也成为原来的两倍.

相应地,动画的文件尺寸,以及 Wolfram 语言创建图形和动画所用的时间也将是原来的大致两倍.