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更是不须要代码量。

    本文的效果图通过代码实现。核心代码例如以下:

    1 function createDNA(box, x, y, z, colors){
    2     var count=20+Math.random()*50;
    3     var dist=50;
    4     var parent=createNode(box, 100,0,0,'red');
    5     for(var i=0;i<count;i++){               
    6             var angle=Math.PI*2/360*15*i;
    7         var radius = (i % 2==0) ?

     10 7;

    8         var color = colors[i%2]
    9         var node1=createPairNode(box, dist, radius, i, angle, color);
    10         var node2=createPairNode(box, dist*0.3, radius, i, angle, color);
    11         node1.setParent(parent);
    12         node2.setParent(parent);
    13  
    14         if(i % 2==0){
    15         var link=createLink(box, node1, node2, dist, angle, 'gray');
    16         var node3=createPairNode(box, dist*0.58, radius*0.4, i, angle,'cyan');
    17         var node4=createPairNode(box, dist*0.72, radius*0.4, i, angle,'cyan');
    18         link.setParent(parent);
    19         node3.setParent(parent);
    20         node4.setParent(parent);
    21         }
    22     }
    23     parent.setPosition(x,y,z);
    24         parent.setStyle('m.visible',false);
    25         return parent;
    26 }
    1 function createPairNode(box, size, radius, index, angle, color){
    2     var x=size*Math.sin(angle);
    3     var z=size*Math.cos(angle);
    4     var y=index * 10;                      
    5     var node = createNode(box, radius, x, y, z, color);
    6     return node;
    7 }
  • 相关阅读:
    开发者必看!探秘阿里云Hi购季开发者分会场:海量学习资源0元起!
    表格存储TableStore2.0重磅发布,提供更强大数据管理能力
    配置管理 ACM 在高可用服务 AHAS 流控降级组件中的应用场景
    利用栈将中缀表达式转换为后缀表达式并进行计算
    利用栈将中缀表达式转换为后缀表达式并进行计算
    Matlab学习点滴
    Matlab学习点滴
    Matlab学习点滴
    栈的基本应用_将字符串逆序输出
    栈的基本应用_将字符串逆序输出
  • 原文地址:https://www.cnblogs.com/yutingliuyl/p/6785416.html
Copyright © 2011-2022 走看看