فهرست منبع

Merged the new Example with the current vtk example.

And also deleted some unnecessary files.
Sagar Dwibhashyam 10 سال پیش
والد
کامیت
e8e8a7bfb5
4فایلهای تغییر یافته به همراه52 افزوده شده و 177 حذف شده
  1. 1 1
      examples/js/libs/inflate.min.js
  2. 0 4
      examples/js/libs/inflate.min.js.map
  3. 51 4
      examples/webgl_loader_vtk.html
  4. 0 168
      examples/webgl_loader_xml_vtk.html

+ 1 - 1
examples/js/libs/inflate.min.js

@@ -12,4 +12,4 @@ u.prototype.e=function(){var c=new (s?Uint8Array:Array)(this.b-32768),d=this.b-3
 u.prototype.A=function(c){var d,a=this.input.length/this.a+1|0,b,e,f,g=this.input,h=this.c;c&&("number"===typeof c.p&&(a=c.p),"number"===typeof c.v&&(a+=c.v));2>a?(b=(g.length-this.a)/this.o[2],f=258*(b/2)|0,e=f<h.length?h.length+f:h.length<<1):e=h.length*a;s?(d=new Uint8Array(e),d.set(h)):d=h;return this.c=d};
 u.prototype.n=function(){var c=0,d=this.c,a=this.g,b,e=new (s?Uint8Array:Array)(this.l+(this.b-32768)),f,g,h,k;if(0===a.length)return s?this.c.subarray(32768,this.b):this.c.slice(32768,this.b);f=0;for(g=a.length;f<g;++f){b=a[f];h=0;for(k=b.length;h<k;++h)e[c++]=b[h]}f=32768;for(g=this.b;f<g;++f)e[c++]=d[f];this.g=[];return this.buffer=e};
 u.prototype.w=function(){var c,d=this.b;s?this.s?(c=new Uint8Array(d),c.set(this.c.subarray(0,d))):c=this.c.subarray(0,d):(this.c.length>d&&(this.c.length=d),c=this.c);return this.buffer=c};function U(c,d){var a,b;this.input=c;this.a=0;if(d||!(d={}))d.index&&(this.a=d.index),d.verify&&(this.B=d.verify);a=c[this.a++];b=c[this.a++];switch(a&15){case V:this.method=V;break;default:throw Error("unsupported compression method");}if(0!==((a<<8)+b)%31)throw Error("invalid fcheck flag:"+((a<<8)+b)%31);if(b&32)throw Error("fdict flag is not supported");this.r=new u(c,{index:this.a,bufferSize:d.bufferSize,bufferType:d.bufferType,resize:d.resize})}
-U.prototype.k=function(){var c=this.input,d,a;d=this.r.k();this.a=this.r.a;if(this.B){a=(c[this.a++]<<24|c[this.a++]<<16|c[this.a++]<<8|c[this.a++])>>>0;var b=d;if("string"===typeof b){var e=b.split(""),f,g;f=0;for(g=e.length;f<g;f++)e[f]=(e[f].charCodeAt(0)&255)>>>0;b=e}for(var h=1,k=0,l=b.length,p,n=0;0<l;){p=1024<l?1024:l;l-=p;do h+=b[n++],k+=h;while(--p);h%=65521;k%=65521}if(a!==(k<<16|h)>>>0)throw Error("invalid adler-32 checksum");}return d};var V=8;q("Zlib.Inflate",U);q("Zlib.Inflate.prototype.decompress",U.prototype.k);var W={ADAPTIVE:x.t,BLOCK:x.u},X,Y,Z,$;if(Object.keys)X=Object.keys(W);else for(Y in X=[],Z=0,W)X[Z++]=Y;Z=0;for($=X.length;Z<$;++Z)Y=X[Z],q("Zlib.Inflate.BufferType."+Y,W[Y]);}).call(this); //@ sourceMappingURL=inflate.min.js.map
+U.prototype.k=function(){var c=this.input,d,a;d=this.r.k();this.a=this.r.a;if(this.B){a=(c[this.a++]<<24|c[this.a++]<<16|c[this.a++]<<8|c[this.a++])>>>0;var b=d;if("string"===typeof b){var e=b.split(""),f,g;f=0;for(g=e.length;f<g;f++)e[f]=(e[f].charCodeAt(0)&255)>>>0;b=e}for(var h=1,k=0,l=b.length,p,n=0;0<l;){p=1024<l?1024:l;l-=p;do h+=b[n++],k+=h;while(--p);h%=65521;k%=65521}if(a!==(k<<16|h)>>>0)throw Error("invalid adler-32 checksum");}return d};var V=8;q("Zlib.Inflate",U);q("Zlib.Inflate.prototype.decompress",U.prototype.k);var W={ADAPTIVE:x.t,BLOCK:x.u},X,Y,Z,$;if(Object.keys)X=Object.keys(W);else for(Y in X=[],Z=0,W)X[Z++]=Y;Z=0;for($=X.length;Z<$;++Z)Y=X[Z],q("Zlib.Inflate.BufferType."+Y,W[Y]);}).call(this);

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 4
examples/js/libs/inflate.min.js.map


+ 51 - 4
examples/webgl_loader_vtk.html

@@ -28,10 +28,11 @@
 	<body>
 		<div id="info">
 		<a href="http://threejs.org" target="_blank">three.js</a> -
-		vtk format loader test -
-		model from <a href="http://www.cc.gatech.edu/projects/large_models/" target="_blank">The GeorgiaTech Lagre Geometric Model Archive</a>,
+		vtk formats loader test -
+		Legacy vtk model from <a href="http://www.cc.gatech.edu/projects/large_models/" target="_blank">The GeorgiaTech Lagre Geometric Model Archive</a>,
 		</div>
 
+		<script src='js/libs/inflate.min.js'></script>
 		<script src="../build/three.min.js"></script>
 
 		<script src="js/controls/TrackballControls.js"></script>
@@ -87,15 +88,61 @@
 
 				var loader = new THREE.VTKLoader();
 				loader.load( "models/vtk/bunny.vtk", function ( geometry ) {
-
+					geometry.center();
 					geometry.computeVertexNormals();
 
 					var mesh = new THREE.Mesh( geometry, material );
-					mesh.position.setY( - 0.09 );
+					mesh.position.set( -0.075,0.005,0 );
+					mesh.scale.multiplyScalar( 0.2 );
 					scene.add( mesh );
 
 				} );
 
+				var loader1 = new THREE.VTKLoader();
+				loader1.load( 'models/vtk/cube_ascii.vtp', function ( geometry ) {
+	        geometry.computeVertexNormals();
+	        geometry.center();
+
+	        var material = new THREE.MeshLambertMaterial( { color: 0x00ff00, side: THREE.DoubleSide } );
+	        var mesh = new THREE.Mesh( geometry, material );
+
+	        mesh.position.set(-0.025,0,0);
+	        mesh.scale.multiplyScalar( 0.01 );
+
+
+	        scene.add( mesh );
+	      });
+
+				var loader2 = new THREE.VTKLoader();
+				loader2.load( 'models/vtk/cube_binary.vtp', function ( geometry ) {
+	        geometry.computeVertexNormals();
+	        geometry.center();
+
+	        var material = new THREE.MeshLambertMaterial( { color: 0x0000ff, side: THREE.DoubleSide } );
+	        var mesh = new THREE.Mesh( geometry, material );
+
+	        mesh.position.set(0.025,0,0);
+	        mesh.scale.multiplyScalar( 0.01 );
+
+
+	        scene.add( mesh );
+	      });
+
+				var loader3 = new THREE.VTKLoader();
+				loader3.load( 'models/vtk/cube_no_compression.vtp', function ( geometry ) {
+	        geometry.computeVertexNormals();
+	        geometry.center();
+
+	        var material = new THREE.MeshLambertMaterial( { color: 0xff0000, side: THREE.DoubleSide } );
+	        var mesh = new THREE.Mesh( geometry, material );
+
+	        mesh.position.set(0.075,0,0);
+	        mesh.scale.multiplyScalar( 0.01 );
+
+
+	        scene.add( mesh );
+	      });
+
 				// renderer
 
 				renderer = new THREE.WebGLRenderer( { antialias: false } );

+ 0 - 168
examples/webgl_loader_xml_vtk.html

@@ -1,168 +0,0 @@
-<!DOCTYPE html>
-<html>
-  <head>
-    <meta charset="utf-8">
-    <title></title>
-    <script src="../build/three.min.js"></script>
-		<script src="js/controls/OrbitControls.js"></script>
-    <script src='js/libs/inflate.min.js'></script>
-		<script src="js/loaders/VTKLoader.js"></script>
-		<script src="js/Detector.js"></script>
-		<script src="js/libs/stats.min.js"></script>
-    <style>
-      body {
-        font-family: Monospace;
-        background-color: #000000;
-        margin: 0px;
-        overflow: hidden;
-      }
-
-      #info {
-        color: #fff;
-        position: absolute;
-        top: 10px;
-        width: 100%;
-        text-align: center;
-        z-index: 100;
-        display:block;
-      }
-
-      a { color: skyblue }
-      .button { background:#999; color:#eee; padding:0.2em 0.5em; cursor:pointer }
-      .highlight { background:orange; color:#fff; }
-
-      span {
-        display: inline-block;
-        width: 60px;
-        float: left;
-        text-align: center;
-      }
-    </style>
-  </head>
-  <body>
-    <script>
-    if ( ! Detector.webgl ) Detector.addGetWebGLMessage();
-
-    var container, stats, camera, cameraTarget, scene, renderer, controls;
-
-    init();
-    animate();
-
-    function init() {
-      scene = new THREE.Scene();
-      scene.fog = new THREE.FogExp2( 0x2d2d2d, 0.002 );
-
-      // renderer
-      renderer = new THREE.WebGLRenderer( { antialias: false } );
-      renderer.setClearColor( scene.fog.color );
-      renderer.setPixelRatio( window.devicePixelRatio );
-      renderer.setSize( window.innerWidth, window.innerHeight );
-
-      container = document.createElement( 'div' );
-      document.body.appendChild(container);
-      container.appendChild( renderer.domElement );
-
-      camera = new THREE.PerspectiveCamera( 35, window.innerWidth / window.innerHeight, 1, 15 );
-      camera.position.set( 1, 1, 1 );
-      controls = new THREE.OrbitControls( camera, renderer.domElement );
-      controls.enableDamping = true;
-      controls.dampingFactor = 0.25;
-      controls.enableZoom = true;
-
-      // vtk file
-      var loader = new THREE.VTKLoader();
-      loader.load( 'models/vtk/cube_ascii.vtp', function ( geometry ) {
-        //geometry.mergeVertices();
-        geometry.computeFaceNormals();
-        geometry.computeVertexNormals();
-        //geometry.center();
-
-        var material = new THREE.MeshLambertMaterial( { color: 0x00ff00 } );
-        var mesh = new THREE.Mesh( geometry, material );
-
-        mesh.position.set(0,0,0);
-        mesh.rotation.set(Math.PI/2,0,0);
-        mesh.scale.multiplyScalar( 0.1 );
-        mesh.updateMatrix();
-        mesh.matrixAutoUpdate = false;
-
-        scene.add( mesh );
-      });
-
-      loader.load( 'models/vtk/cube_binary.vtp', function ( geometry1 ) {
-        //geometry.mergeVertices();
-        geometry1.computeFaceNormals();
-        geometry1.computeVertexNormals();
-        //geometry.center();
-
-        var material1 = new THREE.MeshLambertMaterial( { color: 0x0000ff } );
-        var mesh1 = new THREE.Mesh( geometry1, material1 );
-
-        mesh1.position.set(0.5,0,0);
-        mesh1.rotation.set(Math.PI/2,0,0);
-        mesh1.scale.multiplyScalar( 0.1 );
-        mesh1.updateMatrix();
-        mesh1.matrixAutoUpdate = false;
-
-        scene.add( mesh1 );
-      });
-
-      loader.load( 'models/vtk/cube_no_compression.vtp', function ( geometry2 ) {
-        //geometry.mergeVertices();
-        geometry2.computeFaceNormals();
-        geometry2.computeVertexNormals();
-        //geometry.center();
-
-        var material2 = new THREE.MeshLambertMaterial( { color: 0xff0000 } );
-        var mesh2 = new THREE.Mesh( geometry2, material2 );
-
-        mesh2.position.set(-0.5,0,0);
-        mesh2.scale.multiplyScalar( 0.1 );
-        mesh2.matrixAutoUpdate = true;
-
-        scene.add( mesh2 );
-      });
-
-      // Lights
-      light = new THREE.DirectionalLight( 0xffffff );
-      light.position.set( 5, 5, 5 );
-      scene.add( light );
-
-      light = new THREE.DirectionalLight( 0xffffff );
-      light.position.set( -5, -5, -5 );
-      scene.add( light );
-
-      light = new THREE.AmbientLight( 0x222222 );
-      scene.add( light );
-
-      // stats
-      stats = new Stats();
-      stats.domElement.style.position = 'absolute';
-      stats.domElement.style.top = '0px';
-      stats.domElement.style.zIndex = 100;
-      container.appendChild( stats.domElement );
-
-      // resize
-      window.addEventListener( 'resize', onWindowResize, false );
-    }
-
-    function onWindowResize() {
-      camera.aspect = window.innerWidth / window.innerHeight;
-      camera.updateProjectionMatrix();
-      renderer.setSize( window.innerWidth, window.innerHeight );
-    }
-
-    function animate() {
-      requestAnimationFrame( animate );
-      stats.update();
-      controls.update();
-      render();
-    }
-
-    function render() {
-      renderer.render( scene, camera );
-    }
-
-    </script>
-  </body>
-</html>

برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است

粤ICP备19079148号