完整加载兔子vtk模型

摘要:
˂!

<!DOCTYPE html>

<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Document</title>
</head>
<body>
<div id="info"></div>
<script src="http://t.zoukankan.com/vtkJS/three.js"></script>
<script src="http://t.zoukankan.com/vtkJS/controls/TrackballControls.js"></script>
<script src="http://t.zoukankan.com/vtkJS/loaders/VTKLoader.js"></script>
<script src="http://t.zoukankan.com/vtkJS/Detector.js"></script>
<script src="http://t.zoukankan.com/vtkJS/stats.js"></script>
<script>
if(!Detector.webgl) Detector.addGetWebGLMessage();
var container,stats;
var camera,controls,scene,renderer;
var cross;
init();
animate();

function init(){
camera = new THREE.PerspectiveCamera(60,window.innerWidth/window.innerHeight,0.01, 1e10 );
camera.position.z = 0.2;
controls = new THREE.TrackballControls(camera);

controls.rotateSpeed = 5.0;
controls.zoomSpeed = 5;
controls.panSpeed = 2;

controls.noZoom = false;
controls.noPan = false;

controls.staticMoving = true;
controls.dynamicDampingFactor =0.3;

scene = new THREE.Scene();
scene.add(camera);

//light
var dirLight = new THREE.DirectionalLight(0xffffff);
dirLight.position.set(200,200,1000).normalize();

camera.add(dirLight);
camera.add(dirLight.target);
var material = new THREE.MeshLambertMaterial({ color: 0xffffff,size: THREE.DoubleSize});
var loader = new THREE.VTKLoader();
loader.addEventListener('load',function(event){
var geometry = event.content;
var mesh = new THREE.Mesh(geometry,material);
mesh.position.setY(-0.09);
scene.add(mesh);
})
loader.load('./vtk/bunny.vtk');

renderer = new THREE.WebGLRenderer({ antialias: false});
renderer.setClearColorHex(0x000000,1);
renderer.setSize(window.innerWidth,window.innerHeight);
container = document.createElement('div');
document.body.appendChild(container);
container.appendChild(renderer.domElement);

stats = new Stats();
stats.domElement.style.position ="absolute";
stats.domElement.style.top = "0px";
container.appendChild(stats.domElement);

window.addEventListener('resize',onWindowResize,false);

}

function onWindowResize(){
camera.aspect = window.innerWidth/window.innerHeight;
camera.updateProjectionMatrix();
renderer.setSize(window.innerWidth,window.innerHeight);
controls.handleResize();
}
function animate(){
requestAnimationFrame(animate);
controls.update();
renderer.render(scene,camera);
stats.update();
}
</script>
</body>
</html>

免责声明:文章转载自《完整加载兔子vtk模型》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Quartz Scheduler(2.2.1)给source insight添加.cc的C++文件后缀识别下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

JavaScript-基础知识

一、JavaScript-简介Web前端有三层: HTML:从语义的角度,描述页面结构 CSS:从审美的角度,描述样式(美化页面) JavaScript:从交互的角度,描述行为(提升用户体验) JavaScript历史背景介绍 布兰登 • 艾奇(Brendan Eich,1961年~),1995年在网景公司,发明的JavaScript。 开始JavaS...

ORM框架:Entity Framework

ORM框架:Entity Framework 1.Entity Framework的概念 什么是ORM 对象-关系映射(Object/Relational Mapping,简称ORM),用来把对象模型表示的对象映射到基于SQL的关系模型数据库结构中去。这样在具体的操作实体对象的时候,就不需要再去和复杂的SQL语句打交道,只需简单的操作实体对象的属性和方法。...

net core体系-网络数据采集(AngleSharp)-1初探

有这么一本Python的书: <<Python 网络数据采集>> 我准备用.NET Core及第三方库实现里面所有的例子. 这是第一部分, 主要使用的是AngleSharp:https://anglesharp.github.io/ (文章的章节书与该书是对应的) 发送Http请求 在python里面这样发送http请求, 它使...

Cesium学习笔记(五):3D 模型 (http://blog.csdn.net/umgsoil/article/details/74572877)

Cesium支持3D模型,包括关键帧动画,皮肤的改变还有单个节点的选择等,Cesium还提供了了一个基于网络的工具,将COLLADA模型转换为glTF,方便和优化模型添加 还记得我们在实体添加的时候添加过一个3D模型么,具体是这样的 var viewer = new Cesium.Viewer('cesiumContainer'); var entity...

移植UE4的Spline与SplineMesh组件到Unity5

一个月前,想开始看下UE4的源码,刚开始以为有Ogre1.9与Ogre2.1源码的基础 ,应该还容易理解,把源码下起后,发现我还是想的太简单了,UE4的代码量对比Ogre应该多了一个量级,毕竟Ogre只是一个渲染引擎,而UE4包含渲染,AI,网络,编辑器等等,所以要理解UE4的源码,应该带着目地去看,这样容易理解。 在看UE4提供的ContentExamp...

【Python之路】特别篇--ECMA对象、DOM对象、BOM对象

ECMA对象从传统意义上来说,ECMAScript 并不真正具有类。事实上,除了说明不存在类,在 ECMA-262 中根本没有出现“类”这个词。 ECMAScript 定义了“对象定义”,逻辑上等价于其他程序设计语言中的类。 var o = new Object(); 对象的概念与分类: 由ECMAScript定义的本地对象.独立于宿主环境的 ECMAS...