CDF介绍

@2014-04-01

一般在公司使用,比如一个人开发了一个工具,那么能否打包成类似exe的东西给同事使用是一个最常考虑的东西。

像Matlab强化了与C的混编mex及生成的exe和dll在新的机器上只要装一下MATLAB Compiler Runtime (MCR)即可。

在这方面,似乎Mathematica不如Matlab方便。

CDF播放器

像Mathematica这种不太低层的,有一种方案是把小工具弄成CDF,在电脑上安装一下CDF播放器[约200MB],即可以浏览播放在线的Demonstration,或打开CDF文档。而直接安装一个Mathematica则要1-2G

Mathematica 10.0结合Alpha和Cloud应该增加了这种APP,更方便把CDF这种东西搞到云端。

吐槽一下,GitHub-Page竟然不支持CDF[传CDF到网站的空间,然后生成一段JS放到页面里,能自动加哉CDF播放器(类似浏览器插件)][再吐槽一下,CDF播放器或看在线的Demonstration时Mathematica的自动打开偶尔或经常会遇到些问题]

这样,至少比安装Mathematica要方便,并且是免费使用的。当然,缺点是不太支持与文件的交互以及进行临时的计算等

CDF文档(可计算文档格式)

CDF

CDF介绍_1.png

就是一些报表呀什么的能够在播放幻灯片演示的时候,能动态显示效果。

CDF文档也可以单独用来作为笔记-报告的文档格式,当然像nb格式一下也可以转化为PDF,网页等。

Wolfram-Demonstration

演示程序的制作

优点

制作快速,[复杂的也不是太快速],方面在线部署演示。

CDF介绍_2.png

一些算法实例,如数字图像处理中的一些例子,涉及到调整参数查看效果的,是非常方便的。

一些教学辅助的实例,比如演示欧拉角,立体几何里的辅助线的添加等三维效果

缺点

集成在了一个Manipulate函数中,相较Mathematica里写一个文档进行类似的操作,或写一个程序包或GUI来是有所限制,统一管理,便于统一发布,但是也就没有一些自由。

对于轻量级的一些应用来说,比如我写一些函数,想给同事使用,还是同事电脑里也装个Mathematica比较方便,也便于学习与调试等。

几个实用的Demonstraction介绍

美术-动画相关

曲面建模[曲面约束][从曲面能生成一些曲线等][法向量剑阵]

Random B-Spline Surfaces

CDF介绍_3.png

CDF介绍_4.png

CDF介绍_5.png

CDF介绍_6.png

相较于在3dsMax或使用C++等来编制类似的控制器,Mathematica有更快速,更易修改,自定义程度,面向任务更好等。

CDF介绍_7.png

CDF介绍_8.png

CDF介绍_9.png

CDF介绍_10.png

CDF介绍_11.png

CDF介绍_12.png

CDF介绍_13.png

CDF介绍_14.png

CDF介绍_15.png

CDF介绍_16.png

CDF介绍_17.png

CDF介绍_18.png