xzw 2 年之前
父节点
当前提交
a9fb1f0553
共有 2 个文件被更改,包括 39 次插入27 次删除
  1. 2 2
      src/custom/note.txt
  2. 37 25
      src/custom/three.shim.js

+ 2 - 2
src/custom/note.txt

@@ -16,13 +16,13 @@ PointAttributes.js 为什么不改也可以?
 ----
 因为viewer太复杂了就去掉了所有和sidebar有关的代码(没完全继承原先的viewer的函数)。也就是说不支持非official的情况(no sidebar)。需要用这个测试的需要换分支。
 鉴于经常要测试,需要保持两个分支代码同步更新。
-
+libs文件里都没还原
 
 Potree.js文件随便改
  
 
 
-
+vr也被去掉。(webxr) https://potree.org/potree/examples/vr_dechen_cave.html 可调
 
 ======================
 

+ 37 - 25
src/custom/three.shim.js

@@ -187,47 +187,59 @@ THREE.EventDispatcher.prototype.removeAllListeners = function(){  //add
 
 THREE.EventDispatcher.prototype.dispatchEvent = function(event){ 
 	if(typeof event == 'string'){//add
-            event = {type:event}
-        }
-		if ( this._listeners === undefined ) return;
+        event = {type:event}
+    }
+    if ( this._listeners === undefined ) return;
 
-		const listeners = this._listeners;
-		const listenerArray = listeners[ event.type ];
+    const listeners = this._listeners;
+    const listenerArray = listeners[ event.type ];
 
-		if ( listenerArray !== undefined ) {
+    if ( listenerArray !== undefined ) {
 
-			event.target = this;
+        event.target = this;
 
-			// Make a copy, in case listeners are removed while iterating.
-			 
-            for(let {listener} of listenerArray.slice(0)){
-				let result = listener.call(this, event);   //add stopContinue
-                if(result && result.stopContinue){
-                    break
-                }
-			}
+        // Make a copy, in case listeners are removed while iterating.
+         
+        for(let {listener} of listenerArray.slice(0)){
+            let result = listener.call(this, event);   //add stopContinue
+            if(result && result.stopContinue){
+                break
+            }
+        }
 
-		}
+    }
 }
 
 THREE.EventDispatcher.prototype.traverse = function(callback){ 
-		let result = callback( this );
-        if(result && result.stopContinue){//xzw add
-            return 
-        }
-             
-		const children = this.children;
+    let result = callback( this );
+    if(result && result.stopContinue){//xzw add
+        return 
+    }
+         
+    const children = this.children;
 
-		for ( let i = 0, l = children.length; i < l; i ++ ) {
+    for ( let i = 0, l = children.length; i < l; i ++ ) {
 
-			children[ i ].traverse( callback );
+        children[ i ].traverse( callback );
 
-		}
+    }
 }
 
 
 
+THREE.Object3D.prototype.traverse = function ( callback ) {
+
+    let result = callback( this );
+    if(result && result.stopContinue){//xzw add
+        return 
+    }
+         
+    const children = this.children;
 
+    for ( let i = 0, l = children.length; i < l; i ++ ) {  
+        children[ i ].traverse( callback ); 
+    } 
+}