生物信息資源更新越來越快,使用可視化的方法來分析DNA序列已成為生物信息學的一個研究熱點,用圖形表示DNA序列的方法也越來越成熟。2011年,著名雜志《Science》發表一篇引起轟動的文章:《Presenting the Human Genome:Now is 3D!》,這篇文章完全給我們描述了人類基因組測序未來的藍圖,可見3D技術在很多領域都是發展方向。
使用mono可以快速的創建DNA分子結構立體模型,效果如下:
當然簡單的呈現DNA分子結構,僅僅是一部分功能,如果將mono和專業的DNA分析儀結合,不僅可以發現病症,更重要的是預測病症的發生,治病於未發,這將是人類的福音。除了研究人類基因之外,我們還可以對農作物的進行DNA3D模型化,並加以分析,對農業的發展和糧食安全方面都會有積極的意義。
使用mono創建3D模型最大的特點就是快,代碼不過幾十行,使用Editor更是不需要代碼量。本文的效果圖通過代碼實現,核心代碼如下:
function createDNA(box, x, y, z, colors){ var count=20+Math.random()*50; var dist=50; var parent=createNode(box, 10, 0,0,0,'red'); for(var i=0;i<count;i++){ var angle=Math.PI*2/360*15*i; var radius = (i % 2==0) ? 10 : 7; var color = colors[i%2] var node1=createPairNode(box, dist, radius, i, angle, color); var node2=createPairNode(box, dist*0.3, radius, i, angle, color); node1.setParent(parent); node2.setParent(parent); if(i % 2==0){ var link=createLink(box, node1, node2, dist, angle, 'gray'); var node3=createPairNode(box, dist*0.58, radius*0.4, i, angle, 'cyan'); var node4=createPairNode(box, dist*0.72, radius*0.4, i, angle, 'cyan'); link.setParent(parent); node3.setParent(parent); node4.setParent(parent); } } parent.setPosition(x,y,z); parent.setStyle('m.visible',false); return parent; }