本文介绍从哪儿开始学习VTK(Visualization Toolkit的简称),如何在网上找寻VTK的学习资源。
首先,可以到维基百科或者百度百科上查看VTK条目,了解VTK是什么。
http://en.wikipedia.org/wiki/VTK
http://baike.baidu.cn/view/627777.htm
然后可以到VTK官方网站看其正式介绍,VTK由KitWare公司维护,也可以到该公司的主页看看。
http://www.vtk.org/VTK/project/technical.html(VTK特性列表)
在了解VTK的背景什么的之后,就可以试着先用一下VTK了,东灵工作室在csdn博客是一个很好的入门教程。
http://blog.csdn.net/www_doling_net/
在学会编写HelloWorld程序之后,可以到VTK的wiki看一些更深入的教程。
http://www.vtk.org/Wiki/VTK/Tutorials(这里有一些专题教程,如管线、智能指针等,但是不全,也没有入门教程)
http://www.vtk.org/Wiki/VTK/Examples(这里是各种样例代码,很多,也涵盖了很多范围,可以到这里找和自己领域相关的主题,避免走弯路)
另外,查看各个类的接口,可以到VTK的文档页,我习惯于先在文档的class列表页上“Ctrl + F”,然后找到我要的类的详细说明,类说明页的最上面是类的继承关系图和协作关系图,可以先看看图中的符号所代表的意义,另外要说的是,VTK的文档是自动生成的,文档页上的文字都是从源代码中的注释中提取的。
http://www.vtk.org/doc/nightly/html/index.html
http://www.vtk.org/doc/nightly/html/annotated.html(所有类的列表)
http://www.vtk.org/doc/nightly/html/graph_legend.html(图例,对继承图和协作图中的符号的说明)
除此之外,文档页还有源代码文件的头文件包含关系等,这些文档可以下载下来离线使用(下载的话我这边很慢,用Google代理会快很多)。
另外不得不提一下,VTK有两本专门的教材,但国内没有翻译,我问了“澜瑞外文”书店的客服,他说他们那里有卖,但都很贵(我是买不起…)。
《VTK User’s Guide, 11th Edition (March 2010) 》(澜瑞要898元,预计12 -15 个工作日内发出)
《Visualization Toolkit, 4th edition (December 2006)》(澜瑞要1074元,预计12 -15 个工作日内发出)
对VTK有了更深入了解之后,一定要看一下下面这篇文章,它是VTK的leader写的,里面讲到VTK有关的背景,以及VTK为什么是现在这个样子,介绍了VTK的关键特性,也对VTK将来的发展做了规划。
http://www.aosabook.org/en/vtk.html(英文原文)
http://www.ituring.com.cn/article/6695(国内翻译,感谢翻译者,翻译的挺好的)
剩下的学习资源当然还有,源代码,可以从几个根类开始看,但看之前最好对VTK使用“Observer/Command”设计模式有所了解,并对“管线”有所了解,上面列的资源里也有。