WebGL的three.js库,可以加载pdb文件,以显示化学分子的立体结构。那么什么是PDB格式哪?
PDB是Protein Data Bank的缩写,原意为“蛋白质数据库”,是一种描述生物大分子的数据格式。其实,PDB也可以描述一些小分子,比如水分子、 甲烷等,可以通过读取这种分子的PDB文件使用3D方式显示出来,使分子结构更直观和容易理解。比如,three.js库中就有读取PDB文件的库,把其中描述的分子结构中的原子及化学键使用球体和杆来表示,在浏览器中显示一个立体模型。
不过,网上现成的常见分子的PDB文件比较少,曾经搜到一个网站,但下载的文件很多并不能正常加载和显示,更多的是只有分离的原子,而不能显示化学键。后来,找到一些资料,发现主要是PDB文件不够规范或不够完整,所以加载时出现问题。所以首先要搞清楚PDB文件的格式。下面是很简单的一种--水分子的PDB文件:
ATOM 1 O OSP3 1 2.013 0.831 0.000 1.00 0.00
ATOM 2 H OSP3 1 2.941 0.844 0.246 1.00 0.00
ATOM 3 H OSP3 1 1.750 -0.068 -0.210 1.00 0.00
TER
CONECT 1 2 3
CONECT 2 1 0