@xeokit/xeokit-sdk 2.6.50 → 2.6.52
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/xeokit-sdk.cjs.js +50 -37
- package/dist/xeokit-sdk.es.js +50 -37
- package/dist/xeokit-sdk.es5.js +126 -126
- package/dist/xeokit-sdk.min.cjs.js +3 -3
- package/dist/xeokit-sdk.min.es.js +3 -3
- package/dist/xeokit-sdk.min.es5.js +3 -3
- package/package.json +1 -1
- package/src/plugins/AngleMeasurementsPlugin/AngleMeasurementsMouseControl.js +5 -5
- package/src/plugins/DistanceMeasurementsPlugin/DistanceMeasurementsMouseControl.js +5 -5
- package/src/plugins/StoreyViewsPlugin/StoreyViewsPlugin.js +36 -15
- package/src/plugins/TreeViewPlugin/TreeViewPlugin.js +3 -3
- package/src/viewer/metadata/MetaModel.js +2 -2
- package/src/viewer/scene/model/SceneModel.js +1 -7
- package/types/plugins/TreeViewPlugin/renderService.d.ts +1 -1
package/dist/xeokit-sdk.cjs.js
CHANGED
|
@@ -12936,9 +12936,6 @@ class AngleMeasurementsMouseControl extends AngleMeasurementsControl {
|
|
|
12936
12936
|
const mouseHoverCanvasPos = math.vec2();
|
|
12937
12937
|
this._currentAngleMeasurement = null;
|
|
12938
12938
|
|
|
12939
|
-
const getTop = el => el.offsetTop + (el.offsetParent && (el.offsetParent !== canvas.parentNode) && getTop(el.offsetParent));
|
|
12940
|
-
const getLeft = el => el.offsetLeft + (el.offsetParent && (el.offsetParent !== canvas.parentNode) && getLeft(el.offsetParent));
|
|
12941
|
-
|
|
12942
12939
|
const pagePos = math.vec2();
|
|
12943
12940
|
|
|
12944
12941
|
const hoverOn = event => {
|
|
@@ -12973,8 +12970,10 @@ class AngleMeasurementsMouseControl extends AngleMeasurementsControl {
|
|
|
12973
12970
|
this.markerDiv.style.left = `${pagePos[0] - 5}px`;
|
|
12974
12971
|
this.markerDiv.style.top = `${pagePos[1] - 5}px`;
|
|
12975
12972
|
} else {
|
|
12976
|
-
|
|
12977
|
-
this.markerDiv.
|
|
12973
|
+
const markerPos = math.vec2(canvasPos);
|
|
12974
|
+
transformToNode(canvas, this.markerDiv.parentNode, markerPos);
|
|
12975
|
+
this.markerDiv.style.left = `${markerPos[0] - 5}px`;
|
|
12976
|
+
this.markerDiv.style.top = `${markerPos[1] - 5}px`;
|
|
12978
12977
|
}
|
|
12979
12978
|
break;
|
|
12980
12979
|
case MOUSE_FINDING_CORNER:
|
|
@@ -84280,13 +84279,7 @@ class SceneModel extends Component {
|
|
|
84280
84279
|
*/
|
|
84281
84280
|
set matrix(value) {
|
|
84282
84281
|
this._matrix.set(value || DEFAULT_MATRIX);
|
|
84283
|
-
|
|
84284
|
-
math.quaternionToRotationMat4(this._quaternion, this._worldRotationMatrix);
|
|
84285
|
-
math.conjugateQuaternion(this._quaternion, this._conjugateQuaternion);
|
|
84286
|
-
math.quaternionToRotationMat4(this._quaternion, this._worldRotationMatrixConjugate);
|
|
84287
|
-
this._matrix.set(this._worldRotationMatrix);
|
|
84288
|
-
math.translateMat4v(this._position, this._matrix);
|
|
84289
|
-
|
|
84282
|
+
math.decomposeMat4(this._matrix, this._position, this._quaternion, this._scale);
|
|
84290
84283
|
this._matrixDirty = false;
|
|
84291
84284
|
this._setWorldMatrixDirty();
|
|
84292
84285
|
this._sceneModelDirty();
|
|
@@ -89384,9 +89377,6 @@ class DistanceMeasurementsMouseControl extends DistanceMeasurementsControl {
|
|
|
89384
89377
|
|
|
89385
89378
|
this._mouseState = MOUSE_FIRST_CLICK_EXPECTED;
|
|
89386
89379
|
|
|
89387
|
-
const getTop = el => el.offsetTop + (el.offsetParent && (el.offsetParent !== canvas.parentNode) && getTop(el.offsetParent));
|
|
89388
|
-
const getLeft = el => el.offsetLeft + (el.offsetParent && (el.offsetParent !== canvas.parentNode) && getLeft(el.offsetParent));
|
|
89389
|
-
|
|
89390
89380
|
const pagePos = math.vec2();
|
|
89391
89381
|
|
|
89392
89382
|
const hoverOn = event => {
|
|
@@ -89401,8 +89391,10 @@ class DistanceMeasurementsMouseControl extends DistanceMeasurementsControl {
|
|
|
89401
89391
|
this._markerDiv.style.left = `${pagePos[0] - 5}px`;
|
|
89402
89392
|
this._markerDiv.style.top = `${pagePos[1] - 5}px`;
|
|
89403
89393
|
} else {
|
|
89404
|
-
|
|
89405
|
-
this._markerDiv.
|
|
89394
|
+
const markerPos = math.vec2(canvasPos);
|
|
89395
|
+
transformToNode(canvas, this._markerDiv.parentNode, markerPos);
|
|
89396
|
+
this._markerDiv.style.left = `${markerPos[0] - 5}px`;
|
|
89397
|
+
this._markerDiv.style.top = `${markerPos[1] - 5}px`;
|
|
89406
89398
|
}
|
|
89407
89399
|
|
|
89408
89400
|
this._markerDiv.style.background = "pink";
|
|
@@ -101689,8 +101681,8 @@ class MetaModel {
|
|
|
101689
101681
|
|
|
101690
101682
|
for (let modelId in metaScene.metaModels) {
|
|
101691
101683
|
const metaModel = metaScene.metaModels[modelId];
|
|
101692
|
-
for (let
|
|
101693
|
-
const metaObject = metaModel.metaObjects[
|
|
101684
|
+
for (let objectId in metaModel.metaObjects) {
|
|
101685
|
+
const metaObject = metaModel.metaObjects[objectId];
|
|
101694
101686
|
metaObject.metaModels.push(metaModel);
|
|
101695
101687
|
}
|
|
101696
101688
|
}
|
|
@@ -123358,7 +123350,7 @@ class StoreyViewsPlugin extends Plugin {
|
|
|
123358
123350
|
this.fire("storeys", this.storeys);
|
|
123359
123351
|
});
|
|
123360
123352
|
this.storeys[storeyId] = storey;
|
|
123361
|
-
this._storeysList= null;
|
|
123353
|
+
this._storeysList = null;
|
|
123362
123354
|
if (!this.modelStoreys[modelId]) {
|
|
123363
123355
|
this.modelStoreys[modelId] = {};
|
|
123364
123356
|
}
|
|
@@ -123379,7 +123371,7 @@ class StoreyViewsPlugin extends Plugin {
|
|
|
123379
123371
|
model.off(storey._onModelDestroyed);
|
|
123380
123372
|
}
|
|
123381
123373
|
delete this.storeys[storyObjectId];
|
|
123382
|
-
this._storeysList= null;
|
|
123374
|
+
this._storeysList = null;
|
|
123383
123375
|
}
|
|
123384
123376
|
}
|
|
123385
123377
|
delete this.modelStoreys[modelId];
|
|
@@ -123598,7 +123590,11 @@ class StoreyViewsPlugin extends Plugin {
|
|
|
123598
123590
|
height = Math.round(width * aspect);
|
|
123599
123591
|
}
|
|
123600
123592
|
|
|
123601
|
-
|
|
123593
|
+
const mask = {
|
|
123594
|
+
visible: true,
|
|
123595
|
+
};
|
|
123596
|
+
|
|
123597
|
+
this._objectsMemento.saveObjects(scene, mask);
|
|
123602
123598
|
this._cameraMemento.saveCamera(scene);
|
|
123603
123599
|
|
|
123604
123600
|
this.showStoreyObjects(storeyId, utils.apply(options, {
|
|
@@ -123613,7 +123609,7 @@ class StoreyViewsPlugin extends Plugin {
|
|
|
123613
123609
|
format: format,
|
|
123614
123610
|
});
|
|
123615
123611
|
|
|
123616
|
-
this._objectsMemento.restoreObjects(scene);
|
|
123612
|
+
this._objectsMemento.restoreObjects(scene, mask);
|
|
123617
123613
|
this._cameraMemento.restoreCamera(scene);
|
|
123618
123614
|
|
|
123619
123615
|
return new StoreyMap(storeyId, src, format, width, height, padding);
|
|
@@ -123750,9 +123746,9 @@ class StoreyViewsPlugin extends Plugin {
|
|
|
123750
123746
|
* @returns {String} ID of the storey containing the position, or null if the position falls outside all the storeys.
|
|
123751
123747
|
*/
|
|
123752
123748
|
getStoreyInVerticalRange(worldPos) {
|
|
123753
|
-
for(let storeyId in this.storeys) {
|
|
123749
|
+
for (let storeyId in this.storeys) {
|
|
123754
123750
|
const storey = this.storeys[storeyId];
|
|
123755
|
-
const aabb = [0,0,0,0,0,0], pos = [0,0,0];
|
|
123751
|
+
const aabb = [0, 0, 0, 0, 0, 0], pos = [0, 0, 0];
|
|
123756
123752
|
aabb[1] = storey.storeyAABB[1];
|
|
123757
123753
|
aabb[4] = storey.storeyAABB[4];
|
|
123758
123754
|
pos[1] = worldPos[1];
|
|
@@ -123765,14 +123761,14 @@ class StoreyViewsPlugin extends Plugin {
|
|
|
123765
123761
|
|
|
123766
123762
|
/**
|
|
123767
123763
|
* Returns whether a position is above or below a building
|
|
123768
|
-
*
|
|
123764
|
+
*
|
|
123769
123765
|
* @param {Number[]} worldPos 3D World-space position.
|
|
123770
123766
|
* @returns {String} ID of the lowest/highest story or null.
|
|
123771
123767
|
*/
|
|
123772
123768
|
isPositionAboveOrBelowBuilding(worldPos) {
|
|
123773
123769
|
const keys = Object.keys(this.storeys);
|
|
123774
|
-
const ids = [keys[0], keys[keys.length-1]];
|
|
123775
|
-
if(worldPos[1] < this.storeys[ids[0]].storeyAABB[1])
|
|
123770
|
+
const ids = [keys[0], keys[keys.length - 1]];
|
|
123771
|
+
if (worldPos[1] < this.storeys[ids[0]].storeyAABB[1])
|
|
123776
123772
|
return ids[0];
|
|
123777
123773
|
else if (worldPos[1] > this.storeys[ids[1]].storeyAABB[4])
|
|
123778
123774
|
return ids[1];
|
|
@@ -123892,13 +123888,30 @@ class StoreyViewsPlugin extends Plugin {
|
|
|
123892
123888
|
} else {
|
|
123893
123889
|
idx = 2;
|
|
123894
123890
|
}
|
|
123895
|
-
|
|
123896
|
-
|
|
123897
|
-
|
|
123898
|
-
|
|
123899
|
-
|
|
123891
|
+
const metaScene = this.viewer.metaScene;
|
|
123892
|
+
const storey1MetaObject = metaScene.metaObjects[storey1.storeyId];
|
|
123893
|
+
const storey2MetaObject = metaScene.metaObjects[storey2.storeyId];
|
|
123894
|
+
|
|
123895
|
+
if (storey1MetaObject && (storey1MetaObject.attributes && storey1MetaObject.attributes.elevation !== undefined) &&
|
|
123896
|
+
storey2MetaObject && (storey2MetaObject.attributes && storey2MetaObject.attributes.elevation !== undefined)) {
|
|
123897
|
+
const elevation1 = storey1MetaObject.attributes.elevation;
|
|
123898
|
+
const elevation2 = storey2MetaObject.attributes.elevation;
|
|
123899
|
+
if (elevation1 > elevation2) {
|
|
123900
|
+
return -1;
|
|
123901
|
+
}
|
|
123902
|
+
if (elevation1 < elevation2) {
|
|
123903
|
+
return 1;
|
|
123904
|
+
}
|
|
123905
|
+
return 0;
|
|
123906
|
+
} else {
|
|
123907
|
+
if (storey1.aabb[idx] > storey2.aabb[idx]) {
|
|
123908
|
+
return -1;
|
|
123909
|
+
}
|
|
123910
|
+
if (storey1.aabb[idx] < storey2.aabb[idx]) {
|
|
123911
|
+
return 1;
|
|
123912
|
+
}
|
|
123913
|
+
return 0;
|
|
123900
123914
|
}
|
|
123901
|
-
return 0;
|
|
123902
123915
|
});
|
|
123903
123916
|
}
|
|
123904
123917
|
}
|
|
@@ -127243,7 +127256,7 @@ class TreeViewPlugin extends Plugin {
|
|
|
127243
127256
|
buildingNode = {
|
|
127244
127257
|
nodeId: `${this._id}-${objectId}`,
|
|
127245
127258
|
objectId: objectId,
|
|
127246
|
-
title: (metaObject.metaModels.length === 0) ?
|
|
127259
|
+
title: (metaObject.metaModels.length === 0) ? metaObjectName : this._rootNames[metaObject.metaModels[0].id] || ((metaObjectName && metaObjectName !== "" && metaObjectName !== "Undefined" && metaObjectName !== "Default") ? metaObjectName : metaObjectType),
|
|
127247
127260
|
type: metaObjectType,
|
|
127248
127261
|
parent: null,
|
|
127249
127262
|
numEntities: 0,
|
|
@@ -127346,7 +127359,7 @@ class TreeViewPlugin extends Plugin {
|
|
|
127346
127359
|
rootNode = {
|
|
127347
127360
|
nodeId: `${this._id}-${objectId}`,
|
|
127348
127361
|
objectId: objectId,
|
|
127349
|
-
title: metaObject.metaModels.length === 0 ?
|
|
127362
|
+
title: metaObject.metaModels.length === 0 ? metaObjectName : this._rootNames[metaObject.metaModels[0].id] || ((metaObjectName && metaObjectName !== "" && metaObjectName !== "Undefined" && metaObjectName !== "Default") ? metaObjectName : metaObjectType),
|
|
127350
127363
|
type: metaObjectType,
|
|
127351
127364
|
parent: null,
|
|
127352
127365
|
numEntities: 0,
|
|
@@ -127427,7 +127440,7 @@ class TreeViewPlugin extends Plugin {
|
|
|
127427
127440
|
const node = {
|
|
127428
127441
|
nodeId: `${this._id}-${objectId}`,
|
|
127429
127442
|
objectId: objectId,
|
|
127430
|
-
title: (!parent) ? metaObject.metaModels.length === 0 ?
|
|
127443
|
+
title: (!parent) ? metaObject.metaModels.length === 0 ? metaObjectName : (this._rootNames[metaObject.metaModels[0].id] || metaObjectName) : (metaObjectName && metaObjectName !== "" && metaObjectName !== "Undefined" && metaObjectName !== "Default") ? metaObjectName : metaObjectType,
|
|
127431
127444
|
type: metaObjectType,
|
|
127432
127445
|
parent: parent,
|
|
127433
127446
|
numEntities: 0,
|
package/dist/xeokit-sdk.es.js
CHANGED
|
@@ -12932,9 +12932,6 @@ class AngleMeasurementsMouseControl extends AngleMeasurementsControl {
|
|
|
12932
12932
|
const mouseHoverCanvasPos = math.vec2();
|
|
12933
12933
|
this._currentAngleMeasurement = null;
|
|
12934
12934
|
|
|
12935
|
-
const getTop = el => el.offsetTop + (el.offsetParent && (el.offsetParent !== canvas.parentNode) && getTop(el.offsetParent));
|
|
12936
|
-
const getLeft = el => el.offsetLeft + (el.offsetParent && (el.offsetParent !== canvas.parentNode) && getLeft(el.offsetParent));
|
|
12937
|
-
|
|
12938
12935
|
const pagePos = math.vec2();
|
|
12939
12936
|
|
|
12940
12937
|
const hoverOn = event => {
|
|
@@ -12969,8 +12966,10 @@ class AngleMeasurementsMouseControl extends AngleMeasurementsControl {
|
|
|
12969
12966
|
this.markerDiv.style.left = `${pagePos[0] - 5}px`;
|
|
12970
12967
|
this.markerDiv.style.top = `${pagePos[1] - 5}px`;
|
|
12971
12968
|
} else {
|
|
12972
|
-
|
|
12973
|
-
this.markerDiv.
|
|
12969
|
+
const markerPos = math.vec2(canvasPos);
|
|
12970
|
+
transformToNode(canvas, this.markerDiv.parentNode, markerPos);
|
|
12971
|
+
this.markerDiv.style.left = `${markerPos[0] - 5}px`;
|
|
12972
|
+
this.markerDiv.style.top = `${markerPos[1] - 5}px`;
|
|
12974
12973
|
}
|
|
12975
12974
|
break;
|
|
12976
12975
|
case MOUSE_FINDING_CORNER:
|
|
@@ -84276,13 +84275,7 @@ class SceneModel extends Component {
|
|
|
84276
84275
|
*/
|
|
84277
84276
|
set matrix(value) {
|
|
84278
84277
|
this._matrix.set(value || DEFAULT_MATRIX);
|
|
84279
|
-
|
|
84280
|
-
math.quaternionToRotationMat4(this._quaternion, this._worldRotationMatrix);
|
|
84281
|
-
math.conjugateQuaternion(this._quaternion, this._conjugateQuaternion);
|
|
84282
|
-
math.quaternionToRotationMat4(this._quaternion, this._worldRotationMatrixConjugate);
|
|
84283
|
-
this._matrix.set(this._worldRotationMatrix);
|
|
84284
|
-
math.translateMat4v(this._position, this._matrix);
|
|
84285
|
-
|
|
84278
|
+
math.decomposeMat4(this._matrix, this._position, this._quaternion, this._scale);
|
|
84286
84279
|
this._matrixDirty = false;
|
|
84287
84280
|
this._setWorldMatrixDirty();
|
|
84288
84281
|
this._sceneModelDirty();
|
|
@@ -89380,9 +89373,6 @@ class DistanceMeasurementsMouseControl extends DistanceMeasurementsControl {
|
|
|
89380
89373
|
|
|
89381
89374
|
this._mouseState = MOUSE_FIRST_CLICK_EXPECTED;
|
|
89382
89375
|
|
|
89383
|
-
const getTop = el => el.offsetTop + (el.offsetParent && (el.offsetParent !== canvas.parentNode) && getTop(el.offsetParent));
|
|
89384
|
-
const getLeft = el => el.offsetLeft + (el.offsetParent && (el.offsetParent !== canvas.parentNode) && getLeft(el.offsetParent));
|
|
89385
|
-
|
|
89386
89376
|
const pagePos = math.vec2();
|
|
89387
89377
|
|
|
89388
89378
|
const hoverOn = event => {
|
|
@@ -89397,8 +89387,10 @@ class DistanceMeasurementsMouseControl extends DistanceMeasurementsControl {
|
|
|
89397
89387
|
this._markerDiv.style.left = `${pagePos[0] - 5}px`;
|
|
89398
89388
|
this._markerDiv.style.top = `${pagePos[1] - 5}px`;
|
|
89399
89389
|
} else {
|
|
89400
|
-
|
|
89401
|
-
this._markerDiv.
|
|
89390
|
+
const markerPos = math.vec2(canvasPos);
|
|
89391
|
+
transformToNode(canvas, this._markerDiv.parentNode, markerPos);
|
|
89392
|
+
this._markerDiv.style.left = `${markerPos[0] - 5}px`;
|
|
89393
|
+
this._markerDiv.style.top = `${markerPos[1] - 5}px`;
|
|
89402
89394
|
}
|
|
89403
89395
|
|
|
89404
89396
|
this._markerDiv.style.background = "pink";
|
|
@@ -101685,8 +101677,8 @@ class MetaModel {
|
|
|
101685
101677
|
|
|
101686
101678
|
for (let modelId in metaScene.metaModels) {
|
|
101687
101679
|
const metaModel = metaScene.metaModels[modelId];
|
|
101688
|
-
for (let
|
|
101689
|
-
const metaObject = metaModel.metaObjects[
|
|
101680
|
+
for (let objectId in metaModel.metaObjects) {
|
|
101681
|
+
const metaObject = metaModel.metaObjects[objectId];
|
|
101690
101682
|
metaObject.metaModels.push(metaModel);
|
|
101691
101683
|
}
|
|
101692
101684
|
}
|
|
@@ -123354,7 +123346,7 @@ class StoreyViewsPlugin extends Plugin {
|
|
|
123354
123346
|
this.fire("storeys", this.storeys);
|
|
123355
123347
|
});
|
|
123356
123348
|
this.storeys[storeyId] = storey;
|
|
123357
|
-
this._storeysList= null;
|
|
123349
|
+
this._storeysList = null;
|
|
123358
123350
|
if (!this.modelStoreys[modelId]) {
|
|
123359
123351
|
this.modelStoreys[modelId] = {};
|
|
123360
123352
|
}
|
|
@@ -123375,7 +123367,7 @@ class StoreyViewsPlugin extends Plugin {
|
|
|
123375
123367
|
model.off(storey._onModelDestroyed);
|
|
123376
123368
|
}
|
|
123377
123369
|
delete this.storeys[storyObjectId];
|
|
123378
|
-
this._storeysList= null;
|
|
123370
|
+
this._storeysList = null;
|
|
123379
123371
|
}
|
|
123380
123372
|
}
|
|
123381
123373
|
delete this.modelStoreys[modelId];
|
|
@@ -123594,7 +123586,11 @@ class StoreyViewsPlugin extends Plugin {
|
|
|
123594
123586
|
height = Math.round(width * aspect);
|
|
123595
123587
|
}
|
|
123596
123588
|
|
|
123597
|
-
|
|
123589
|
+
const mask = {
|
|
123590
|
+
visible: true,
|
|
123591
|
+
};
|
|
123592
|
+
|
|
123593
|
+
this._objectsMemento.saveObjects(scene, mask);
|
|
123598
123594
|
this._cameraMemento.saveCamera(scene);
|
|
123599
123595
|
|
|
123600
123596
|
this.showStoreyObjects(storeyId, utils.apply(options, {
|
|
@@ -123609,7 +123605,7 @@ class StoreyViewsPlugin extends Plugin {
|
|
|
123609
123605
|
format: format,
|
|
123610
123606
|
});
|
|
123611
123607
|
|
|
123612
|
-
this._objectsMemento.restoreObjects(scene);
|
|
123608
|
+
this._objectsMemento.restoreObjects(scene, mask);
|
|
123613
123609
|
this._cameraMemento.restoreCamera(scene);
|
|
123614
123610
|
|
|
123615
123611
|
return new StoreyMap(storeyId, src, format, width, height, padding);
|
|
@@ -123746,9 +123742,9 @@ class StoreyViewsPlugin extends Plugin {
|
|
|
123746
123742
|
* @returns {String} ID of the storey containing the position, or null if the position falls outside all the storeys.
|
|
123747
123743
|
*/
|
|
123748
123744
|
getStoreyInVerticalRange(worldPos) {
|
|
123749
|
-
for(let storeyId in this.storeys) {
|
|
123745
|
+
for (let storeyId in this.storeys) {
|
|
123750
123746
|
const storey = this.storeys[storeyId];
|
|
123751
|
-
const aabb = [0,0,0,0,0,0], pos = [0,0,0];
|
|
123747
|
+
const aabb = [0, 0, 0, 0, 0, 0], pos = [0, 0, 0];
|
|
123752
123748
|
aabb[1] = storey.storeyAABB[1];
|
|
123753
123749
|
aabb[4] = storey.storeyAABB[4];
|
|
123754
123750
|
pos[1] = worldPos[1];
|
|
@@ -123761,14 +123757,14 @@ class StoreyViewsPlugin extends Plugin {
|
|
|
123761
123757
|
|
|
123762
123758
|
/**
|
|
123763
123759
|
* Returns whether a position is above or below a building
|
|
123764
|
-
*
|
|
123760
|
+
*
|
|
123765
123761
|
* @param {Number[]} worldPos 3D World-space position.
|
|
123766
123762
|
* @returns {String} ID of the lowest/highest story or null.
|
|
123767
123763
|
*/
|
|
123768
123764
|
isPositionAboveOrBelowBuilding(worldPos) {
|
|
123769
123765
|
const keys = Object.keys(this.storeys);
|
|
123770
|
-
const ids = [keys[0], keys[keys.length-1]];
|
|
123771
|
-
if(worldPos[1] < this.storeys[ids[0]].storeyAABB[1])
|
|
123766
|
+
const ids = [keys[0], keys[keys.length - 1]];
|
|
123767
|
+
if (worldPos[1] < this.storeys[ids[0]].storeyAABB[1])
|
|
123772
123768
|
return ids[0];
|
|
123773
123769
|
else if (worldPos[1] > this.storeys[ids[1]].storeyAABB[4])
|
|
123774
123770
|
return ids[1];
|
|
@@ -123888,13 +123884,30 @@ class StoreyViewsPlugin extends Plugin {
|
|
|
123888
123884
|
} else {
|
|
123889
123885
|
idx = 2;
|
|
123890
123886
|
}
|
|
123891
|
-
|
|
123892
|
-
|
|
123893
|
-
|
|
123894
|
-
|
|
123895
|
-
|
|
123887
|
+
const metaScene = this.viewer.metaScene;
|
|
123888
|
+
const storey1MetaObject = metaScene.metaObjects[storey1.storeyId];
|
|
123889
|
+
const storey2MetaObject = metaScene.metaObjects[storey2.storeyId];
|
|
123890
|
+
|
|
123891
|
+
if (storey1MetaObject && (storey1MetaObject.attributes && storey1MetaObject.attributes.elevation !== undefined) &&
|
|
123892
|
+
storey2MetaObject && (storey2MetaObject.attributes && storey2MetaObject.attributes.elevation !== undefined)) {
|
|
123893
|
+
const elevation1 = storey1MetaObject.attributes.elevation;
|
|
123894
|
+
const elevation2 = storey2MetaObject.attributes.elevation;
|
|
123895
|
+
if (elevation1 > elevation2) {
|
|
123896
|
+
return -1;
|
|
123897
|
+
}
|
|
123898
|
+
if (elevation1 < elevation2) {
|
|
123899
|
+
return 1;
|
|
123900
|
+
}
|
|
123901
|
+
return 0;
|
|
123902
|
+
} else {
|
|
123903
|
+
if (storey1.aabb[idx] > storey2.aabb[idx]) {
|
|
123904
|
+
return -1;
|
|
123905
|
+
}
|
|
123906
|
+
if (storey1.aabb[idx] < storey2.aabb[idx]) {
|
|
123907
|
+
return 1;
|
|
123908
|
+
}
|
|
123909
|
+
return 0;
|
|
123896
123910
|
}
|
|
123897
|
-
return 0;
|
|
123898
123911
|
});
|
|
123899
123912
|
}
|
|
123900
123913
|
}
|
|
@@ -127239,7 +127252,7 @@ class TreeViewPlugin extends Plugin {
|
|
|
127239
127252
|
buildingNode = {
|
|
127240
127253
|
nodeId: `${this._id}-${objectId}`,
|
|
127241
127254
|
objectId: objectId,
|
|
127242
|
-
title: (metaObject.metaModels.length === 0) ?
|
|
127255
|
+
title: (metaObject.metaModels.length === 0) ? metaObjectName : this._rootNames[metaObject.metaModels[0].id] || ((metaObjectName && metaObjectName !== "" && metaObjectName !== "Undefined" && metaObjectName !== "Default") ? metaObjectName : metaObjectType),
|
|
127243
127256
|
type: metaObjectType,
|
|
127244
127257
|
parent: null,
|
|
127245
127258
|
numEntities: 0,
|
|
@@ -127342,7 +127355,7 @@ class TreeViewPlugin extends Plugin {
|
|
|
127342
127355
|
rootNode = {
|
|
127343
127356
|
nodeId: `${this._id}-${objectId}`,
|
|
127344
127357
|
objectId: objectId,
|
|
127345
|
-
title: metaObject.metaModels.length === 0 ?
|
|
127358
|
+
title: metaObject.metaModels.length === 0 ? metaObjectName : this._rootNames[metaObject.metaModels[0].id] || ((metaObjectName && metaObjectName !== "" && metaObjectName !== "Undefined" && metaObjectName !== "Default") ? metaObjectName : metaObjectType),
|
|
127346
127359
|
type: metaObjectType,
|
|
127347
127360
|
parent: null,
|
|
127348
127361
|
numEntities: 0,
|
|
@@ -127423,7 +127436,7 @@ class TreeViewPlugin extends Plugin {
|
|
|
127423
127436
|
const node = {
|
|
127424
127437
|
nodeId: `${this._id}-${objectId}`,
|
|
127425
127438
|
objectId: objectId,
|
|
127426
|
-
title: (!parent) ? metaObject.metaModels.length === 0 ?
|
|
127439
|
+
title: (!parent) ? metaObject.metaModels.length === 0 ? metaObjectName : (this._rootNames[metaObject.metaModels[0].id] || metaObjectName) : (metaObjectName && metaObjectName !== "" && metaObjectName !== "Undefined" && metaObjectName !== "Default") ? metaObjectName : metaObjectType,
|
|
127427
127440
|
type: metaObjectType,
|
|
127428
127441
|
parent: parent,
|
|
127429
127442
|
numEntities: 0,
|