@kq_npm/client3d_webgl_vue 4.0.1-beta → 4.0.2-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 CHANGED
@@ -754,6 +754,7 @@ class AddDataViewModel {
754
754
 
755
755
 
756
756
  parseService(options, cb) {
757
+ let that = this;
757
758
  let url = options.url;
758
759
  let type = options.type || "";
759
760
  type = type.toLowerCase();
@@ -770,7 +771,7 @@ class AddDataViewModel {
770
771
  if (["kml", "kmz", "czml", "geojson", "json", "topojson"].indexOf(ext) > -1) {
771
772
  name = url.substring(url.lastIndexOf("/") + 1);
772
773
  } else {
773
- if (type !== "wms" && type !== "wmts") {
774
+ if (type !== "wms" && type !== "wmts" && type !== 'kqgisaggregationserver') {
774
775
  name = url.substring(0, url.lastIndexOf("/"));
775
776
  name = name.substring(name.lastIndexOf("/") + 1);
776
777
  }
@@ -883,7 +884,9 @@ class AddDataViewModel {
883
884
  break;
884
885
 
885
886
  case "kqgis3dserver":
886
- this._viewer.addKq3dServerLayerGroupExt(url).then(group => {
887
+ this._viewer.addKq3dServerLayerGroupExt(url, {
888
+ viewer: this._viewer
889
+ }).then(group => {
887
890
  var layers = group._addedLayers || group._layers;
888
891
 
889
892
  if (layers && layers.length > 0) {
@@ -921,12 +924,16 @@ class AddDataViewModel {
921
924
  serverType = "datasource";
922
925
  addType = "geojson";
923
926
  url = layers[i]._baseUri + layers[i]._name;
927
+ } else if (layers[i] instanceof Cesium.Kq3dS3MTilesLayer) {
928
+ serverType = "s3m";
929
+ addType = "s3m";
930
+ url = layers[i]._url;
924
931
  }
925
932
 
926
933
  if (!layers[i].guid) layers[i].guid = Cesium.createGuid();
927
934
  node.children.push({
928
935
  guid: layers[i].guid,
929
- name: layers[i].name,
936
+ name: layers[i].name || layers[i]._name,
930
937
  visible: true,
931
938
  serverType: serverType,
932
939
  url: url,
@@ -945,28 +952,69 @@ class AddDataViewModel {
945
952
  break;
946
953
 
947
954
  case "kqgisimageserver":
948
- layer = this._viewer.imageryLayers.addImageryProvider(new Cesium.Kq3dKQGISServerImageryProviderExt({
949
- name: name,
950
- url: url,
951
- layerName: name
952
- }));
953
- this.flyToLayer(layer);
955
+ // KQGIS 影像服务
954
956
  node = {
955
- guid: layer.guid,
957
+ guid: Cesium.createGuid(),
956
958
  name: name,
957
- visible: true,
958
- serverType: "imagerylayer",
959
- lsType: "ls",
960
- url: url,
961
- addType: type,
962
- layerName: name,
963
- type: "Image" // 图层树显示图标使用
964
-
959
+ children: [],
960
+ lsType: "ls"
965
961
  };
962
+ const service = new KqGIS.Map.GetMapImageInfoService(url);
963
+ service.init(result => {
964
+ if (result.resultcode === "success") {
965
+ let list = service.collectionInfoList;
966
+
967
+ if (list && list.length > 0) {
968
+ list.forEach(item => {
969
+ layer = that._viewer.imageryLayers.addImageryProvider(new Cesium.Kq3dKQGISServerImageryProviderExt({
970
+ name: item.collectionName,
971
+ url: url,
972
+ layerName: item.collectionName
973
+ }));
974
+ node.children.push({
975
+ guid: layer.guid,
976
+ name: item.collectionName,
977
+ visible: true,
978
+ serverType: "imagerylayer",
979
+ lsType: "ls",
980
+ url: url,
981
+ addType: type,
982
+ layerName: item.collectionName,
983
+ type: "Image" // 图层树显示图标使用
966
984
 
967
- this._layerManager.addTempLayerNode(node);
985
+ });
986
+ });
987
+ this.flyToLayer(layer);
988
+
989
+ this._layerManager.addTempLayerNode(node);
990
+
991
+ cb && cb(node);
992
+ }
993
+ } else {
994
+ console.log('解析服务原始信息失败.');
995
+ }
996
+ }); // layer = this._viewer.imageryLayers.addImageryProvider(
997
+ // new Cesium.Kq3dKQGISServerImageryProviderExt({
998
+ // name: name,
999
+ // url: url,
1000
+ // layerName: name
1001
+ // })
1002
+ // );
1003
+ // this.flyToLayer(layer);
1004
+ // node = {
1005
+ // guid: layer.guid,
1006
+ // name: name,
1007
+ // visible: true,
1008
+ // serverType: "imagerylayer",
1009
+ // lsType: "ls",
1010
+ // url: url,
1011
+ // addType: type,
1012
+ // layerName: name,
1013
+ // type: "Image" // 图层树显示图标使用
1014
+ // };
1015
+ // this._layerManager.addTempLayerNode(node);
1016
+ // cb && cb(node);
968
1017
 
969
- cb && cb(node);
970
1018
  break;
971
1019
 
972
1020
  case "kqgismapserver":
@@ -1153,9 +1201,18 @@ class AddDataViewModel {
1153
1201
  case "wmts":
1154
1202
  case "kqgistileserver":
1155
1203
  case "kqgisaggregationserver":
1204
+ if (type === "kqgistileserver") {
1205
+ if (url.indexOf('?') > 0) {
1206
+ url = url.replace('?', '/wmts?');
1207
+ } else {
1208
+ url += '/wmts';
1209
+ }
1210
+ }
1211
+
1212
+ let defaultName = 'wmts';
1213
+
1156
1214
  this._viewer.addWMTSLayerGroup(url).then(group => {
1157
- var defaultName = 'wmts';
1158
- if (type === "kqgistileserver") defaultName = 'tile';
1215
+ // if(type === "kqgistileserver") defaultName = name;
1159
1216
  if (type === "kqgisaggregationserver") defaultName = 'aggregation';
1160
1217
  node = {
1161
1218
  guid: group.guid,
@@ -1201,7 +1258,6 @@ class AddDataViewModel {
1201
1258
  url: url,
1202
1259
  typeName: name
1203
1260
  });
1204
- var that = this;
1205
1261
  wfsProvider.load().then(function (data) {
1206
1262
  var ds = new Cesium.Kq3dGeoJsonDataSource(name);
1207
1263
  ds.load(data, that._geojsonStyle).then(ds => {
@@ -1625,7 +1681,7 @@ const __default__ = {
1625
1681
  }, {
1626
1682
  type: "kqgisimageserver",
1627
1683
  name: language.value.KQGISImageServer,
1628
- namePlaceholder: language.value.imageCollectionName,
1684
+ namePlaceholder: language.value.unnamedLayer,
1629
1685
  urlPlaceholder: language.value.format + ":http://<host>:<port>/kqgis/rest/services/<servername>/image",
1630
1686
  description: language.value.imagertyImageServerdescription
1631
1687
  }, {
@@ -1638,7 +1694,7 @@ const __default__ = {
1638
1694
  type: "kqgistileserver",
1639
1695
  name: language.value.KQGISTileServer,
1640
1696
  namePlaceholder: language.value.unnamedLayer,
1641
- urlPlaceholder: language.value.format + ":http://<host>:<port>/kqgis/rest/services/<servername>/tile/wmts",
1697
+ urlPlaceholder: language.value.format + ":http://<host>:<port>/kqgis/rest/services/<servername>/tile",
1642
1698
  description: language.value.imagertyTileServerdescription
1643
1699
  }, {
1644
1700
  type: "kqgisaggregationserver",
package/index.js CHANGED
@@ -956,10 +956,15 @@ class DrawManager {
956
956
  this._viewer.scene.globe.depthTestAgainstTerrain = true;
957
957
  }
958
958
 
959
- var unionOptions = { ...this._drawStyle[type],
960
- ...options
959
+ var unionOptions = { ...this._drawStyle[type]
961
960
  };
962
961
 
962
+ for (const key in unionOptions) {
963
+ if (Object.hasOwnProperty.call(options, key)) {
964
+ unionOptions[key] = options[key];
965
+ }
966
+ }
967
+
963
968
  if (type === "polyline") {
964
969
  //标记组件使用
965
970
  options.opacity = 1;
@@ -2230,6 +2235,22 @@ class LayerManager {
2230
2235
 
2231
2236
  break;
2232
2237
 
2238
+ case "s3m":
2239
+ layerData.visible = isAdd;
2240
+ layerData.serverType = "s3m";
2241
+
2242
+ if (isAdd) {
2243
+ layer = this._viewer.scene.primitives.add(new Cesium.Kq3dS3MTilesLayer({
2244
+ name: name,
2245
+ url: url,
2246
+ context: this._viewer.scene._context,
2247
+ ...params
2248
+ }));
2249
+ layer._guid = layerData.guid;
2250
+ }
2251
+
2252
+ break;
2253
+
2233
2254
  case "kqgis3dserver":
2234
2255
  var that = this;
2235
2256
  layerData.visible = isAdd;
@@ -2942,7 +2963,7 @@ class LayerManager {
2942
2963
  });
2943
2964
 
2944
2965
  return layer;
2945
- } else if (type === "3dtiles") {
2966
+ } else if (type === "3dtiles" || type === "s3m") {
2946
2967
  let primitives = this._viewer.scene.primitives._primitives;
2947
2968
  let layer = primitives.find(item => {
2948
2969
  return item.guid === guid;
@@ -3002,7 +3023,7 @@ class LayerManager {
3002
3023
 
3003
3024
 
3004
3025
  getLayerTreeData() {
3005
- return [...this._layerTreeData];
3026
+ return JSON.parse(JSON.stringify(this._layerTreeData));
3006
3027
  } //是否包含值
3007
3028
 
3008
3029
 
@@ -3127,6 +3148,10 @@ class LayerManager {
3127
3148
  });
3128
3149
  } else if (layer instanceof Cesium.Kq3dDataFlowLayer) {
3129
3150
  layer.flyToBounds();
3151
+ } else if (layer instanceof Cesium.Kq3dS3MTilesLayer) {
3152
+ viewer.camera.flyTo({
3153
+ destination: layer.rectangle
3154
+ });
3130
3155
  }
3131
3156
  } //获取底图图层Index
3132
3157
 
@@ -3410,6 +3435,7 @@ class LayerManager {
3410
3435
  break;
3411
3436
 
3412
3437
  case "3dtiles":
3438
+ case "s3m":
3413
3439
  this._viewer.scene.primitives.remove(layer);
3414
3440
 
3415
3441
  break;
@@ -23422,6 +23448,7 @@ class AddDataViewModel {
23422
23448
 
23423
23449
 
23424
23450
  parseService(options, cb) {
23451
+ let that = this;
23425
23452
  let url = options.url;
23426
23453
  let type = options.type || "";
23427
23454
  type = type.toLowerCase();
@@ -23438,7 +23465,7 @@ class AddDataViewModel {
23438
23465
  if (["kml", "kmz", "czml", "geojson", "json", "topojson"].indexOf(ext) > -1) {
23439
23466
  name = url.substring(url.lastIndexOf("/") + 1);
23440
23467
  } else {
23441
- if (type !== "wms" && type !== "wmts") {
23468
+ if (type !== "wms" && type !== "wmts" && type !== 'kqgisaggregationserver') {
23442
23469
  name = url.substring(0, url.lastIndexOf("/"));
23443
23470
  name = name.substring(name.lastIndexOf("/") + 1);
23444
23471
  }
@@ -23551,7 +23578,9 @@ class AddDataViewModel {
23551
23578
  break;
23552
23579
 
23553
23580
  case "kqgis3dserver":
23554
- this._viewer.addKq3dServerLayerGroupExt(url).then(group => {
23581
+ this._viewer.addKq3dServerLayerGroupExt(url, {
23582
+ viewer: this._viewer
23583
+ }).then(group => {
23555
23584
  var layers = group._addedLayers || group._layers;
23556
23585
 
23557
23586
  if (layers && layers.length > 0) {
@@ -23589,12 +23618,16 @@ class AddDataViewModel {
23589
23618
  serverType = "datasource";
23590
23619
  addType = "geojson";
23591
23620
  url = layers[i]._baseUri + layers[i]._name;
23621
+ } else if (layers[i] instanceof Cesium.Kq3dS3MTilesLayer) {
23622
+ serverType = "s3m";
23623
+ addType = "s3m";
23624
+ url = layers[i]._url;
23592
23625
  }
23593
23626
 
23594
23627
  if (!layers[i].guid) layers[i].guid = Cesium.createGuid();
23595
23628
  node.children.push({
23596
23629
  guid: layers[i].guid,
23597
- name: layers[i].name,
23630
+ name: layers[i].name || layers[i]._name,
23598
23631
  visible: true,
23599
23632
  serverType: serverType,
23600
23633
  url: url,
@@ -23613,28 +23646,69 @@ class AddDataViewModel {
23613
23646
  break;
23614
23647
 
23615
23648
  case "kqgisimageserver":
23616
- layer = this._viewer.imageryLayers.addImageryProvider(new Cesium.Kq3dKQGISServerImageryProviderExt({
23617
- name: name,
23618
- url: url,
23619
- layerName: name
23620
- }));
23621
- this.flyToLayer(layer);
23649
+ // KQGIS 影像服务
23622
23650
  node = {
23623
- guid: layer.guid,
23651
+ guid: Cesium.createGuid(),
23624
23652
  name: name,
23625
- visible: true,
23626
- serverType: "imagerylayer",
23627
- lsType: "ls",
23628
- url: url,
23629
- addType: type,
23630
- layerName: name,
23631
- type: "Image" // 图层树显示图标使用
23632
-
23653
+ children: [],
23654
+ lsType: "ls"
23633
23655
  };
23656
+ const service = new KqGIS.Map.GetMapImageInfoService(url);
23657
+ service.init(result => {
23658
+ if (result.resultcode === "success") {
23659
+ let list = service.collectionInfoList;
23660
+
23661
+ if (list && list.length > 0) {
23662
+ list.forEach(item => {
23663
+ layer = that._viewer.imageryLayers.addImageryProvider(new Cesium.Kq3dKQGISServerImageryProviderExt({
23664
+ name: item.collectionName,
23665
+ url: url,
23666
+ layerName: item.collectionName
23667
+ }));
23668
+ node.children.push({
23669
+ guid: layer.guid,
23670
+ name: item.collectionName,
23671
+ visible: true,
23672
+ serverType: "imagerylayer",
23673
+ lsType: "ls",
23674
+ url: url,
23675
+ addType: type,
23676
+ layerName: item.collectionName,
23677
+ type: "Image" // 图层树显示图标使用
23634
23678
 
23635
- this._layerManager.addTempLayerNode(node);
23679
+ });
23680
+ });
23681
+ this.flyToLayer(layer);
23682
+
23683
+ this._layerManager.addTempLayerNode(node);
23684
+
23685
+ cb && cb(node);
23686
+ }
23687
+ } else {
23688
+ AddDataViewModel_console.log('解析服务原始信息失败.');
23689
+ }
23690
+ }); // layer = this._viewer.imageryLayers.addImageryProvider(
23691
+ // new Cesium.Kq3dKQGISServerImageryProviderExt({
23692
+ // name: name,
23693
+ // url: url,
23694
+ // layerName: name
23695
+ // })
23696
+ // );
23697
+ // this.flyToLayer(layer);
23698
+ // node = {
23699
+ // guid: layer.guid,
23700
+ // name: name,
23701
+ // visible: true,
23702
+ // serverType: "imagerylayer",
23703
+ // lsType: "ls",
23704
+ // url: url,
23705
+ // addType: type,
23706
+ // layerName: name,
23707
+ // type: "Image" // 图层树显示图标使用
23708
+ // };
23709
+ // this._layerManager.addTempLayerNode(node);
23710
+ // cb && cb(node);
23636
23711
 
23637
- cb && cb(node);
23638
23712
  break;
23639
23713
 
23640
23714
  case "kqgismapserver":
@@ -23821,9 +23895,18 @@ class AddDataViewModel {
23821
23895
  case "wmts":
23822
23896
  case "kqgistileserver":
23823
23897
  case "kqgisaggregationserver":
23898
+ if (type === "kqgistileserver") {
23899
+ if (url.indexOf('?') > 0) {
23900
+ url = url.replace('?', '/wmts?');
23901
+ } else {
23902
+ url += '/wmts';
23903
+ }
23904
+ }
23905
+
23906
+ let defaultName = 'wmts';
23907
+
23824
23908
  this._viewer.addWMTSLayerGroup(url).then(group => {
23825
- var defaultName = 'wmts';
23826
- if (type === "kqgistileserver") defaultName = 'tile';
23909
+ // if(type === "kqgistileserver") defaultName = name;
23827
23910
  if (type === "kqgisaggregationserver") defaultName = 'aggregation';
23828
23911
  node = {
23829
23912
  guid: group.guid,
@@ -23869,7 +23952,6 @@ class AddDataViewModel {
23869
23952
  url: url,
23870
23953
  typeName: name
23871
23954
  });
23872
- var that = this;
23873
23955
  wfsProvider.load().then(function (data) {
23874
23956
  var ds = new Cesium.Kq3dGeoJsonDataSource(name);
23875
23957
  ds.load(data, that._geojsonStyle).then(ds => {
@@ -24291,7 +24373,7 @@ const AddDatavue_type_script_setup_true_lang_js_default_ = {
24291
24373
  }, {
24292
24374
  type: "kqgisimageserver",
24293
24375
  name: language.value.KQGISImageServer,
24294
- namePlaceholder: language.value.imageCollectionName,
24376
+ namePlaceholder: language.value.unnamedLayer,
24295
24377
  urlPlaceholder: language.value.format + ":http://<host>:<port>/kqgis/rest/services/<servername>/image",
24296
24378
  description: language.value.imagertyImageServerdescription
24297
24379
  }, {
@@ -24304,7 +24386,7 @@ const AddDatavue_type_script_setup_true_lang_js_default_ = {
24304
24386
  type: "kqgistileserver",
24305
24387
  name: language.value.KQGISTileServer,
24306
24388
  namePlaceholder: language.value.unnamedLayer,
24307
- urlPlaceholder: language.value.format + ":http://<host>:<port>/kqgis/rest/services/<servername>/tile/wmts",
24389
+ urlPlaceholder: language.value.format + ":http://<host>:<port>/kqgis/rest/services/<servername>/tile",
24308
24390
  description: language.value.imagertyTileServerdescription
24309
24391
  }, {
24310
24392
  type: "kqgisaggregationserver",
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name":"@kq_npm/client3d_webgl_vue","description":"KQGIS Client3D for Vue.js","version":"4.0.1-beta","homepage":"","keywords":["KQGIS","webGL","Vue"],"browserslist":["> 1%","last 2 versions","not dead","not ie 11"],"author":"KQWEB GROUP","license":"Apache-2.0","dependencies":{"colorcolor":"^1.1.1","echarts":"^5.3.3","js-cookie":"^3.0.1","omit.js":"^2.0.2","save":"^2.5.0","tinycolor2":"^1.4.2","vue-i18n":"9.2.0-beta.36","xlsx":"^0.18.5","css-vars-ponyfill":"^2.4.8","html2canvas":"^1.4.1","xe-utils":"^3.5.4"}}
1
+ {"name":"@kq_npm/client3d_webgl_vue","description":"KQGIS Client3D for Vue.js","version":"4.0.2-beta","homepage":"","keywords":["KQGIS","webGL","Vue"],"browserslist":["> 1%","last 2 versions","not dead","not ie 11"],"author":"KQWEB GROUP","license":"Apache-2.0","dependencies":{"colorcolor":"^1.1.1","echarts":"^5.3.3","js-cookie":"^3.0.1","omit.js":"^2.0.2","save":"^2.5.0","tinycolor2":"^1.4.2","vue-i18n":"9.2.0-beta.36","xlsx":"^0.18.5","css-vars-ponyfill":"^2.4.8","html2canvas":"^1.4.1","xe-utils":"^3.5.4"}}
@@ -626,6 +626,7 @@ class AddDataViewModel {
626
626
 
627
627
 
628
628
  parseService(options, cb) {
629
+ let that = this;
629
630
  let url = options.url;
630
631
  let type = options.type || "";
631
632
  type = type.toLowerCase();
@@ -642,7 +643,7 @@ class AddDataViewModel {
642
643
  if (["kml", "kmz", "czml", "geojson", "json", "topojson"].indexOf(ext) > -1) {
643
644
  name = url.substring(url.lastIndexOf("/") + 1);
644
645
  } else {
645
- if (type !== "wms" && type !== "wmts") {
646
+ if (type !== "wms" && type !== "wmts" && type !== 'kqgisaggregationserver') {
646
647
  name = url.substring(0, url.lastIndexOf("/"));
647
648
  name = name.substring(name.lastIndexOf("/") + 1);
648
649
  }
@@ -755,7 +756,9 @@ class AddDataViewModel {
755
756
  break;
756
757
 
757
758
  case "kqgis3dserver":
758
- this._viewer.addKq3dServerLayerGroupExt(url).then(group => {
759
+ this._viewer.addKq3dServerLayerGroupExt(url, {
760
+ viewer: this._viewer
761
+ }).then(group => {
759
762
  var layers = group._addedLayers || group._layers;
760
763
 
761
764
  if (layers && layers.length > 0) {
@@ -793,12 +796,16 @@ class AddDataViewModel {
793
796
  serverType = "datasource";
794
797
  addType = "geojson";
795
798
  url = layers[i]._baseUri + layers[i]._name;
799
+ } else if (layers[i] instanceof Cesium.Kq3dS3MTilesLayer) {
800
+ serverType = "s3m";
801
+ addType = "s3m";
802
+ url = layers[i]._url;
796
803
  }
797
804
 
798
805
  if (!layers[i].guid) layers[i].guid = Cesium.createGuid();
799
806
  node.children.push({
800
807
  guid: layers[i].guid,
801
- name: layers[i].name,
808
+ name: layers[i].name || layers[i]._name,
802
809
  visible: true,
803
810
  serverType: serverType,
804
811
  url: url,
@@ -817,28 +824,69 @@ class AddDataViewModel {
817
824
  break;
818
825
 
819
826
  case "kqgisimageserver":
820
- layer = this._viewer.imageryLayers.addImageryProvider(new Cesium.Kq3dKQGISServerImageryProviderExt({
821
- name: name,
822
- url: url,
823
- layerName: name
824
- }));
825
- this.flyToLayer(layer);
827
+ // KQGIS 影像服务
826
828
  node = {
827
- guid: layer.guid,
829
+ guid: Cesium.createGuid(),
828
830
  name: name,
829
- visible: true,
830
- serverType: "imagerylayer",
831
- lsType: "ls",
832
- url: url,
833
- addType: type,
834
- layerName: name,
835
- type: "Image" // 图层树显示图标使用
836
-
831
+ children: [],
832
+ lsType: "ls"
837
833
  };
834
+ const service = new KqGIS.Map.GetMapImageInfoService(url);
835
+ service.init(result => {
836
+ if (result.resultcode === "success") {
837
+ let list = service.collectionInfoList;
838
+
839
+ if (list && list.length > 0) {
840
+ list.forEach(item => {
841
+ layer = that._viewer.imageryLayers.addImageryProvider(new Cesium.Kq3dKQGISServerImageryProviderExt({
842
+ name: item.collectionName,
843
+ url: url,
844
+ layerName: item.collectionName
845
+ }));
846
+ node.children.push({
847
+ guid: layer.guid,
848
+ name: item.collectionName,
849
+ visible: true,
850
+ serverType: "imagerylayer",
851
+ lsType: "ls",
852
+ url: url,
853
+ addType: type,
854
+ layerName: item.collectionName,
855
+ type: "Image" // 图层树显示图标使用
838
856
 
839
- this._layerManager.addTempLayerNode(node);
857
+ });
858
+ });
859
+ this.flyToLayer(layer);
860
+
861
+ this._layerManager.addTempLayerNode(node);
862
+
863
+ cb && cb(node);
864
+ }
865
+ } else {
866
+ console.log('解析服务原始信息失败.');
867
+ }
868
+ }); // layer = this._viewer.imageryLayers.addImageryProvider(
869
+ // new Cesium.Kq3dKQGISServerImageryProviderExt({
870
+ // name: name,
871
+ // url: url,
872
+ // layerName: name
873
+ // })
874
+ // );
875
+ // this.flyToLayer(layer);
876
+ // node = {
877
+ // guid: layer.guid,
878
+ // name: name,
879
+ // visible: true,
880
+ // serverType: "imagerylayer",
881
+ // lsType: "ls",
882
+ // url: url,
883
+ // addType: type,
884
+ // layerName: name,
885
+ // type: "Image" // 图层树显示图标使用
886
+ // };
887
+ // this._layerManager.addTempLayerNode(node);
888
+ // cb && cb(node);
840
889
 
841
- cb && cb(node);
842
890
  break;
843
891
 
844
892
  case "kqgismapserver":
@@ -1025,9 +1073,18 @@ class AddDataViewModel {
1025
1073
  case "wmts":
1026
1074
  case "kqgistileserver":
1027
1075
  case "kqgisaggregationserver":
1076
+ if (type === "kqgistileserver") {
1077
+ if (url.indexOf('?') > 0) {
1078
+ url = url.replace('?', '/wmts?');
1079
+ } else {
1080
+ url += '/wmts';
1081
+ }
1082
+ }
1083
+
1084
+ let defaultName = 'wmts';
1085
+
1028
1086
  this._viewer.addWMTSLayerGroup(url).then(group => {
1029
- var defaultName = 'wmts';
1030
- if (type === "kqgistileserver") defaultName = 'tile';
1087
+ // if(type === "kqgistileserver") defaultName = name;
1031
1088
  if (type === "kqgisaggregationserver") defaultName = 'aggregation';
1032
1089
  node = {
1033
1090
  guid: group.guid,
@@ -1073,7 +1130,6 @@ class AddDataViewModel {
1073
1130
  url: url,
1074
1131
  typeName: name
1075
1132
  });
1076
- var that = this;
1077
1133
  wfsProvider.load().then(function (data) {
1078
1134
  var ds = new Cesium.Kq3dGeoJsonDataSource(name);
1079
1135
  ds.load(data, that._geojsonStyle).then(ds => {
@@ -1497,7 +1553,7 @@ const __default__ = {
1497
1553
  }, {
1498
1554
  type: "kqgisimageserver",
1499
1555
  name: language.value.KQGISImageServer,
1500
- namePlaceholder: language.value.imageCollectionName,
1556
+ namePlaceholder: language.value.unnamedLayer,
1501
1557
  urlPlaceholder: language.value.format + ":http://<host>:<port>/kqgis/rest/services/<servername>/image",
1502
1558
  description: language.value.imagertyImageServerdescription
1503
1559
  }, {
@@ -1510,7 +1566,7 @@ const __default__ = {
1510
1566
  type: "kqgistileserver",
1511
1567
  name: language.value.KQGISTileServer,
1512
1568
  namePlaceholder: language.value.unnamedLayer,
1513
- urlPlaceholder: language.value.format + ":http://<host>:<port>/kqgis/rest/services/<servername>/tile/wmts",
1569
+ urlPlaceholder: language.value.format + ":http://<host>:<port>/kqgis/rest/services/<servername>/tile",
1514
1570
  description: language.value.imagertyTileServerdescription
1515
1571
  }, {
1516
1572
  type: "kqgisaggregationserver",
@@ -27056,10 +27112,15 @@ class DrawManager {
27056
27112
  this._viewer.scene.globe.depthTestAgainstTerrain = true;
27057
27113
  }
27058
27114
 
27059
- var unionOptions = { ...this._drawStyle[type],
27060
- ...options
27115
+ var unionOptions = { ...this._drawStyle[type]
27061
27116
  };
27062
27117
 
27118
+ for (const key in unionOptions) {
27119
+ if (Object.hasOwnProperty.call(options, key)) {
27120
+ unionOptions[key] = options[key];
27121
+ }
27122
+ }
27123
+
27063
27124
  if (type === "polyline") {
27064
27125
  //标记组件使用
27065
27126
  options.opacity = 1;
@@ -28317,6 +28378,22 @@ class LayerManager {
28317
28378
 
28318
28379
  break;
28319
28380
 
28381
+ case "s3m":
28382
+ layerData.visible = isAdd;
28383
+ layerData.serverType = "s3m";
28384
+
28385
+ if (isAdd) {
28386
+ layer = this._viewer.scene.primitives.add(new Cesium.Kq3dS3MTilesLayer({
28387
+ name: name,
28388
+ url: url,
28389
+ context: this._viewer.scene._context,
28390
+ ...params
28391
+ }));
28392
+ layer._guid = layerData.guid;
28393
+ }
28394
+
28395
+ break;
28396
+
28320
28397
  case "kqgis3dserver":
28321
28398
  var that = this;
28322
28399
  layerData.visible = isAdd;
@@ -29029,7 +29106,7 @@ class LayerManager {
29029
29106
  });
29030
29107
 
29031
29108
  return layer;
29032
- } else if (type === "3dtiles") {
29109
+ } else if (type === "3dtiles" || type === "s3m") {
29033
29110
  let primitives = this._viewer.scene.primitives._primitives;
29034
29111
  let layer = primitives.find(item => {
29035
29112
  return item.guid === guid;
@@ -29089,7 +29166,7 @@ class LayerManager {
29089
29166
 
29090
29167
 
29091
29168
  getLayerTreeData() {
29092
- return [...this._layerTreeData];
29169
+ return JSON.parse(JSON.stringify(this._layerTreeData));
29093
29170
  } //是否包含值
29094
29171
 
29095
29172
 
@@ -29214,6 +29291,10 @@ class LayerManager {
29214
29291
  });
29215
29292
  } else if (layer instanceof Cesium.Kq3dDataFlowLayer) {
29216
29293
  layer.flyToBounds();
29294
+ } else if (layer instanceof Cesium.Kq3dS3MTilesLayer) {
29295
+ viewer.camera.flyTo({
29296
+ destination: layer.rectangle
29297
+ });
29217
29298
  }
29218
29299
  } //获取底图图层Index
29219
29300
 
@@ -29497,6 +29578,7 @@ class LayerManager {
29497
29578
  break;
29498
29579
 
29499
29580
  case "3dtiles":
29581
+ case "s3m":
29500
29582
  this._viewer.scene.primitives.remove(layer);
29501
29583
 
29502
29584
  break;