zoukankan      html  css  js  c++  java
  • DNA分子结构3D模型

    生物信息资源更新越来越快,使用可视化的方法来分析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;
    }
    

      


  • 相关阅读:
    设置文本框的 placeholder 的颜色
    CSS单行文字超出省略
    【持续跟新】剑指Offer_Java实现
    Android必修课-Activity生命周期
    如何查看Android的jks签名的MD5
    Flutter 文字边框/边框颜色
    Flutter initState 初始化调用 Provide报错
    flutter 系统通知栏Demo 基于flutter_local_notifications: ^1.4.1
    # Flutter学习笔记(一)
    一个技术人毕业到就业的思考
  • 原文地址:https://www.cnblogs.com/twaver/p/3927282.html
Copyright © 2011-2022 走看看