http://www.mrdoob.com/#/131/clouds

http://www.webgl.com/2012/03/webgl-demo-clouds/

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Mr.doob</title>
<style> html { height: 100%; } body { margin: 0;
height: 100%;
font-family: Helvetica, Arial, sans-serif;
background-color: #000000;
overflow: hidden; } #nav { background: linear-gradient(to bottom, #000000 50%,#1d1d1d 97%,#333333 97%);
width: 100%;
height: 61px;
overflow: hidden; } .project { -webkit-transition: width 1s cubic-bezier(0.250, 0.460, 0.450, 0.940);
-moz-transition: width 1s cubic-bezier(0.250, 0.460, 0.450, 0.940);
-ms-transition: width 1s cubic-bezier(0.250, 0.460, 0.450, 0.940);
-o-transition: width 1s cubic-bezier(0.250, 0.460, 0.450, 0.940);
transition: width 1s cubic-bezier(0.250, 0.460, 0.450, 0.940); /* easeOutQuad */ /*
-webkit-box-shadow: 0px 0px 20px 0px #000000;
-moz-box-shadow: 0px 0px 20px 0px #000000;
box-shadow: 0px 0px 20px 0px #000000;
*/ position: relative; width: 20px;
height: 61px; float: left;
/* padding: 12px 0px;*/ cursor: pointer; overflow: hidden; } .project .image { position: absolute;
top: 12px;
border: 2px solid #ffffff;
width: 32px;
height: 32px;
background-color: #000000;
background-image: url('files/projects/thumbnails.png'); } .project div { position: absolute; left: 42px;
top: 11px;
width: 132px; color: #ffffff;
font-weight: bold;
font-size: 9px;
line-height: 13px; } .project:hover { -webkit-transition: width 0.5s cubic-bezier(0.190, 1.000, 0.220, 1.000);
-moz-transition: width 0.5s cubic-bezier(0.190, 1.000, 0.220, 1.000);
-ms-transition: width 0.5s cubic-bezier(0.190, 1.000, 0.220, 1.000);
-o-transition: width 0.5s cubic-bezier(0.190, 1.000, 0.220, 1.000);
transition: width 0.5s cubic-bezier(0.190, 1.000, 0.220, 1.000); /* easeOutExpo */ width: 45px; } .project.selected { -webkit-transition: width 0.5s cubic-bezier(0.190, 1.000, 0.220, 1.000);
-moz-transition: width 0.5s cubic-bezier(0.190, 1.000, 0.220, 1.000);
-ms-transition: width 0.5s cubic-bezier(0.190, 1.000, 0.220, 1.000);
-o-transition: width 0.5s cubic-bezier(0.190, 1.000, 0.220, 1.000);
transition: width 0.5s cubic-bezier(0.190, 1.000, 0.220, 1.000); /* easeOutExpo */ width: 180px; } .project.selected:hover { width: 180px; } #viewer { position: absolute;
width: 100%;
top: 61px;
bottom: 0px; } </style>
</head>
<body> <script src="http://cdn.webglstats.com/stat.js" defer="defer" async="async"></script> <div id="nav">
<map name="logo">
<area shape="rect" href="/" coords="12,13,91,32" alt="Mr.doob" />
<area shape="rect" href="http://ricardocabello.com/blog" coords="12,32,44,46" alt="Blog" />
<area shape="rect" href="http://twitter.com/mrdoob" coords="47,32,88,46" alt="Twitter" />
</map>
<img src="files/showcase/logo.png" alt="logo" width="105" style="float:left" usemap="#logo" /> <!-- <a href="/blog"><img src="files/showcase/more.png" width="60" style="float:left" /></a> -->
</div> <div id="viewer">
<iframe id="iframe" style="border:0;width:100%;height:100%"></iframe>
</div> <script> var data = [ {
"id": 154,
"category": 1,
"name": "Kinecdysis Writer",
"timestamp": "2014/04/23",
"link": "http://kinecdysis.sougwen.com/"
}, {
"id": 153,
"category": 1,
"name": "Sporel",
"timestamp": "2013/12/24",
"link": "http://christmasexperiments.com/2013/24/"
}, {
"id": 152,
"category": 1,
"name": "Obsidian",
"timestamp": "2013/07/28",
"link": "/files/temp/xplsv_obsidian/"
}, {
"id": 151,
"category": 1,
"name": "Translucent Network",
"timestamp": "2013/05/28",
"link": "http://www.thebeautybehindit.com/secure/"
}, {
"id": 150,
"category": 2,
"name": "Beach Balls",
"timestamp": "2013/03/24",
"link": "/lab/javascript/beachballs/"
}, /*
{
"id": 149,
"category": 1,
"name": "Just Vined",
"timestamp": "2013/01/27",
"link": "http://justvined.com" },
*/ {
"id": 148,
"category": 1,
"name": "Aaronetrope",
"timestamp": "2012/10/15",
"link": "http://www.aaronkoblin.com/Aaronetrope/",
"link_info": "https://plus.google.com/113862800338869870683/posts/Q3KrZwohayB"
}, {
"id": 147,
"category": 2,
"name": "Google Space",
"timestamp": "2012/10/15",
"link": "/projects/chromeexperiments/google-space/"
}, {
"id": 146,
"category": 2,
"name": "HTML Editor",
"timestamp": "2012/09/02",
"link": "/projects/htmleditor/"
}, {
"id": 145,
"category": 2,
"name": "Webcam Displacement",
"timestamp": "2012/08/25",
"link": "/lab/javascript/webcam/displace/"
}, {
"id": 144,
"category": 2,
"name": "Magic dust",
"timestamp": "2012/07/31",
"link": "/lab/javascript/webgl/particles/magicdust.html"
},
/*
{
"id": 143,
"category": 2,
"name": "DAT particles (thanks zz85)",
"timestamp": "2012/07/31",
"link": "/lab/javascript/webgl/particles/particles_zz85_1m.html"
},
*/
{
"id": 142,
"category": 2,
"name": "Winning Solitaire",
"timestamp": "2012/05/07",
"link": "/lab/javascript/effects/solitaire/"
},
/*
{
"id": 141,
"category": 2,
"name": "IE with WebGL",
"timestamp": "2012/05/03",
"link": "/lab/javascript/webgl/ie/"
}, {
"id": 140,
"category": 1,
"name": "The Single Lane Superhighway",
"timestamp": "2011/12/07",
"link": "http://thesinglelanesuperhighway.com/"
},
*/
{
"id": 139,
"category": 1,
"name": "GLSL Sandbox",
"timestamp": "2011/11/09",
"link": "/projects/glsl_sandbox/"
}, {
"id": 138,
"category": 2,
"name": "Kinect",
"timestamp": "2011/10/30",
"link": "/lab/javascript/webgl/kinect/"
}, {
"id": 137,
"category": 2,
"name": "Voxels liquid",
"timestamp": "2011/10/17",
"link": "/lab/javascript/webgl/voxels_liquid/"
}, {
"id": 135,
"category": 2,
"name": "Sphere",
"timestamp": "2011/08/16",
"link": "/lab/javascript/webgl/sphere/"
}, {
"id": 134,
"category": 2,
"name": "Comments Audio Visualiser",
"timestamp": "2011/06/17",
"link": "/lab/javascript/commentsvisualiser/"
}, {
"id": 133,
"category": 1,
"name": "3 Dreams of Black",
"timestamp": "2011/05/12",
"link": "/projects/google/rome/redirect/"
}, {
"id": 132,
"category": 1,
"name": "WebGL Globe",
"timestamp": "2011/05/05",
"link": "/projects/google/globe/redirect/"
}, {
"id": 131,
"category": 2,
"name": "Clouds",
"timestamp": "2011/03/25",
"link": "/lab/javascript/webgl/clouds/"
}, {
"id": 130,
"category": 2,
"name": "Disturb",
"timestamp": "2010/12/11",
"link": "/lab/javascript/effects/disturb/"
}, {
"id": 129,
"category": 1,
"name": "Voxels",
"timestamp": "2010/11/06",
"link": "/projects/voxels/#A/bnciaTraheakhacTSiahfaotaiafUscierhoShahfShahfafiWheSheUeWSfafhchhefffchhWffahherhpfXTbdUhUhUhVihShaffahfahhcfhYhaffYhahhaeeUhahhahhcdfShYhYhafhUheffdafhcjhShYfYfahfYfahfYfafhcjhYeahfShShWhfVbfdjjhaffaffaffafhafhafhahhahhahhahfahfeehhahfahfaffaffafhafhahhWhfahhWhfWffahhefXhUhehffahiaddbnfffYhcmfrfsaaiU"
}, {
"id": 128,
"category": 2,
"name": "Internet Explorer 6",
"timestamp": "2010/10/07",
"link": "/lab/javascript/effects/ie6/"
}, {
"id": 127,
"category": 1,
"name": "The Wilderness Downtown",
"timestamp": "2010/08/30",
"link": "/projects/radicalmedia/arcadefire/redirect/"
}, {
"id": 126,
"category": 1,
"name": "Or so they say...",
"timestamp": "2010/07/25",
"link": "http://xplsv.com/prods/demos/xplsv_orsotheysay/",
"link_info": "/blog/post/702"
}, {
"id": 125,
"category": 1,
"name": "Multiuser Sketchpad",
"timestamp": "2010/07/7",
"link": "/projects/multiuserpad/",
"link_info": "/blog/post/701"
}, {
"id": 124,
"category": 2,
"name": "Plane Deformations",
"timestamp": "2010/06/12",
"link": "/lab/javascript/effects/plane_deformations/",
"link_info": "/blog/post/699"
}, {
"id": 123,
"category": 2,
"name": "Water Type",
"timestamp": "2010/06/4",
"link": "/lab/javascript/effects/water/02/",
"link_info": "/blog/post/696"
}, {
"id": 122,
"category": 1,
"name": "Three.js",
"timestamp": "2010/04/23",
"link": "http://threejs.org/",
"link_info": "/blog/post/693"
}, {
"id": 120,
"category": 1,
"name": "Harmony",
"timestamp": "2010/03/08",
"link": "/projects/harmony/",
"link_info": "/blog/post/689"
}, {
"id": 119,
"category": 2,
"name": "Zoom blur",
"timestamp": "2010/03/08",
"link": "/lab/javascript/effects/zoomblur/03/"
}, {
"id": 118,
"category": 2,
"name": "Rotozoomer",
"timestamp": "2010/02/26",
"link": "/lab/javascript/effects/rotozoomer/00/"
}, {
"id": 117,
"category": 2,
"name": "Fire",
"timestamp": "2010/02/15",
"link": "/lab/javascript/effects/fire/01/"
}, {
"id": 116,
"category": 2,
"name": "Water Remix",
"timestamp": "2010/02/11",
"link": "/lab/javascript/effects/water/01/"
}, {
"id": 115,
"category": 2,
"name": "Water",
"timestamp": "2010/02/11",
"link": "/lab/javascript/effects/water/00/"
}, {
"id": 99,
"category": 2,
"name": "Branching",
"timestamp": "2009/11/29",
"link": "/lab/javascript/effects/branching/02/",
"link_info": "/blog/post/680"
}, {
"id": 112,
"category": 2,
"name": "Branching",
"timestamp": "2009/11/29",
"link": "/lab/javascript/effects/branching/01_spite_mrdoob/",
"link_info": "/blog/post/680"
}, {
"id": 111,
"category": 2,
"name": "Branching",
"timestamp": "2009/11/29",
"link": "/lab/javascript/effects/branching/01/",
"link_info": "/blog/post/680"
}, {
"id": 110,
"category": 2,
"name": "Branching",
"timestamp": "2009/11/29",
"link": "/lab/javascript/effects/branching/00/",
"link_info": "/blog/post/680"
}, {
"id": 98,
"category": 2,
"name": "3D Waveform",
"timestamp": "2009/11/09",
"link": "/lab/javascript/webgl/waveform/",
"link_info": "/blog/post/677"
}, {
"id": 107,
"category": 2,
"name": "Strange Attractor",
"timestamp": "2009/11/04",
"link": "/lab/javascript/strangeattractor/"
}, {
"id": 106,
"category": 2,
"name": "Checkbox Painter",
"timestamp": "2009/11/04",
"link": "/lab/javascript/checkbox_painter/"
}, {
"id": 105,
"category": 2,
"name": "Checkboxes Ball",
"timestamp": "2009/11/04",
"link": "/lab/javascript/checkboxes/"
}, {
"id": 103,
"category": 1,
"name": "60fps",
"timestamp": "2009/09/10",
"link": "http://60fps.com"
}, {
"id": 97,
"category": 2,
"name": "Depth of Field",
"timestamp": "2009/06/10",
"link": "/projects/chromeexperiments/depth_of_field/"
}, {
"id": 96,
"category": 1,
"name": "Google Sphere",
"timestamp": "2009/05/28",
"link": "/projects/chromeexperiments/google-sphere/"
}, {
"id": 92,
"category": 1,
"name": "Google Gravity",
"timestamp": "2009/03/18",
"link": "/projects/chromeexperiments/google-gravity/",
"link_info": "/blog/post/644"
}, {
"id": 91,
"category": 1,
"name": "Ball Pool",
"timestamp": "2009/02/12",
"link": "/projects/chromeexperiments/ball-pool/",
"link_info": "/blog/post/644"
}, {
"id": 83,
"category": 1,
"name": "Youtube, now in Super HD!",
"timestamp": "2008/09/30",
"link": "/lab/youtube/superHD/",
"link_info": "/blog/post/597"
} ]; var nav = document.getElementById( 'nav' );
var viewer = document.getElementById( 'viewer' );
var iframe = document.getElementById( 'iframe' ); var selected, divs = {}; init(); function init () { buildNav( data ); if ( window.location.hash ) { var hash = window.location.hash.substr( 1 ); var id = hash.split('/')[1]; for ( var i in data ) { if ( data[ i ].id == id ) { loadProject( data[ i ] );
break; } } } else { loadProject( data[ 0 ] ); } window.addEventListener( 'popstate', function ( event ) { if ( event.state != null ) loadProject( event.state ); }, false ); }; function buildNav( projects ) { for ( var i in projects ) { nav.appendChild( buildProject( projects[ i ] ) ); } } function buildProject( data ) { var div = document.createElement( 'div' );
div.className = 'project';
div.addEventListener( 'click', function ( event ) { loadProject( data );
window.location.hash = '/' + data.id + '/' + data.name.toLowerCase().replace( /\ /gi, '_' ).replace( /[:.,\'()%]/gi, '' ); }, false ); var id = data.id - 1;
var x = id % 32;
var y = Math.floor( id / 32 ); var span = document.createElement( 'span' );
span.className = 'image';
span.style.backgroundPosition = '-' + ( x * 32 ) + 'px -' + ( y * 32 ) + 'px';
div.appendChild( span ); var text = document.createElement( 'div' );
text.innerHTML = data.name + '<br>';
text.innerHTML += '<span style="color:#606060">' + data.timestamp + '</spa><br>';
text.innerHTML += '<a href="' + data.link + '" target="_blank"><img src="files/link.png" style="margin-top:1px"></a>'; // ' + data.link.replace( /http:\/\//gi, '' ) +
div.appendChild( text ); divs[ data.id ] = div; return div; } function loadProject( data ) { if ( selected ) { selected.className = 'project'; } selected = divs[ data.id ];
selected.className = 'project selected'; document.title = 'Mr.doob | ' + data.name;
iframe.src = data.link; } </script>
</body>
</html>

三维云模拟Three.js的更多相关文章

  1. [LiDAR数据模拟]系列(2) HELIOS的TLS点云模拟流程

    关键词:地基激光雷达 点云模拟 XML文件 作者:李二 日期:07/05/2020 - 08/05/2020 我目前仅仅使用了TLS模式进行模拟,所以先讲一下TLS的模拟经验. ALS和MLS的模拟, ...

  2. 词云(wordcloud2.js js2wordcloud.js)

    npm安装: npm install js2wordcloud --save 用法 var wc = new Js2WordCloud(document.getElementById('contain ...

  3. 【Nodejs】392- 基于阿里云的 Node.js 稳定性实践

    前言 如果你看过 2018 Node.js 的用户报告,你会发现 Node.js 的使用有了进一步的增长,同时也出现了一些新的趋势. Node.js 的开发者更多的开始使用容器并积极的拥抱 Serve ...

  4. 阿里云部署Node.js项目(CentOS)

    Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,用来方便地搭建快速的易于扩展的网络应用.Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又 ...

  5. 基于Apache的阿里云部署Node.js服务器(Windows环境)

    1 前言 由于nodejs项目对方开放了多个端口,而且阿里云上的Apache服务器(windows)已经挂载了网站,此时需要把此项目也挂上去,网上查询资料,方法略少,基本是基于nginx版本的. 2  ...

  6. 海康威视 - 萤石云开放平台 js 版

    开放平台 https://open.ys7.com/mobile/download.html API http://open.ys7.com/doc/zh/uikit/uikit_javascript ...

  7. PhantomJS 和Selenium模拟页面js点击

    由于自己不怎么会javascripts,无法找全所有的参数进行模拟提交,所以只能寻求Selenium和PhantpmJS的方式. 先说下ubuntu上怎么安装相应的环境,尤其PhantomJS安装比较 ...

  8. 基于Babylon.js编写宇宙飞船模拟程序1——程序基础结构、物理引擎使用、三维罗盘

    计划做一个宇宙飞船模拟程序,首先做一些技术准备. 可以访问https://ljzc002.github.io/test/Spacetest/HTML/PAGE/spacetestwp2.html查看测 ...

  9. 如何用webgl(three.js)搭建处理3D隧道、3D桥梁、3D物联网设备、3D高速公路、三维隧道桥梁设备监控-第十一课

    开篇废话: 跟之前的文章一样,开篇之前,总要写几句废话,大抵也是没啥人看仔细文字,索性我也想到啥就聊啥吧. 这次聊聊疫情,这次全国多地的疫情挺严重的,本人身处深圳,深圳这几日报导都是几十几十的新增病例 ...

随机推荐

  1. 金山词霸每日一句开放平台 .NET demo

    先附上地址:http://open.iciba.com/?c=api 小金山提供了2种获取数据的方式 1. 通过填入自己的网站名称.网址.邮箱地址 来生成一段javascript脚本,直接将生成的代码 ...

  2. java 复习

    整型: byte 1 short 2 int 4 long 80b1001 1_233_32 1341414141414Ljava 没有无符号类型浮点型:float 4 double 812.2f 无 ...

  3. Split字符串分割函数

    非常非常常用的一个函数Split字符串分割函数. Dim myTest myTest = "aaa/bbb/ccc/ddd/eee/fff/ggg" Dim arrTest arr ...

  4. zoj 2112 Dynamic Rankings

    原题链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1112 #include<cstdio> #include ...

  5. nodejs base64 编码解码

    普通字符串 编码解码: var b = new Buffer('JavaScript'); var s = b.toString('base64'); // SmF2YVNjcmlwdA== var ...

  6. Apple Watch应用开发经验谈:我遇到的那些坑

    本文作者张忠良是滴答清单Apple Watch版应用的开发工程师,他用了一周的时间使用纯Objective-C语言完成了Apple Watch版滴答清单应用的开发工作.在这里,他从开发角度阐述了个人对 ...

  7. [转]Ubuntu中root用户和user用户的相互切换

    [转]Ubuntu中root用户和user用户的相互切换 http://www.cnblogs.com/weiweiqiao99/archive/2010/11/10/1873761.html Ubu ...

  8. run.do 文件编写说明

    #停止仿真quit -sim#清除信息.main clear #建立物理路径libvlib ./lib/#建立物理路径work_avlib ./lib/work_a/#映射逻辑库至物理路径vmap b ...

  9. Python实现ID3(信息增益)

    Python实现ID3(信息增益) 运行环境 Pyhton3 treePlotter模块(画图所需,不画图可不必) matplotlib(如果使用上面的模块必须) 计算过程 st=>start: ...

  10. c读取文本文档

    想数一下文本文档一共有多少行,写了个小程序 1.用fopen()以只读方式打开文件 2.用fgetc()获取文件流中的字符内容 3.如果字符内容为'\n'换行符,count++ 最后输出count的值 ...