|
@@ -37569,8 +37569,8 @@
|
|
for ( let i = 0, il = callbacks.length; i < il; i ++ ) {
|
|
for ( let i = 0, il = callbacks.length; i < il; i ++ ) {
|
|
|
|
|
|
const callback = callbacks[ i ];
|
|
const callback = callbacks[ i ];
|
|
- if ( callback.onLoad ) callback.onLoad( response );
|
|
|
|
-
|
|
|
|
|
|
+ if ( callback.onLoad ) callback.onLoad( response, event.total); //xzw add event.total
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
|
|
scope.manager.itemEnd( url );
|
|
scope.manager.itemEnd( url );
|
|
@@ -63791,8 +63791,7 @@ void main() {
|
|
let isFirstLoad = !prop.position; //在编辑时用户添加的
|
|
let isFirstLoad = !prop.position; //在编辑时用户添加的
|
|
|
|
|
|
let loadDone = (model)=>{
|
|
let loadDone = (model)=>{
|
|
- model.dataset_id = prop.id;
|
|
|
|
-
|
|
|
|
|
|
+
|
|
if(isFirstLoad){
|
|
if(isFirstLoad){
|
|
modelEditing = model;
|
|
modelEditing = model;
|
|
MergeEditor.setModelBtmHeight(model, 0); //默认离地高度为0
|
|
MergeEditor.setModelBtmHeight(model, 0); //默认离地高度为0
|
|
@@ -63909,6 +63908,7 @@ void main() {
|
|
|
|
|
|
let info = {
|
|
let info = {
|
|
name: prop.type,
|
|
name: prop.type,
|
|
|
|
+ id: prop.id,
|
|
transform : {
|
|
transform : {
|
|
position : prop.position,
|
|
position : prop.position,
|
|
rotation : new Euler().setFromVector3(prop.rotation),
|
|
rotation : new Euler().setFromVector3(prop.rotation),
|
|
@@ -84043,9 +84043,9 @@ void main() {
|
|
return PanoEditor.rotateSideCamera(-e.drag.pointerDelta.x)
|
|
return PanoEditor.rotateSideCamera(-e.drag.pointerDelta.x)
|
|
}
|
|
}
|
|
}else if(Potree.settings.editType == 'merge'){
|
|
}else if(Potree.settings.editType == 'merge'){
|
|
- if(e.buttons === Buttons.LEFT && viewport.alignment.rotateSide){
|
|
|
|
|
|
+ if(e.buttons === Buttons.LEFT && viewport.alignment && viewport.alignment.rotateSide){
|
|
return MergeEditor.rotateSideCamera(-e.drag.pointerDelta.x)
|
|
return MergeEditor.rotateSideCamera(-e.drag.pointerDelta.x)
|
|
- }
|
|
|
|
|
|
+ }
|
|
|
|
|
|
}else {
|
|
}else {
|
|
/* if(Alignment.selectedClouds && Alignment.selectedClouds.length){
|
|
/* if(Alignment.selectedClouds && Alignment.selectedClouds.length){
|
|
@@ -85972,7 +85972,7 @@ void main() {
|
|
//add for测量线,在检测到sphere时优先选中sphere而非线
|
|
//add for测量线,在检测到sphere时优先选中sphere而非线
|
|
intersections = intersections.sort(function(a,b){return b.object.renderOrder-a.object.renderOrder}); // 降序
|
|
intersections = intersections.sort(function(a,b){return b.object.renderOrder-a.object.renderOrder}); // 降序
|
|
|
|
|
|
-
|
|
|
|
|
|
+ console.log('getHoveredElement ', intersections);
|
|
return intersections;
|
|
return intersections;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -105901,13 +105901,13 @@ ENDSEC
|
|
loader.setRequestHeader( this.requestHeader );
|
|
loader.setRequestHeader( this.requestHeader );
|
|
loader.setWithCredentials( this.withCredentials );
|
|
loader.setWithCredentials( this.withCredentials );
|
|
|
|
|
|
- loader.load( url, function ( data ) {
|
|
|
|
|
|
+ loader.load( url, function ( data, total ) {// xzw add total
|
|
|
|
|
|
try {
|
|
try {
|
|
|
|
|
|
scope.parse( data, resourcePath, function ( gltf ) {
|
|
scope.parse( data, resourcePath, function ( gltf ) {
|
|
|
|
|
|
- onLoad( gltf );
|
|
|
|
|
|
+ onLoad( gltf, total );
|
|
|
|
|
|
scope.manager.itemEnd( url );
|
|
scope.manager.itemEnd( url );
|
|
|
|
|
|
@@ -115072,8 +115072,8 @@ ENDSEC
|
|
let ground = this.ground = new InfiniteGridHelper(1, 10000, new Color('#fff'), 10000, 0.2, 0.3);
|
|
let ground = this.ground = new InfiniteGridHelper(1, 10000, new Color('#fff'), 10000, 0.2, 0.3);
|
|
viewer.scene.scene.add(ground);
|
|
viewer.scene.scene.add(ground);
|
|
//再加两条线否则在正侧边看不到
|
|
//再加两条线否则在正侧边看不到
|
|
- let line1 = LineDraw.createLine([new Vector3(-10000, 0, 0),new Vector3(10000, 0, 0) ], {color:'#666'});
|
|
|
|
- let line2 = LineDraw.createLine([new Vector3(0, -10000, 0),new Vector3(0, 10000, 0) ], {color:'#666'});
|
|
|
|
|
|
+ let line1 = LineDraw.createLine([new Vector3(-10000, 0, 0),new Vector3(10000, 0, 0) ], {color:'#666', dontAlwaysSeen:true});
|
|
|
|
+ let line2 = LineDraw.createLine([new Vector3(0, -10000, 0),new Vector3(0, 10000, 0) ], {color:'#666', dontAlwaysSeen:true});
|
|
ground.renderOrder = line1.renderOrder + 1;
|
|
ground.renderOrder = line1.renderOrder + 1;
|
|
ground.add(line1);
|
|
ground.add(line1);
|
|
ground.add(line2);
|
|
ground.add(line2);
|
|
@@ -118911,7 +118911,7 @@ ENDSEC
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- this.switchView('right'/* 'top' */);
|
|
|
|
|
|
+ this.switchView('top');
|
|
|
|
|
|
SiteModel$1.bus.addEventListener('initDataDone',()=>{
|
|
SiteModel$1.bus.addEventListener('initDataDone',()=>{
|
|
this.gotoFloor(SiteModel$1.entities.find(e=>e.buildType == 'floor')); //任意一层
|
|
this.gotoFloor(SiteModel$1.entities.find(e=>e.buildType == 'floor')); //任意一层
|
|
@@ -120294,11 +120294,11 @@ ENDSEC
|
|
loader.setPath( this.path );
|
|
loader.setPath( this.path );
|
|
loader.setRequestHeader( this.requestHeader );
|
|
loader.setRequestHeader( this.requestHeader );
|
|
loader.setWithCredentials( this.withCredentials );
|
|
loader.setWithCredentials( this.withCredentials );
|
|
- loader.load( url, function ( text ) {
|
|
|
|
|
|
+ loader.load( url, function ( text , total ) {// xzw add total
|
|
|
|
|
|
try {
|
|
try {
|
|
|
|
|
|
- onLoad( scope.parse( text ) );
|
|
|
|
|
|
+ onLoad( scope.parse( text ) , total );
|
|
|
|
|
|
} catch ( e ) {
|
|
} catch ( e ) {
|
|
|
|
|
|
@@ -127357,10 +127357,13 @@ ENDSEC
|
|
boundingBox.min.set(-0.5,-0.5,-0.5); boundingBox.max.set(0.5,0.5,0.5);
|
|
boundingBox.min.set(-0.5,-0.5,-0.5); boundingBox.max.set(0.5,0.5,0.5);
|
|
}
|
|
}
|
|
let fileType = fileInfo.objurl ? 'obj' : 'glb';
|
|
let fileType = fileInfo.objurl ? 'obj' : 'glb';
|
|
- let loadDone = (object)=>{
|
|
|
|
|
|
+ let loadDone = (object, total)=>{
|
|
//object.scale.set(1,1,1);//先获取原始的大小时的boundingBox
|
|
//object.scale.set(1,1,1);//先获取原始的大小时的boundingBox
|
|
object.updateMatrixWorld();
|
|
object.updateMatrixWorld();
|
|
|
|
+ let weight = Math.round((total / 1024 / 1024) * 100) / 100;
|
|
|
|
+ if(fileInfo.id != void 0)object.dataset_id = fileInfo.id;
|
|
|
|
|
|
|
|
+ console.log( fileInfo.name , fileInfo.id + '加载完毕, 模型数据量:' + weight + 'M');
|
|
|
|
|
|
object.traverse( ( child )=>{
|
|
object.traverse( ( child )=>{
|
|
if ( child instanceof Mesh ) {
|
|
if ( child instanceof Mesh ) {
|
|
@@ -127442,22 +127445,23 @@ ENDSEC
|
|
console.log( item, loaded, total );
|
|
console.log( item, loaded, total );
|
|
}; */
|
|
}; */
|
|
|
|
|
|
|
|
+
|
|
|
|
+
|
|
/* let onError = function ( xhr ) {
|
|
/* let onError = function ( xhr ) {
|
|
}; */
|
|
}; */
|
|
|
|
|
|
loaders.mtlLoader.load( fileInfo.mtlurl , (materials)=>{
|
|
loaders.mtlLoader.load( fileInfo.mtlurl , (materials)=>{
|
|
materials.preload();
|
|
materials.preload();
|
|
|
|
|
|
- loaders.objLoader.setMaterials( materials ).load(fileInfo.objurl, (object)=>{
|
|
|
|
- loadDone(object);
|
|
|
|
|
|
+ loaders.objLoader.setMaterials( materials ).load(fileInfo.objurl, (object, total)=>{
|
|
|
|
+ loadDone(object, total);
|
|
});
|
|
});
|
|
} , onProgress, onError );
|
|
} , onProgress, onError );
|
|
|
|
|
|
}else if(fileType == 'glb'){
|
|
}else if(fileType == 'glb'){
|
|
- loaders.glbLoader.load(fileInfo.glburl, ( gltf )=>{ //.setPath( Potree.resourcePath + '/models/glb/' );
|
|
|
|
-
|
|
|
|
- console.log('loadGLTF', gltf);
|
|
|
|
- loadDone(gltf.scene);
|
|
|
|
|
|
+ loaders.glbLoader.load(fileInfo.glburl, ( gltf, total )=>{ //.setPath( Potree.resourcePath + '/models/glb/' );
|
|
|
|
+ //console.log('loadGLTF', gltf)
|
|
|
|
+ loadDone(gltf.scene, total);
|
|
}, onProgress, onError);
|
|
}, onProgress, onError);
|
|
|
|
|
|
}
|
|
}
|