@kq_npm/client3d_webgl_vue 0.3.5-beta → 0.3.6-beta
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/adddata/index.js +1 -3
- package/excavatefillanalysis/index.js +4 -20
- package/floodanalysis/index.js +8 -20
- package/gpuspatialquery/index.js +5 -21
- package/index.js +504 -75
- package/isolineanalysis/index.js +4 -20
- package/modelselect/index.js +5 -21
- package/package.json +1 -1
- package/particleeffect/index.js +4 -20
- package/planeclip/index.js +5 -21
- package/scenceview/index.js +480 -2
- package/shadowanalysis/index.js +5 -21
- package/sightlineanalysis/index.js +2 -2
- package/skylineanalysis/index.js +6 -25
- package/slopeanalysis/index.js +4 -20
- package/terrainoperation/index.js +5 -21
- package/weathereffect/index.js +4 -20
package/index.js
CHANGED
|
@@ -981,6 +981,7 @@ var util_namespaceObject = require("@kq_npm/client_common_vue/_utils/util");
|
|
|
981
981
|
;// CONCATENATED MODULE: ./src/webgl/scenceview/LayerManager.js
|
|
982
982
|
|
|
983
983
|
|
|
984
|
+
|
|
984
985
|
//图层管理类
|
|
985
986
|
|
|
986
987
|
class LayerManager {
|
|
@@ -1009,8 +1010,484 @@ class LayerManager {
|
|
|
1009
1010
|
|
|
1010
1011
|
_defineProperty(this, "_terrainProviders", []);
|
|
1011
1012
|
|
|
1013
|
+
_defineProperty(this, "_geojsonStyle", {
|
|
1014
|
+
label: {
|
|
1015
|
+
express: "name",
|
|
1016
|
+
// font: "25px 微软雅黑",
|
|
1017
|
+
font: "28px sans-serif",
|
|
1018
|
+
fontSize: 28,
|
|
1019
|
+
fillColor: Cesium.Color.WHITE,
|
|
1020
|
+
scale: 0.6,
|
|
1021
|
+
outlineColor: Cesium.Color.BLACK,
|
|
1022
|
+
outlineWidth: 5,
|
|
1023
|
+
style: Cesium.LabelStyle.FILL_AND_OUTLINE,
|
|
1024
|
+
eyeOffset: Cesium.Cartesian3.ZERO,
|
|
1025
|
+
pixelOffset: new Cesium.Cartesian2(0, -8),
|
|
1026
|
+
disableDepthTestDistance: 35000000,
|
|
1027
|
+
distanceDisplayCondition: new Cesium.DistanceDisplayCondition(0, 1000000000000)
|
|
1028
|
+
},
|
|
1029
|
+
billboard: {
|
|
1030
|
+
image: const_image_namespaceObject.BILLBOARD_IMAGE_URL,
|
|
1031
|
+
width: 12,
|
|
1032
|
+
height: 12,
|
|
1033
|
+
disableDepthTestDistance: 35000000,
|
|
1034
|
+
distanceDisplayCondition: new Cesium.DistanceDisplayCondition(0, 1000000000000),
|
|
1035
|
+
scaleByDistance: new Cesium.NearFarScalar(200000, 1.2, 100000000000, 0.5)
|
|
1036
|
+
},
|
|
1037
|
+
polyline: {
|
|
1038
|
+
width: 2.0,
|
|
1039
|
+
material: Cesium.Color.RED
|
|
1040
|
+
},
|
|
1041
|
+
polygon: {
|
|
1042
|
+
material: Cesium.Color.BLUE.withAlpha(0.3),
|
|
1043
|
+
outline: true,
|
|
1044
|
+
outlineWidth: 1,
|
|
1045
|
+
outlineColor: Cesium.Color.YELLOW,
|
|
1046
|
+
perPositionHeight: true
|
|
1047
|
+
}
|
|
1048
|
+
});
|
|
1049
|
+
|
|
1012
1050
|
this._scenceView = scenceView;
|
|
1013
1051
|
this._viewer = scenceView._viewer;
|
|
1052
|
+
|
|
1053
|
+
this._initData(scenceView._props);
|
|
1054
|
+
} //加载初始数据
|
|
1055
|
+
|
|
1056
|
+
|
|
1057
|
+
_initData(props) {
|
|
1058
|
+
if (props.scenceInfo) {
|
|
1059
|
+
this.addScenceInfo(props.scenceInfo);
|
|
1060
|
+
} else {
|
|
1061
|
+
this.addServiceData(props.service);
|
|
1062
|
+
}
|
|
1063
|
+
} //添加场景数据
|
|
1064
|
+
|
|
1065
|
+
|
|
1066
|
+
addScenceInfo(scenceInfo) {
|
|
1067
|
+
if (scenceInfo.rectangle && scenceInfo.rectangle.length === 4) {
|
|
1068
|
+
this._viewer.camera.flyTo({
|
|
1069
|
+
destination: Cesium.Rectangle.fromDegrees(scenceInfo.rectangle[0], scenceInfo.rectangle[1], scenceInfo.rectangle[2], scenceInfo.rectangle[3])
|
|
1070
|
+
});
|
|
1071
|
+
}
|
|
1072
|
+
|
|
1073
|
+
let layer = scenceInfo.layer;
|
|
1074
|
+
|
|
1075
|
+
if (layer && layer.sources && layer.layerTreeData) {
|
|
1076
|
+
//首先处理sources里kqserver类型的数据
|
|
1077
|
+
var sourcePromises = [];
|
|
1078
|
+
layer.sources.forEach(source => {
|
|
1079
|
+
if (source.serverType === "kqserver" && source.renderType === "rest") {
|
|
1080
|
+
//使用二维方式解析服务
|
|
1081
|
+
var url = source.url;
|
|
1082
|
+
var serverName = url.split("services/")[1].split("/")[0];
|
|
1083
|
+
var serverUrl = url.split("services/")[0] + "services/";
|
|
1084
|
+
var token;
|
|
1085
|
+
|
|
1086
|
+
if (url.indexOf("ua_token") != -1) {
|
|
1087
|
+
token = url.split("ua_token=")[1].split("&")[0];
|
|
1088
|
+
}
|
|
1089
|
+
|
|
1090
|
+
token = token || source.token;
|
|
1091
|
+
var webMapService = new (webmapservice_default())(serverName, {
|
|
1092
|
+
token: token,
|
|
1093
|
+
serviceUrl: serverUrl
|
|
1094
|
+
});
|
|
1095
|
+
var sourcePromise = webMapService.getMapInfo().then(mapInfo => {
|
|
1096
|
+
if (mapInfo.resultcode === "error") {
|
|
1097
|
+
KqMessage({
|
|
1098
|
+
message: mapInfo.message,
|
|
1099
|
+
type: "error"
|
|
1100
|
+
});
|
|
1101
|
+
return;
|
|
1102
|
+
}
|
|
1103
|
+
|
|
1104
|
+
source.mapServerInfo = (0,util_namespaceObject.formatKQMapInfo)(mapInfo.result, serverUrl, serverName, token, null, true);
|
|
1105
|
+
});
|
|
1106
|
+
sourcePromises.push(sourcePromise);
|
|
1107
|
+
}
|
|
1108
|
+
});
|
|
1109
|
+
this._promises = [];
|
|
1110
|
+
Promise.all(sourcePromises).then(() => {
|
|
1111
|
+
layer.layerTreeData.forEach(data => {
|
|
1112
|
+
this.setLayerInfo(data, layer.sources);
|
|
1113
|
+
}, this);
|
|
1114
|
+
Promise.all(this._promises).then(() => {
|
|
1115
|
+
this._layerTreeData = layer.layerTreeData;
|
|
1116
|
+
|
|
1117
|
+
this._scenceView.fire("resetLayerDatas");
|
|
1118
|
+
});
|
|
1119
|
+
});
|
|
1120
|
+
}
|
|
1121
|
+
} //设置图层属性
|
|
1122
|
+
|
|
1123
|
+
|
|
1124
|
+
setLayerInfo(layerData, sources) {
|
|
1125
|
+
if (layerData.children) {
|
|
1126
|
+
layerData.guid = Cesium.createGuid();
|
|
1127
|
+
layerData.children.forEach(child => {
|
|
1128
|
+
this.setLayerInfo(child, sources);
|
|
1129
|
+
}, this);
|
|
1130
|
+
} else {
|
|
1131
|
+
if (layerData.sourceName) {
|
|
1132
|
+
var source = sources.find(item => {
|
|
1133
|
+
return item.name === layerData.sourceName;
|
|
1134
|
+
});
|
|
1135
|
+
|
|
1136
|
+
if (source) {
|
|
1137
|
+
layerData.sourceType = source.serverType;
|
|
1138
|
+
layerData.renderType = source.renderType;
|
|
1139
|
+
layerData.url = source.url;
|
|
1140
|
+
var type = layerData.renderType;
|
|
1141
|
+
|
|
1142
|
+
if (layerData.sourceType === "kqserver") {
|
|
1143
|
+
if (!layerData.renderType || layerData.renderType === "rest") {
|
|
1144
|
+
type = "kqgismapserver";
|
|
1145
|
+
layerData.token = source.token; //记录数据源里所有图层信息
|
|
1146
|
+
|
|
1147
|
+
layerData.sourceLayers = source.mapServerInfo.layers_show;
|
|
1148
|
+
} else {
|
|
1149
|
+
layerData.url += "/" + layerData.renderType;
|
|
1150
|
+
}
|
|
1151
|
+
} else if (layerData.sourceType === "arcserver") {
|
|
1152
|
+
if (!layerData.renderType || layerData.renderType === "rest") {
|
|
1153
|
+
type = "arcgismapserver";
|
|
1154
|
+
} else {
|
|
1155
|
+
layerData.url += "/" + layerData.renderType;
|
|
1156
|
+
}
|
|
1157
|
+
} else if (layerData.sourceType === "kqimageserver") {
|
|
1158
|
+
type = "kqgisimageserver";
|
|
1159
|
+
} else if (layerData.sourceType === "kq3dserver") {
|
|
1160
|
+
type = "kqgis3dserver";
|
|
1161
|
+
}
|
|
1162
|
+
|
|
1163
|
+
var promise = this.addLayerData(layerData, type);
|
|
1164
|
+
|
|
1165
|
+
if (promise) {
|
|
1166
|
+
this._promises.push(promise);
|
|
1167
|
+
|
|
1168
|
+
promise.then(() => {
|
|
1169
|
+
this._layerListData.push(layerData);
|
|
1170
|
+
});
|
|
1171
|
+
} else {
|
|
1172
|
+
this._layerListData.push(layerData);
|
|
1173
|
+
}
|
|
1174
|
+
}
|
|
1175
|
+
}
|
|
1176
|
+
}
|
|
1177
|
+
} //添加图层数据
|
|
1178
|
+
|
|
1179
|
+
|
|
1180
|
+
addLayerData(layerData, type) {
|
|
1181
|
+
let url = layerData.url;
|
|
1182
|
+
type = type || "";
|
|
1183
|
+
type = type.toLowerCase();
|
|
1184
|
+
let name = layerData.name;
|
|
1185
|
+
|
|
1186
|
+
if (url) {
|
|
1187
|
+
if (!name || name === "") {
|
|
1188
|
+
let ext;
|
|
1189
|
+
|
|
1190
|
+
if (url.lastIndexOf(".") > url.lastIndexOf("/")) {
|
|
1191
|
+
ext = url.substring(url.lastIndexOf(".") + 1);
|
|
1192
|
+
ext = ext.toLowerCase();
|
|
1193
|
+
}
|
|
1194
|
+
|
|
1195
|
+
if (["kml", "kmz", "czml", "geojson", "json", "topojson"].indexOf(ext) > -1) {
|
|
1196
|
+
name = url.substring(url.lastIndexOf("/") + 1);
|
|
1197
|
+
} else {
|
|
1198
|
+
if (type !== "kqgismapserver" && type !== "wms" && type !== "wmts") {
|
|
1199
|
+
name = url.substring(0, url.lastIndexOf("/"));
|
|
1200
|
+
name = name.substring(name.lastIndexOf("/") + 1);
|
|
1201
|
+
}
|
|
1202
|
+
}
|
|
1203
|
+
}
|
|
1204
|
+
}
|
|
1205
|
+
|
|
1206
|
+
layerData.name = name;
|
|
1207
|
+
let layer, promise;
|
|
1208
|
+
|
|
1209
|
+
switch (type) {
|
|
1210
|
+
case 'kq3dimageryfile':
|
|
1211
|
+
//影像瓦片文件
|
|
1212
|
+
layer = this._viewer.imageryLayers.addImageryProvider(new Cesium.Kq3dFileImageryProvider({
|
|
1213
|
+
name: name,
|
|
1214
|
+
url: url
|
|
1215
|
+
}));
|
|
1216
|
+
layerData.guid = layer.guid;
|
|
1217
|
+
layerData.visible = true;
|
|
1218
|
+
layerData.serverType = "imagerylayer";
|
|
1219
|
+
break;
|
|
1220
|
+
|
|
1221
|
+
case 'obterrain':
|
|
1222
|
+
//ob地形瓦片文件
|
|
1223
|
+
layer = new Cesium.Kq3dFileTerrainProvider({
|
|
1224
|
+
name: name,
|
|
1225
|
+
url: url
|
|
1226
|
+
});
|
|
1227
|
+
if (!layer.guid) layer.guid = Cesium.createGuid();
|
|
1228
|
+
layerData.guid = layer.guid;
|
|
1229
|
+
layerData.visible = true;
|
|
1230
|
+
layerData.serverType = "terrainprovider";
|
|
1231
|
+
this._viewer.terrainProvider = layer;
|
|
1232
|
+
|
|
1233
|
+
this._terrainProviders.push(layer);
|
|
1234
|
+
|
|
1235
|
+
break;
|
|
1236
|
+
|
|
1237
|
+
case 'stkterrain':
|
|
1238
|
+
//stk地形瓦片文件
|
|
1239
|
+
layer = new Cesium.CesiumTerrainProvider({
|
|
1240
|
+
name: name,
|
|
1241
|
+
url: url,
|
|
1242
|
+
requestVertexNormals: true,
|
|
1243
|
+
requestWaterMask: false
|
|
1244
|
+
});
|
|
1245
|
+
if (!layer.guid) layer.guid = Cesium.createGuid();
|
|
1246
|
+
this.setTerrain(layer);
|
|
1247
|
+
|
|
1248
|
+
this._terrainProviders.push(layer);
|
|
1249
|
+
|
|
1250
|
+
layerData.guid = layer.guid;
|
|
1251
|
+
layerData.visible = true;
|
|
1252
|
+
layerData.serverType = "terrainprovider";
|
|
1253
|
+
break;
|
|
1254
|
+
|
|
1255
|
+
case "3dtiles":
|
|
1256
|
+
layer = this._viewer.scene.primitives.add(new Cesium.Cesium3DTileset({
|
|
1257
|
+
name: name,
|
|
1258
|
+
url: url
|
|
1259
|
+
}));
|
|
1260
|
+
layerData.guid = layer.guid;
|
|
1261
|
+
layerData.visible = true;
|
|
1262
|
+
layerData.serverType = "3dtiles";
|
|
1263
|
+
break;
|
|
1264
|
+
|
|
1265
|
+
case "kqgis3dserver":
|
|
1266
|
+
promise = this._viewer.addKq3dServerLayerGroupExt(url).then(group => {
|
|
1267
|
+
var layers = group._addedLayers || group._layers;
|
|
1268
|
+
|
|
1269
|
+
if (layers) {
|
|
1270
|
+
var length = layers.length;
|
|
1271
|
+
|
|
1272
|
+
if (length > 1) {
|
|
1273
|
+
layerData.guid = group.guid;
|
|
1274
|
+
layerData.children = [];
|
|
1275
|
+
}
|
|
1276
|
+
|
|
1277
|
+
for (var i = 0; i < length; i++) {
|
|
1278
|
+
var serverType = "";
|
|
1279
|
+
|
|
1280
|
+
if (layers[i] instanceof Cesium.Cesium3DTileset) {
|
|
1281
|
+
serverType = "3dtiles";
|
|
1282
|
+
} else if (layers[i] instanceof Cesium.ImageryLayer) {
|
|
1283
|
+
serverType = "imagerylayer";
|
|
1284
|
+
} else if (layers[i] instanceof Cesium.Kq3dFileTerrainProvider || layers[i] instanceof Cesium.CesiumTerrainProvider) {
|
|
1285
|
+
serverType = "terrainprovider";
|
|
1286
|
+
|
|
1287
|
+
this._terrainProviders.push(layers[i]);
|
|
1288
|
+
} else if (layers[i] instanceof Cesium.Kq3dGeoJsonDataSource) {
|
|
1289
|
+
serverType = "datasource";
|
|
1290
|
+
}
|
|
1291
|
+
|
|
1292
|
+
if (!layers[i].guid) layers[i].guid = Cesium.createGuid();
|
|
1293
|
+
|
|
1294
|
+
if (length > 1) {
|
|
1295
|
+
layerData.children.push({
|
|
1296
|
+
guid: layers[i].guid,
|
|
1297
|
+
name: layers[i].name,
|
|
1298
|
+
visible: true,
|
|
1299
|
+
serverType: serverType
|
|
1300
|
+
});
|
|
1301
|
+
} else {
|
|
1302
|
+
layerData.guid = layers[i].guid;
|
|
1303
|
+
layerData.visible = true;
|
|
1304
|
+
layerData.serverType = serverType;
|
|
1305
|
+
}
|
|
1306
|
+
}
|
|
1307
|
+
}
|
|
1308
|
+
});
|
|
1309
|
+
break;
|
|
1310
|
+
|
|
1311
|
+
case "kqgisimageserver":
|
|
1312
|
+
layer = this._viewer.imageryLayers.addImageryProvider(new Cesium.Kq3dKQGISServerImageryProviderExt({
|
|
1313
|
+
name: name,
|
|
1314
|
+
url: url,
|
|
1315
|
+
layerName: layerData.layerName
|
|
1316
|
+
}));
|
|
1317
|
+
layerData.guid = layer.guid;
|
|
1318
|
+
layerData.visible = true;
|
|
1319
|
+
layerData.serverType = "imagerylayer";
|
|
1320
|
+
break;
|
|
1321
|
+
|
|
1322
|
+
case "kqgismapserver":
|
|
1323
|
+
var layerInfo = layerData.sourceLayers.find(item => {
|
|
1324
|
+
return item.id + "" == layerData.id + "";
|
|
1325
|
+
});
|
|
1326
|
+
|
|
1327
|
+
if (layerInfo) {
|
|
1328
|
+
for (var key in layerInfo) {
|
|
1329
|
+
if (!layerData[key]) {
|
|
1330
|
+
layerData[key] = layerInfo[key];
|
|
1331
|
+
}
|
|
1332
|
+
}
|
|
1333
|
+
|
|
1334
|
+
layerData.visible = true;
|
|
1335
|
+
var imageryProvider = new Cesium.Kq3dKQGISMapServerImageryProviderExt({
|
|
1336
|
+
url: url,
|
|
1337
|
+
ua_token: layerData.token,
|
|
1338
|
+
layers: layerData.id + ""
|
|
1339
|
+
});
|
|
1340
|
+
var imageryLayer = new Cesium.ImageryLayer(imageryProvider);
|
|
1341
|
+
imageryLayer.name = layerData.guid;
|
|
1342
|
+
|
|
1343
|
+
this._viewer.imageryLayers.add(imageryLayer);
|
|
1344
|
+
}
|
|
1345
|
+
|
|
1346
|
+
break;
|
|
1347
|
+
|
|
1348
|
+
case "arcgismapserver":
|
|
1349
|
+
layer = this._viewer.imageryLayers.addImageryProvider(new Cesium.Kq3dArcGISMapServerImageryProvider({
|
|
1350
|
+
name: name,
|
|
1351
|
+
url: url,
|
|
1352
|
+
layers: layerData.id + ""
|
|
1353
|
+
}));
|
|
1354
|
+
layerData.guid = layer.guid;
|
|
1355
|
+
layerData.visible = true;
|
|
1356
|
+
layerData.serverType = "imagerylayer";
|
|
1357
|
+
break;
|
|
1358
|
+
|
|
1359
|
+
case "wms":
|
|
1360
|
+
//配置id时只能是单个图层
|
|
1361
|
+
promise = this._viewer.addWMSLayerGroup(url, {
|
|
1362
|
+
layers: layerData.id + ""
|
|
1363
|
+
}).then(group => {
|
|
1364
|
+
var layers = group._addedLayers || group._layers;
|
|
1365
|
+
|
|
1366
|
+
if (layers && layers.length > 0) {
|
|
1367
|
+
layerData.guid = layers[0].guid;
|
|
1368
|
+
layerData.name = name || layers[0].name;
|
|
1369
|
+
layerData.visible = true;
|
|
1370
|
+
layerData.serverType = "imagerylayer";
|
|
1371
|
+
}
|
|
1372
|
+
});
|
|
1373
|
+
break;
|
|
1374
|
+
|
|
1375
|
+
case "wmts":
|
|
1376
|
+
//配置id时只能是单个图层
|
|
1377
|
+
promise = this._viewer.addWMTSLayerGroup(url, {
|
|
1378
|
+
layers: layerData.id + ""
|
|
1379
|
+
}).then(group => {
|
|
1380
|
+
var layers = group._addedLayers || group._layers;
|
|
1381
|
+
|
|
1382
|
+
if (layers && layers.length > 0) {
|
|
1383
|
+
layerData.guid = layers[0].guid;
|
|
1384
|
+
layerData.name = name || layers[0].name;
|
|
1385
|
+
layerData.visible = true;
|
|
1386
|
+
layerData.serverType = "imagerylayer";
|
|
1387
|
+
}
|
|
1388
|
+
});
|
|
1389
|
+
break;
|
|
1390
|
+
// case "wfs":
|
|
1391
|
+
// var wfsProvider = new Cesium.Kq3dWebFeatureServiceProvider({
|
|
1392
|
+
// url: url,
|
|
1393
|
+
// typeName: name
|
|
1394
|
+
// });
|
|
1395
|
+
// var that = this;
|
|
1396
|
+
// wfsProvider.load().then(function (data) {
|
|
1397
|
+
// var ds = new Cesium.Kq3dGeoJsonDataSource(name);
|
|
1398
|
+
// ds.load(data, that._geojsonStyle).then(ds => {
|
|
1399
|
+
// that._viewer.dataSources.add(ds);
|
|
1400
|
+
// ds.autoAvoid(that._viewer);
|
|
1401
|
+
// layerData.guid = ds.guid;
|
|
1402
|
+
// layerData.visible = true;
|
|
1403
|
+
// layerData.serverType = "datasource";
|
|
1404
|
+
// });
|
|
1405
|
+
// });
|
|
1406
|
+
// break;
|
|
1407
|
+
|
|
1408
|
+
case "geojson":
|
|
1409
|
+
var ds = new Cesium.Kq3dGeoJsonDataSource(name);
|
|
1410
|
+
promise = ds.load(url, this._geojsonStyle).then(ds => {
|
|
1411
|
+
this._viewer.dataSources.add(ds);
|
|
1412
|
+
|
|
1413
|
+
ds.autoAvoid(this._viewer);
|
|
1414
|
+
layerData.guid = ds.guid;
|
|
1415
|
+
layerData.visible = true;
|
|
1416
|
+
layerData.serverType = "datasource";
|
|
1417
|
+
});
|
|
1418
|
+
break;
|
|
1419
|
+
|
|
1420
|
+
case "kml":
|
|
1421
|
+
var ds = new Cesium.KmlDataSource({
|
|
1422
|
+
name: name,
|
|
1423
|
+
camera: this._viewer.camera,
|
|
1424
|
+
canvas: this._viewer.scene.canvas
|
|
1425
|
+
});
|
|
1426
|
+
promise = ds.load(url).then(ds => {
|
|
1427
|
+
this._viewer.dataSources.add(ds);
|
|
1428
|
+
|
|
1429
|
+
layerData.guid = ds.guid;
|
|
1430
|
+
layerData.visible = true;
|
|
1431
|
+
layerData.serverType = "datasource";
|
|
1432
|
+
});
|
|
1433
|
+
break;
|
|
1434
|
+
|
|
1435
|
+
case "czml":
|
|
1436
|
+
var ds = new Cesium.CzmlDataSource(name);
|
|
1437
|
+
promise = ds.load(url).then(ds => {
|
|
1438
|
+
this._viewer.dataSources.add(ds);
|
|
1439
|
+
|
|
1440
|
+
layerData.guid = ds.guid;
|
|
1441
|
+
layerData.visible = true;
|
|
1442
|
+
layerData.serverType = "datasource";
|
|
1443
|
+
});
|
|
1444
|
+
break;
|
|
1445
|
+
|
|
1446
|
+
case "tianditu":
|
|
1447
|
+
layer = this._viewer.imageryLayers.addImageryProvider(new Cesium.Kq3dTiandituImageryProvider({
|
|
1448
|
+
name: name,
|
|
1449
|
+
mapStyle: layerData.layerType + "_c"
|
|
1450
|
+
}));
|
|
1451
|
+
layerData.guid = layer.guid;
|
|
1452
|
+
layerData.visible = true;
|
|
1453
|
+
layerData.serverType = "imagerylayer";
|
|
1454
|
+
break;
|
|
1455
|
+
|
|
1456
|
+
case "baidu":
|
|
1457
|
+
layer = this._viewer.imageryLayers.addImageryProvider(new Cesium.Kq3dBaiduMapsImageryProvider({
|
|
1458
|
+
name: name,
|
|
1459
|
+
mapStyle: layerData.layerType
|
|
1460
|
+
}));
|
|
1461
|
+
layerData.guid = layer.guid;
|
|
1462
|
+
layerData.visible = true;
|
|
1463
|
+
layerData.serverType = "imagerylayer";
|
|
1464
|
+
break;
|
|
1465
|
+
|
|
1466
|
+
case "gaode":
|
|
1467
|
+
layer = this._viewer.imageryLayers.addImageryProvider(new Cesium.Kq3dAMapsImageryProvider({
|
|
1468
|
+
name: name,
|
|
1469
|
+
mapStyle: layerData.layerType
|
|
1470
|
+
}));
|
|
1471
|
+
layerData.guid = layer.guid;
|
|
1472
|
+
layerData.visible = true;
|
|
1473
|
+
layerData.serverType = "imagerylayer";
|
|
1474
|
+
break;
|
|
1475
|
+
|
|
1476
|
+
case "tencent":
|
|
1477
|
+
layer = this._viewer.imageryLayers.addImageryProvider(new Cesium.Kq3dQQMapsImageryProvider({
|
|
1478
|
+
name: name,
|
|
1479
|
+
mapStyle: layerData.layerType
|
|
1480
|
+
}));
|
|
1481
|
+
layerData.guid = layer.guid;
|
|
1482
|
+
layerData.visible = true;
|
|
1483
|
+
layerData.serverType = "imagerylayer";
|
|
1484
|
+
break;
|
|
1485
|
+
|
|
1486
|
+
default:
|
|
1487
|
+
break;
|
|
1488
|
+
}
|
|
1489
|
+
|
|
1490
|
+
return promise;
|
|
1014
1491
|
} //添加服务数据
|
|
1015
1492
|
|
|
1016
1493
|
|
|
@@ -1803,7 +2280,6 @@ class ScenceViewViewModel extends (mitt_default()) {
|
|
|
1803
2280
|
eventMapTarget: this._viewerId
|
|
1804
2281
|
});
|
|
1805
2282
|
global_event_default().off("load-viewer");
|
|
1806
|
-
this._layerManager && this._layerManager.addServiceData(this._props.service);
|
|
1807
2283
|
this.fire("mounted", {
|
|
1808
2284
|
eventMapTarget: this
|
|
1809
2285
|
});
|
|
@@ -2144,7 +2620,9 @@ const __default__ = {
|
|
|
2144
2620
|
showToolButtons: {
|
|
2145
2621
|
type: Boolean,
|
|
2146
2622
|
default: true
|
|
2147
|
-
}
|
|
2623
|
+
},
|
|
2624
|
+
// ScenceView初始化的参数对象,包含初始化范围和layer信息。
|
|
2625
|
+
scenceInfo: Object
|
|
2148
2626
|
},
|
|
2149
2627
|
|
|
2150
2628
|
setup(__props, {
|
|
@@ -4006,8 +4484,7 @@ var external_xe_utils_namespaceObject = require("xe-utils");
|
|
|
4006
4484
|
var external_xe_utils_default = /*#__PURE__*/__webpack_require__.n(external_xe_utils_namespaceObject);
|
|
4007
4485
|
;// CONCATENATED MODULE: ./src/webgl/gpuspatialquery/GpuSpatialQueryViewModel.js
|
|
4008
4486
|
|
|
4009
|
-
|
|
4010
|
-
|
|
4487
|
+
//GPU空间查询逻辑类
|
|
4011
4488
|
class GpuSpatialQueryViewModel {
|
|
4012
4489
|
constructor(scenceView, options) {
|
|
4013
4490
|
_defineProperty(this, "_gpuSpatialQuery", null);
|
|
@@ -4106,10 +4583,7 @@ class GpuSpatialQueryViewModel {
|
|
|
4106
4583
|
image: null
|
|
4107
4584
|
});
|
|
4108
4585
|
} else {
|
|
4109
|
-
|
|
4110
|
-
message: "请添加模型后分析!",
|
|
4111
|
-
type: "warning"
|
|
4112
|
-
});
|
|
4586
|
+
throw "请添加模型后分析!";
|
|
4113
4587
|
}
|
|
4114
4588
|
} // 开始查询
|
|
4115
4589
|
|
|
@@ -4847,8 +5321,7 @@ GpuSpatialQuery.install = (Vue, opts) => {
|
|
|
4847
5321
|
|
|
4848
5322
|
;// CONCATENATED MODULE: ./src/webgl/modelselect/ModelSelectViewModel.js
|
|
4849
5323
|
|
|
4850
|
-
|
|
4851
|
-
|
|
5324
|
+
//模型拾取逻辑类
|
|
4852
5325
|
class ModelSelectViewModel {
|
|
4853
5326
|
constructor(scenceView, pickCallFunc) {
|
|
4854
5327
|
_defineProperty(this, "_viewer", null);
|
|
@@ -4917,10 +5390,7 @@ class ModelSelectViewModel {
|
|
|
4917
5390
|
this.setCursor("crosshair");
|
|
4918
5391
|
this._isPick = true;
|
|
4919
5392
|
} else {
|
|
4920
|
-
|
|
4921
|
-
message: "请添加模型后拾取!",
|
|
4922
|
-
type: "warning"
|
|
4923
|
-
});
|
|
5393
|
+
throw "请添加模型后拾取!";
|
|
4924
5394
|
}
|
|
4925
5395
|
} //清除
|
|
4926
5396
|
|
|
@@ -6278,8 +6748,7 @@ ViewshedAnalysis.install = (Vue, opts) => {
|
|
|
6278
6748
|
|
|
6279
6749
|
;// CONCATENATED MODULE: ./src/webgl/shadowanalysis/ShadowAnalysisViewModel.js
|
|
6280
6750
|
|
|
6281
|
-
|
|
6282
|
-
|
|
6751
|
+
// 分析逻辑类
|
|
6283
6752
|
class ShadowAnalysisViewModel {
|
|
6284
6753
|
constructor(scenceView, viewModel) {
|
|
6285
6754
|
_defineProperty(this, "_shadowAnalysis", null);
|
|
@@ -6359,10 +6828,7 @@ class ShadowAnalysisViewModel {
|
|
|
6359
6828
|
clampToGround: true
|
|
6360
6829
|
});
|
|
6361
6830
|
} else {
|
|
6362
|
-
|
|
6363
|
-
message: "请添加模型后分析!",
|
|
6364
|
-
type: "warning"
|
|
6365
|
-
});
|
|
6831
|
+
throw "请添加模型后分析!";
|
|
6366
6832
|
}
|
|
6367
6833
|
} // 阴影分析
|
|
6368
6834
|
|
|
@@ -7956,8 +8422,7 @@ ProfileAnalysis.install = (Vue, opts) => {
|
|
|
7956
8422
|
|
|
7957
8423
|
;// CONCATENATED MODULE: ./src/webgl/skylineanalysis/SkylineAnalysisViewModel.js
|
|
7958
8424
|
|
|
7959
|
-
|
|
7960
|
-
|
|
8425
|
+
//天际线分析逻辑类
|
|
7961
8426
|
class SkylineAnalysisViewModel {
|
|
7962
8427
|
/**
|
|
7963
8428
|
* 天际线分析逻辑类
|
|
@@ -8051,10 +8516,7 @@ class SkylineAnalysisViewModel {
|
|
|
8051
8516
|
|
|
8052
8517
|
this.setSkyline2D();
|
|
8053
8518
|
} else {
|
|
8054
|
-
|
|
8055
|
-
message: "请添加模型后提取!",
|
|
8056
|
-
type: "warning"
|
|
8057
|
-
});
|
|
8519
|
+
throw "请添加模型后提取!";
|
|
8058
8520
|
}
|
|
8059
8521
|
}
|
|
8060
8522
|
/**
|
|
@@ -8086,10 +8548,7 @@ class SkylineAnalysisViewModel {
|
|
|
8086
8548
|
|
|
8087
8549
|
this._skylineAnalysis.viewer.camera.moveBackward(30);
|
|
8088
8550
|
} else {
|
|
8089
|
-
|
|
8090
|
-
message: "请添加模型后绘制!",
|
|
8091
|
-
type: "warning"
|
|
8092
|
-
});
|
|
8551
|
+
throw "请添加模型后绘制!";
|
|
8093
8552
|
}
|
|
8094
8553
|
}
|
|
8095
8554
|
/**
|
|
@@ -8680,8 +9139,7 @@ SkylineAnalysis.install = (Vue, opts) => {
|
|
|
8680
9139
|
|
|
8681
9140
|
;// CONCATENATED MODULE: ./src/webgl/terrainoperation/TerrainOperationViewModel.js
|
|
8682
9141
|
|
|
8683
|
-
|
|
8684
|
-
|
|
9142
|
+
//地形淹没分析逻辑类
|
|
8685
9143
|
class TerrainOperationViewModel {
|
|
8686
9144
|
constructor(scenceView, viewModel) {
|
|
8687
9145
|
_defineProperty(this, "_terrainexcavationext", null);
|
|
@@ -8801,10 +9259,7 @@ class TerrainOperationViewModel {
|
|
|
8801
9259
|
clampToGround: true
|
|
8802
9260
|
});
|
|
8803
9261
|
} else {
|
|
8804
|
-
|
|
8805
|
-
message: "请加载地形后分析!",
|
|
8806
|
-
type: "warning"
|
|
8807
|
-
});
|
|
9262
|
+
throw "请加载地形后分析!";
|
|
8808
9263
|
}
|
|
8809
9264
|
} //改变分析类型
|
|
8810
9265
|
|
|
@@ -9116,7 +9571,6 @@ TerrainOperation.install = (Vue, opts) => {
|
|
|
9116
9571
|
;// CONCATENATED MODULE: ./src/webgl/excavatefillanalysis/ExcavateFillAnalysisViewModel.js
|
|
9117
9572
|
|
|
9118
9573
|
|
|
9119
|
-
|
|
9120
9574
|
window.turf = turf_namespaceObject; //填挖方分析逻辑类
|
|
9121
9575
|
|
|
9122
9576
|
class ExcavateFillAnalysisViewModel {
|
|
@@ -9179,10 +9633,7 @@ class ExcavateFillAnalysisViewModel {
|
|
|
9179
9633
|
clampToGround: true
|
|
9180
9634
|
});
|
|
9181
9635
|
} else {
|
|
9182
|
-
|
|
9183
|
-
message: "请加载地形后分析!",
|
|
9184
|
-
type: "warning"
|
|
9185
|
-
});
|
|
9636
|
+
throw "请加载地形后分析!";
|
|
9186
9637
|
}
|
|
9187
9638
|
} //清除全部结果
|
|
9188
9639
|
|
|
@@ -9639,7 +10090,6 @@ ExcavateFillAnalysis.install = (Vue, opts) => {
|
|
|
9639
10090
|
|
|
9640
10091
|
;// CONCATENATED MODULE: ./src/webgl/floodanalysis/FloodAnalysisViewModel.js
|
|
9641
10092
|
|
|
9642
|
-
|
|
9643
10093
|
//地形淹没分析逻辑类
|
|
9644
10094
|
|
|
9645
10095
|
class FloodAnalysisViewModel {
|
|
@@ -9751,10 +10201,11 @@ class FloodAnalysisViewModel {
|
|
|
9751
10201
|
|
|
9752
10202
|
this._measureHandler.startMeasure(Cesium.Kq3dMeasureMode.HorizontalArea);
|
|
9753
10203
|
} else {
|
|
9754
|
-
|
|
9755
|
-
|
|
9756
|
-
|
|
9757
|
-
|
|
10204
|
+
if (this._mode === 0) {
|
|
10205
|
+
throw "请加载地形后分析!";
|
|
10206
|
+
} else if (this._mode === 1) {
|
|
10207
|
+
throw "请加载模型后分析!";
|
|
10208
|
+
}
|
|
9758
10209
|
}
|
|
9759
10210
|
} //清除全部结果
|
|
9760
10211
|
|
|
@@ -10435,7 +10886,6 @@ FloodAnalysis.install = (Vue, opts) => {
|
|
|
10435
10886
|
|
|
10436
10887
|
;// CONCATENATED MODULE: ./src/webgl/slopeanalysis/SlopeAnalysisViewModel.js
|
|
10437
10888
|
|
|
10438
|
-
|
|
10439
10889
|
// 分析逻辑类
|
|
10440
10890
|
|
|
10441
10891
|
class SlopeAnalysisViewModel {
|
|
@@ -10574,10 +11024,7 @@ class SlopeAnalysisViewModel {
|
|
|
10574
11024
|
}
|
|
10575
11025
|
}
|
|
10576
11026
|
} else {
|
|
10577
|
-
|
|
10578
|
-
message: "请加载地形后分析!",
|
|
10579
|
-
type: "warning"
|
|
10580
|
-
});
|
|
11027
|
+
throw "请加载地形后分析!";
|
|
10581
11028
|
}
|
|
10582
11029
|
} //修改填充样式
|
|
10583
11030
|
|
|
@@ -11424,7 +11871,6 @@ SlopeAnalysis.install = (Vue, opts) => {
|
|
|
11424
11871
|
|
|
11425
11872
|
;// CONCATENATED MODULE: ./src/webgl/isolineanalysis/IsolineAnalysisViewModel.js
|
|
11426
11873
|
|
|
11427
|
-
|
|
11428
11874
|
//等值线分析逻辑类
|
|
11429
11875
|
|
|
11430
11876
|
class IsolineAnalysisViewModel {
|
|
@@ -11644,10 +12090,7 @@ class IsolineAnalysisViewModel {
|
|
|
11644
12090
|
clampToGround: true
|
|
11645
12091
|
});
|
|
11646
12092
|
} else {
|
|
11647
|
-
|
|
11648
|
-
message: "请加载地形后分析!",
|
|
11649
|
-
type: "warning"
|
|
11650
|
-
});
|
|
12093
|
+
throw "请加载地形后分析!";
|
|
11651
12094
|
}
|
|
11652
12095
|
} //清除全部结果
|
|
11653
12096
|
|
|
@@ -14878,8 +15321,7 @@ BoxClip.install = (Vue, opts) => {
|
|
|
14878
15321
|
|
|
14879
15322
|
;// CONCATENATED MODULE: ./src/webgl/planeclip/PlaneClipViewModel.js
|
|
14880
15323
|
|
|
14881
|
-
|
|
14882
|
-
|
|
15324
|
+
//Box裁剪逻辑类
|
|
14883
15325
|
class PlaneClipViewModel {
|
|
14884
15326
|
constructor(scenceView, options) {
|
|
14885
15327
|
_defineProperty(this, "_viewer", null);
|
|
@@ -14984,10 +15426,7 @@ class PlaneClipViewModel {
|
|
|
14984
15426
|
image: null
|
|
14985
15427
|
});
|
|
14986
15428
|
} else {
|
|
14987
|
-
|
|
14988
|
-
message: "请添加模型后裁剪!",
|
|
14989
|
-
type: "warning"
|
|
14990
|
-
});
|
|
15429
|
+
throw "请添加模型后裁剪!";
|
|
14991
15430
|
}
|
|
14992
15431
|
} //清除全部
|
|
14993
15432
|
|
|
@@ -15582,10 +16021,8 @@ class AddDataViewModel {
|
|
|
15582
16021
|
outlineColor: Cesium.Color.BLACK,
|
|
15583
16022
|
outlineWidth: 5,
|
|
15584
16023
|
style: Cesium.LabelStyle.FILL_AND_OUTLINE,
|
|
15585
|
-
horizontalOrigin: Cesium.HorizontalOrigin.MIDDLE,
|
|
15586
|
-
verticalOrigin: Cesium.VerticalOrigin.TOP,
|
|
15587
16024
|
eyeOffset: Cesium.Cartesian3.ZERO,
|
|
15588
|
-
pixelOffset: new Cesium.Cartesian2(0, 8),
|
|
16025
|
+
pixelOffset: new Cesium.Cartesian2(0, -8),
|
|
15589
16026
|
disableDepthTestDistance: 35000000,
|
|
15590
16027
|
distanceDisplayCondition: new Cesium.DistanceDisplayCondition(0, 1000000000000)
|
|
15591
16028
|
},
|
|
@@ -16860,7 +17297,6 @@ AddData.install = (Vue, opts) => {
|
|
|
16860
17297
|
;// CONCATENATED MODULE: ./src/webgl/particleeffect/ParticleEffectViewModel.js
|
|
16861
17298
|
|
|
16862
17299
|
|
|
16863
|
-
|
|
16864
17300
|
let _gravityScratch = null;
|
|
16865
17301
|
let _gravity = 1.0; //粒子特效逻辑类
|
|
16866
17302
|
|
|
@@ -16994,10 +17430,7 @@ class ParticleEffectViewModel {
|
|
|
16994
17430
|
image: null
|
|
16995
17431
|
});
|
|
16996
17432
|
} else {
|
|
16997
|
-
|
|
16998
|
-
message: "请添加模型后添加特效!",
|
|
16999
|
-
type: "warning"
|
|
17000
|
-
});
|
|
17433
|
+
throw "请添加模型后添加特效!";
|
|
17001
17434
|
}
|
|
17002
17435
|
} //清除粒子特效
|
|
17003
17436
|
|
|
@@ -17871,7 +18304,6 @@ ParticleEffect.install = (Vue, opts) => {
|
|
|
17871
18304
|
;// CONCATENATED MODULE: ./src/webgl/weathereffect/WeatherEffectViewModel.js
|
|
17872
18305
|
|
|
17873
18306
|
|
|
17874
|
-
|
|
17875
18307
|
let WeatherEffectViewModel_gravityScratch = null;
|
|
17876
18308
|
let _gravityStart = 0.0;
|
|
17877
18309
|
|
|
@@ -17969,10 +18401,7 @@ class WeatherEffectViewModel {
|
|
|
17969
18401
|
image: null
|
|
17970
18402
|
});
|
|
17971
18403
|
} else {
|
|
17972
|
-
|
|
17973
|
-
message: "请添加模型后添加特效!",
|
|
17974
|
-
type: "warning"
|
|
17975
|
-
});
|
|
18404
|
+
throw "请添加模型后添加特效!";
|
|
17976
18405
|
}
|
|
17977
18406
|
} //清除天气特效
|
|
17978
18407
|
|