@kq_npm/client3d_webgl_vue 3.6.0-beta → 3.6.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
@@ -196,8 +196,6 @@ var icons_vue_ = __webpack_require__(8422);
196
196
  var client_icons_vue_ = __webpack_require__(348);
197
197
  // EXTERNAL MODULE: external "@kq_npm/client_common_vue/_utils/gis-utils"
198
198
  var gis_utils_ = __webpack_require__(826);
199
- // EXTERNAL MODULE: external "@kq_npm/client_common_vue/_utils/const-image"
200
- var const_image_ = __webpack_require__(9702);
201
199
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
202
200
  var defineProperty = __webpack_require__(8270);
203
201
  // EXTERNAL MODULE: external "@kq_npm/client_common_vue/_utils/webmapservice"
@@ -207,10 +205,13 @@ var webmapservice_default = /*#__PURE__*/__webpack_require__.n(webmapservice_);
207
205
  var util_ = __webpack_require__(9519);
208
206
  // EXTERNAL MODULE: ./src/common/_ui/message/index.js + 1 modules
209
207
  var message = __webpack_require__(909);
208
+ // EXTERNAL MODULE: external "@kq_npm/client_common_vue/_utils/const-image"
209
+ var const_image_ = __webpack_require__(9702);
210
210
  ;// CONCATENATED MODULE: ./src/webgl/adddata/AddDataViewModel.js
211
211
 
212
212
 
213
213
 
214
+
214
215
  //添加数据逻辑类
215
216
 
216
217
  class AddDataViewModel {
@@ -237,7 +238,7 @@ class AddDataViewModel {
237
238
  disableDepthTestDistance: Number.POSITIVE_INFINITY
238
239
  },
239
240
  billboard: {
240
- image: "",
241
+ image: const_image_.BILLBOARD_IMAGE_URL,
241
242
  width: 12,
242
243
  height: 12,
243
244
  disableDepthTestDistance: Number.POSITIVE_INFINITY
@@ -258,7 +259,6 @@ class AddDataViewModel {
258
259
 
259
260
  this._viewer = scenceView._viewer;
260
261
  this._layerManager = scenceView._layerManager;
261
- this._geojsonStyle.billboard.image = options.billboardImage;
262
262
  this._language = scenceView._language;
263
263
  this._geometryServerUrl = options.geometryServerUrl;
264
264
  this._geometryServerToken = options.geometryServerToken;
@@ -924,6 +924,36 @@ class AddDataViewModel {
924
924
  cb && cb(node);
925
925
  break;
926
926
 
927
+ case "kqgisdataflowserver":
928
+ let guid = Cesium.createGuid();
929
+ layer = new Cesium.Kq3dDataFlowLayer(this._viewer, {
930
+ url: url,
931
+ style: {
932
+ image: const_image_.CAR_URL,
933
+ width: 30,
934
+ height: 30
935
+ }
936
+ });
937
+ layer.guid = guid;
938
+ layer.init();
939
+ layer.flyToBounds();
940
+ node = {
941
+ guid: guid,
942
+ name: name,
943
+ visible: true,
944
+ serverType: "dataflowlayer",
945
+ lsType: "ls",
946
+ url: url,
947
+ addType: type
948
+ };
949
+
950
+ this._layerManager.addTempLayerNode(node);
951
+
952
+ this._layerManager._dataFlowLayerList.push(layer);
953
+
954
+ cb && cb(node);
955
+ break;
956
+
927
957
  case "wms":
928
958
  this._viewer.addWMSLayerGroup(url).then(group => {
929
959
  node = {
@@ -1211,7 +1241,6 @@ const _hoisted_12 = {
1211
1241
 
1212
1242
 
1213
1243
 
1214
-
1215
1244
  //accept=".zip,.geojson,.topojson,.json,.kml,.kmz,.czml,.csv,.xls,.xlsx,.txt"
1216
1245
 
1217
1246
  const __default__ = {
@@ -1365,9 +1394,9 @@ const __default__ = {
1365
1394
  description: language.value.imagertyImageServerdescription
1366
1395
  }, {
1367
1396
  type: "kqgisdataflowserver",
1368
- name: language.value.KQGISDataflowServer + "(未实现)",
1397
+ name: language.value.KQGISDataflowServer,
1369
1398
  namePlaceholder: language.value.unnamedLayer,
1370
- urlPlaceholder: language.value.format + ":http://<host>:<port>/kqgis/rest/services/<servername>/dataflow",
1399
+ urlPlaceholder: language.value.format + ":http://<host>:<port>/streaming/rest/services/<servername>/dataflow",
1371
1400
  description: language.value.imagertyDataflowServerdescription
1372
1401
  }, {
1373
1402
  type: "kqgistileserver",
@@ -1440,7 +1469,6 @@ const __default__ = {
1440
1469
  ];
1441
1470
  dataSourceType.value = dataSourceTypeList.value[0];
1442
1471
  let options = {
1443
- billboardImage: const_image_.BILLBOARD_IMAGE_URL,
1444
1472
  geometryServerUrl: props.geometryServerUrl,
1445
1473
  geometryServerToken: props.geometryServerToken
1446
1474
  };
package/index.js CHANGED
@@ -1164,6 +1164,7 @@ class LayerManager {
1164
1164
  //图层原数据列表(包含文件夹节点,融合子图层)
1165
1165
  //置顶图层guid
1166
1166
  //记录置顶图层index
1167
+ //数据流服务图层集合
1167
1168
  //地形集合
1168
1169
  //加载geojson数据样式
1169
1170
  constructor(scenceView) {
@@ -1183,6 +1184,8 @@ class LayerManager {
1183
1184
 
1184
1185
  _defineProperty(this, "_emptyTerrainProvider", new Cesium.EllipsoidTerrainProvider({}));
1185
1186
 
1187
+ _defineProperty(this, "_dataFlowLayerList", []);
1188
+
1186
1189
  _defineProperty(this, "_terrainProviders", []);
1187
1190
 
1188
1191
  _defineProperty(this, "_geojsonStyle", {
@@ -1282,6 +1285,10 @@ class LayerManager {
1282
1285
 
1283
1286
  this._layerListData_old.push(layer_old);
1284
1287
  }, this);
1288
+ }, error => {
1289
+ console.log(error);
1290
+ }).catch(error => {
1291
+ console.error(error);
1285
1292
  });
1286
1293
  sourcePromises.push(sourcePromise);
1287
1294
  }
@@ -1368,6 +1375,8 @@ class LayerManager {
1368
1375
  type = "kqgis3dserver";
1369
1376
  } else if (layerData.sourceType === "mvt") {
1370
1377
  type = "mvt";
1378
+ } else if (layerData.sourceType === "kqdataflowserver") {
1379
+ type = "kqgisdataflowserver";
1371
1380
  }
1372
1381
 
1373
1382
  layerData.addType = type;
@@ -1618,6 +1627,28 @@ class LayerManager {
1618
1627
 
1619
1628
  break;
1620
1629
 
1630
+ case "kqgisdataflowserver":
1631
+ layerData.visible = isAdd;
1632
+ layerData.serverType = "dataflowlayer";
1633
+
1634
+ if (isAdd) {
1635
+ layer = new Cesium.Kq3dDataFlowLayer(this._viewer, {
1636
+ url: url,
1637
+ style: {
1638
+ image: const_image_namespaceObject.CAR_URL,
1639
+ width: 30,
1640
+ height: 30
1641
+ },
1642
+ ...params
1643
+ });
1644
+ layer.init();
1645
+ layer.guid = layerData.guid;
1646
+
1647
+ this._dataFlowLayerList.push(layer);
1648
+ }
1649
+
1650
+ break;
1651
+
1621
1652
  case "wms":
1622
1653
  //配置id时只能是单个图层
1623
1654
  if (layerData.rect84) {
@@ -2158,6 +2189,12 @@ class LayerManager {
2158
2189
  let layer = dataSources.find(item => {
2159
2190
  return item.guid === guid;
2160
2191
  });
2192
+ return layer;
2193
+ } else if (type === "dataflowlayer") {
2194
+ let layer = this._dataFlowLayerList.find(item => {
2195
+ return item.guid === guid;
2196
+ });
2197
+
2161
2198
  return layer;
2162
2199
  }
2163
2200
  } //通过guid获取图层类型
@@ -2322,6 +2359,8 @@ class LayerManager {
2322
2359
  });
2323
2360
  }
2324
2361
  });
2362
+ } else if (layer instanceof Cesium.Kq3dDataFlowLayer) {
2363
+ layer.flyToBounds();
2325
2364
  }
2326
2365
  } //获取底图图层Index
2327
2366
 
@@ -2593,6 +2632,19 @@ class LayerManager {
2593
2632
 
2594
2633
  break;
2595
2634
 
2635
+ case "dataflowlayer":
2636
+ layer.destroy(); //删除_dataFlowLayerList数据
2637
+
2638
+ for (var i = 0; i < this._dataFlowLayerList.length; i++) {
2639
+ if (guid === this._dataFlowLayerList[i].guid) {
2640
+ this._dataFlowLayerList.splice(i, 1);
2641
+
2642
+ break;
2643
+ }
2644
+ }
2645
+
2646
+ break;
2647
+
2596
2648
  default:
2597
2649
  break;
2598
2650
  }
@@ -6409,20 +6461,18 @@ class MeasureViewModel {
6409
6461
  if (this._measureHandler.measureResults) {
6410
6462
  this._measureHandler.measureResults.forEach(measureResult => {
6411
6463
  let labels = measureResult.labels._labels;
6464
+ let positions = measureResult.polyline.positions;
6465
+ let dist = 0; // 更新每段长度值
6412
6466
 
6413
- if (labels.length === 1) {
6414
- if (labels[0].text) labels[0].text = this.convertValueUnit(distanceTotal, unit);
6415
- } else {
6416
- let positions = measureResult.polyline.positions;
6417
- let dist = 0;
6418
-
6419
- for (let i = 0; i < labels.length; i++) {
6420
- if (labels[i].show && labels[i].text && labels[i].text) {
6421
- dist = Cesium.Cartesian3.distance(positions[i], positions[i + 1]);
6422
- labels[i].text = this.convertValueUnit(dist, unit);
6423
- }
6467
+ for (let i = 0; i < labels.length - 1; i++) {
6468
+ if (labels[i].show && labels[i].text) {
6469
+ dist = Cesium.Cartesian3.distance(positions[i], positions[i + 1]);
6470
+ labels[i].text = this.convertValueUnit(dist, unit);
6424
6471
  }
6425
- }
6472
+ } // 更新总长度值
6473
+
6474
+
6475
+ measureResult.label.text = this.convertValueUnit(distanceTotal, unit);
6426
6476
  }, this);
6427
6477
  }
6428
6478
  } //测量距离数值单位换算
@@ -11976,18 +12026,21 @@ class ProfileAnalysisViewModel {
11976
12026
  //显示结果的DOM元素
11977
12027
  //显示结果的DOM元素显隐
11978
12028
  //全局参数对象
11979
- constructor(viewer, viewModel, chart) {
12029
+ constructor(scenceView, viewModel, chart) {
11980
12030
  _defineProperty(this, "_profileAnalysis", null);
11981
12031
 
11982
12032
  _defineProperty(this, "_ProfileAnalysisChart", null);
11983
12033
 
11984
12034
  _defineProperty(this, "_ProfileAnalysisChartVis", null);
11985
12035
 
12036
+ _defineProperty(this, "_language", null);
12037
+
11986
12038
  _defineProperty(this, "_globaOptions", {
11987
12039
  width: 360,
11988
12040
  height: 360
11989
12041
  });
11990
12042
 
12043
+ this._language = scenceView._language;
11991
12044
  this._globaOptions.viewModel = {
11992
12045
  angle: viewModel.perspectiveAngle || 90,
11993
12046
  frustumH: viewModel.targetAreaHeight || 200,
@@ -11995,7 +12048,7 @@ class ProfileAnalysisViewModel {
11995
12048
  isPerspective: viewModel.enablePerspective || true,
11996
12049
  cameraHeight: viewModel.cameraHeight || 0
11997
12050
  };
11998
- this._globaOptions.viewer = viewer;
12051
+ this._globaOptions.viewer = scenceView._viewer;
11999
12052
  this._globaOptions.viewer.scene.postProcessStages._fxaa.enabled = true;
12000
12053
  this._globaOptions.viewer.scene.globe.depthTestAgainstTerrain = true;
12001
12054
  this._ProfileAnalysisChart = chart;
@@ -12138,14 +12191,14 @@ class ProfileAnalysisViewModel {
12138
12191
  this._globaOptions.ctx.stroke(); //=====================
12139
12192
 
12140
12193
 
12141
- let str = String(this._profileAnalysis._frustumW.toPrecision(7));
12142
- let str1 = "Rect width : " + str;
12143
- str = String(this._profileAnalysis._maxW.toPrecision(7));
12144
- let str2 = "Total width : " + str;
12145
- str = String(this._profileAnalysis._frustumH.toPrecision(7));
12146
- let str3 = "Rect height : " + str;
12147
- str = String(this._profileAnalysis._maxH.toPrecision(7));
12148
- let str4 = "Total height : " + str;
12194
+ let str = String(this._profileAnalysis._frustumW.toFixed(2));
12195
+ let str1 = this._language.profileLength + " : " + str + "m";
12196
+ str = String(this._profileAnalysis._maxW.toFixed(2));
12197
+ let str2 = this._language.totalLength + " : " + str + "m";
12198
+ str = String(this._profileAnalysis._frustumH.toFixed(2));
12199
+ let str3 = this._language.profileHeight + " : " + str + "m";
12200
+ str = String(this._profileAnalysis._maxH.toFixed(2));
12201
+ let str4 = this._language.totalHeight + " : " + str + "m";
12149
12202
  this._globaOptions.ctx.font = "bold 15px Arial";
12150
12203
  this._globaOptions.ctx.textAlign = "left";
12151
12204
  this._globaOptions.ctx.textBaseline = "bottom";
@@ -12339,7 +12392,7 @@ const ProfileAnalysisvue_type_script_setup_true_lang_js_default_ = {
12339
12392
  gis_utils_namespaceObject.utils.getWebMap(null, scenceView => {
12340
12393
  if (scenceView) {
12341
12394
  language.value = scenceView._language;
12342
- viewModel = new ProfileAnalysisViewModel(scenceView._viewer, {
12395
+ viewModel = new ProfileAnalysisViewModel(scenceView, {
12343
12396
  perspectiveAngle: formItem.perspectiveAngle,
12344
12397
  // 透视角度
12345
12398
  targetAreaWidth: formItem.targetAreaWidth,
@@ -21766,6 +21819,7 @@ PlaneClip.install = (Vue, opts) => {
21766
21819
 
21767
21820
 
21768
21821
 
21822
+
21769
21823
  //添加数据逻辑类
21770
21824
 
21771
21825
  class AddDataViewModel {
@@ -21792,7 +21846,7 @@ class AddDataViewModel {
21792
21846
  disableDepthTestDistance: Number.POSITIVE_INFINITY
21793
21847
  },
21794
21848
  billboard: {
21795
- image: "",
21849
+ image: const_image_namespaceObject.BILLBOARD_IMAGE_URL,
21796
21850
  width: 12,
21797
21851
  height: 12,
21798
21852
  disableDepthTestDistance: Number.POSITIVE_INFINITY
@@ -21813,7 +21867,6 @@ class AddDataViewModel {
21813
21867
 
21814
21868
  this._viewer = scenceView._viewer;
21815
21869
  this._layerManager = scenceView._layerManager;
21816
- this._geojsonStyle.billboard.image = options.billboardImage;
21817
21870
  this._language = scenceView._language;
21818
21871
  this._geometryServerUrl = options.geometryServerUrl;
21819
21872
  this._geometryServerToken = options.geometryServerToken;
@@ -22479,6 +22532,36 @@ class AddDataViewModel {
22479
22532
  cb && cb(node);
22480
22533
  break;
22481
22534
 
22535
+ case "kqgisdataflowserver":
22536
+ let guid = Cesium.createGuid();
22537
+ layer = new Cesium.Kq3dDataFlowLayer(this._viewer, {
22538
+ url: url,
22539
+ style: {
22540
+ image: const_image_namespaceObject.CAR_URL,
22541
+ width: 30,
22542
+ height: 30
22543
+ }
22544
+ });
22545
+ layer.guid = guid;
22546
+ layer.init();
22547
+ layer.flyToBounds();
22548
+ node = {
22549
+ guid: guid,
22550
+ name: name,
22551
+ visible: true,
22552
+ serverType: "dataflowlayer",
22553
+ lsType: "ls",
22554
+ url: url,
22555
+ addType: type
22556
+ };
22557
+
22558
+ this._layerManager.addTempLayerNode(node);
22559
+
22560
+ this._layerManager._dataFlowLayerList.push(layer);
22561
+
22562
+ cb && cb(node);
22563
+ break;
22564
+
22482
22565
  case "wms":
22483
22566
  this._viewer.addWMSLayerGroup(url).then(group => {
22484
22567
  node = {
@@ -22766,7 +22849,6 @@ const AddDatavue_type_script_setup_true_lang_js_hoisted_12 = {
22766
22849
 
22767
22850
 
22768
22851
 
22769
-
22770
22852
  //accept=".zip,.geojson,.topojson,.json,.kml,.kmz,.czml,.csv,.xls,.xlsx,.txt"
22771
22853
 
22772
22854
  const AddDatavue_type_script_setup_true_lang_js_default_ = {
@@ -22920,9 +23002,9 @@ const AddDatavue_type_script_setup_true_lang_js_default_ = {
22920
23002
  description: language.value.imagertyImageServerdescription
22921
23003
  }, {
22922
23004
  type: "kqgisdataflowserver",
22923
- name: language.value.KQGISDataflowServer + "(未实现)",
23005
+ name: language.value.KQGISDataflowServer,
22924
23006
  namePlaceholder: language.value.unnamedLayer,
22925
- urlPlaceholder: language.value.format + ":http://<host>:<port>/kqgis/rest/services/<servername>/dataflow",
23007
+ urlPlaceholder: language.value.format + ":http://<host>:<port>/streaming/rest/services/<servername>/dataflow",
22926
23008
  description: language.value.imagertyDataflowServerdescription
22927
23009
  }, {
22928
23010
  type: "kqgistileserver",
@@ -22995,7 +23077,6 @@ const AddDatavue_type_script_setup_true_lang_js_default_ = {
22995
23077
  ];
22996
23078
  dataSourceType.value = dataSourceTypeList.value[0];
22997
23079
  let options = {
22998
- billboardImage: const_image_namespaceObject.BILLBOARD_IMAGE_URL,
22999
23080
  geometryServerUrl: props.geometryServerUrl,
23000
23081
  geometryServerToken: props.geometryServerToken
23001
23082
  };
package/measure/index.js CHANGED
@@ -106,20 +106,18 @@ class MeasureViewModel {
106
106
  if (this._measureHandler.measureResults) {
107
107
  this._measureHandler.measureResults.forEach(measureResult => {
108
108
  let labels = measureResult.labels._labels;
109
+ let positions = measureResult.polyline.positions;
110
+ let dist = 0; // 更新每段长度值
109
111
 
110
- if (labels.length === 1) {
111
- if (labels[0].text) labels[0].text = this.convertValueUnit(distanceTotal, unit);
112
- } else {
113
- let positions = measureResult.polyline.positions;
114
- let dist = 0;
115
-
116
- for (let i = 0; i < labels.length; i++) {
117
- if (labels[i].show && labels[i].text && labels[i].text) {
118
- dist = Cesium.Cartesian3.distance(positions[i], positions[i + 1]);
119
- labels[i].text = this.convertValueUnit(dist, unit);
120
- }
112
+ for (let i = 0; i < labels.length - 1; i++) {
113
+ if (labels[i].show && labels[i].text) {
114
+ dist = Cesium.Cartesian3.distance(positions[i], positions[i + 1]);
115
+ labels[i].text = this.convertValueUnit(dist, unit);
121
116
  }
122
- }
117
+ } // 更新总长度值
118
+
119
+
120
+ measureResult.label.text = this.convertValueUnit(distanceTotal, unit);
123
121
  }, this);
124
122
  }
125
123
  } //测量距离数值单位换算
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name":"@kq_npm/client3d_webgl_vue","description":"KQGIS Client3D for Vue.js","version":"3.6.0-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":"3.6.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"}}
@@ -20,18 +20,21 @@ class ProfileAnalysisViewModel {
20
20
  //显示结果的DOM元素
21
21
  //显示结果的DOM元素显隐
22
22
  //全局参数对象
23
- constructor(viewer, viewModel, chart) {
23
+ constructor(scenceView, viewModel, chart) {
24
24
  (0,_Users_zpc_Documents_KQGEOSpace_KQGISClientForVue_node_modules_babel_runtime_helpers_esm_defineProperty_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z)(this, "_profileAnalysis", null);
25
25
 
26
26
  (0,_Users_zpc_Documents_KQGEOSpace_KQGISClientForVue_node_modules_babel_runtime_helpers_esm_defineProperty_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z)(this, "_ProfileAnalysisChart", null);
27
27
 
28
28
  (0,_Users_zpc_Documents_KQGEOSpace_KQGISClientForVue_node_modules_babel_runtime_helpers_esm_defineProperty_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z)(this, "_ProfileAnalysisChartVis", null);
29
29
 
30
+ (0,_Users_zpc_Documents_KQGEOSpace_KQGISClientForVue_node_modules_babel_runtime_helpers_esm_defineProperty_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z)(this, "_language", null);
31
+
30
32
  (0,_Users_zpc_Documents_KQGEOSpace_KQGISClientForVue_node_modules_babel_runtime_helpers_esm_defineProperty_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z)(this, "_globaOptions", {
31
33
  width: 360,
32
34
  height: 360
33
35
  });
34
36
 
37
+ this._language = scenceView._language;
35
38
  this._globaOptions.viewModel = {
36
39
  angle: viewModel.perspectiveAngle || 90,
37
40
  frustumH: viewModel.targetAreaHeight || 200,
@@ -39,7 +42,7 @@ class ProfileAnalysisViewModel {
39
42
  isPerspective: viewModel.enablePerspective || true,
40
43
  cameraHeight: viewModel.cameraHeight || 0
41
44
  };
42
- this._globaOptions.viewer = viewer;
45
+ this._globaOptions.viewer = scenceView._viewer;
43
46
  this._globaOptions.viewer.scene.postProcessStages._fxaa.enabled = true;
44
47
  this._globaOptions.viewer.scene.globe.depthTestAgainstTerrain = true;
45
48
  this._ProfileAnalysisChart = chart;
@@ -182,14 +185,14 @@ class ProfileAnalysisViewModel {
182
185
  this._globaOptions.ctx.stroke(); //=====================
183
186
 
184
187
 
185
- let str = String(this._profileAnalysis._frustumW.toPrecision(7));
186
- let str1 = "Rect width : " + str;
187
- str = String(this._profileAnalysis._maxW.toPrecision(7));
188
- let str2 = "Total width : " + str;
189
- str = String(this._profileAnalysis._frustumH.toPrecision(7));
190
- let str3 = "Rect height : " + str;
191
- str = String(this._profileAnalysis._maxH.toPrecision(7));
192
- let str4 = "Total height : " + str;
188
+ let str = String(this._profileAnalysis._frustumW.toFixed(2));
189
+ let str1 = this._language.profileLength + " : " + str + "m";
190
+ str = String(this._profileAnalysis._maxW.toFixed(2));
191
+ let str2 = this._language.totalLength + " : " + str + "m";
192
+ str = String(this._profileAnalysis._frustumH.toFixed(2));
193
+ let str3 = this._language.profileHeight + " : " + str + "m";
194
+ str = String(this._profileAnalysis._maxH.toFixed(2));
195
+ let str4 = this._language.totalHeight + " : " + str + "m";
193
196
  this._globaOptions.ctx.font = "bold 15px Arial";
194
197
  this._globaOptions.ctx.textAlign = "left";
195
198
  this._globaOptions.ctx.textBaseline = "bottom";
@@ -534,7 +537,7 @@ const __default__ = {
534
537
  gis_utils_.utils.getWebMap(null, scenceView => {
535
538
  if (scenceView) {
536
539
  language.value = scenceView._language;
537
- viewModel = new ProfileAnalysisViewModel/* default */.Z(scenceView._viewer, {
540
+ viewModel = new ProfileAnalysisViewModel/* default */.Z(scenceView, {
538
541
  perspectiveAngle: formItem.perspectiveAngle,
539
542
  // 透视角度
540
543
  targetAreaWidth: formItem.targetAreaWidth,
@@ -120,8 +120,6 @@ var icons_vue_ = __webpack_require__(8422);
120
120
  var client_icons_vue_ = __webpack_require__(348);
121
121
  // EXTERNAL MODULE: external "@kq_npm/client_common_vue/_utils/gis-utils"
122
122
  var gis_utils_ = __webpack_require__(826);
123
- // EXTERNAL MODULE: external "@kq_npm/client_common_vue/_utils/const-image"
124
- var const_image_ = __webpack_require__(9702);
125
123
  // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
126
124
  var defineProperty = __webpack_require__(8270);
127
125
  // EXTERNAL MODULE: external "@kq_npm/client_common_vue/_utils/webmapservice"
@@ -131,10 +129,13 @@ var webmapservice_default = /*#__PURE__*/__webpack_require__.n(webmapservice_);
131
129
  var util_ = __webpack_require__(9519);
132
130
  // EXTERNAL MODULE: ./src/common/_ui/message/index.js + 1 modules
133
131
  var message = __webpack_require__(909);
132
+ // EXTERNAL MODULE: external "@kq_npm/client_common_vue/_utils/const-image"
133
+ var const_image_ = __webpack_require__(9702);
134
134
  ;// CONCATENATED MODULE: ./src/webgl/adddata/AddDataViewModel.js
135
135
 
136
136
 
137
137
 
138
+
138
139
  //添加数据逻辑类
139
140
 
140
141
  class AddDataViewModel {
@@ -161,7 +162,7 @@ class AddDataViewModel {
161
162
  disableDepthTestDistance: Number.POSITIVE_INFINITY
162
163
  },
163
164
  billboard: {
164
- image: "",
165
+ image: const_image_.BILLBOARD_IMAGE_URL,
165
166
  width: 12,
166
167
  height: 12,
167
168
  disableDepthTestDistance: Number.POSITIVE_INFINITY
@@ -182,7 +183,6 @@ class AddDataViewModel {
182
183
 
183
184
  this._viewer = scenceView._viewer;
184
185
  this._layerManager = scenceView._layerManager;
185
- this._geojsonStyle.billboard.image = options.billboardImage;
186
186
  this._language = scenceView._language;
187
187
  this._geometryServerUrl = options.geometryServerUrl;
188
188
  this._geometryServerToken = options.geometryServerToken;
@@ -848,6 +848,36 @@ class AddDataViewModel {
848
848
  cb && cb(node);
849
849
  break;
850
850
 
851
+ case "kqgisdataflowserver":
852
+ let guid = Cesium.createGuid();
853
+ layer = new Cesium.Kq3dDataFlowLayer(this._viewer, {
854
+ url: url,
855
+ style: {
856
+ image: const_image_.CAR_URL,
857
+ width: 30,
858
+ height: 30
859
+ }
860
+ });
861
+ layer.guid = guid;
862
+ layer.init();
863
+ layer.flyToBounds();
864
+ node = {
865
+ guid: guid,
866
+ name: name,
867
+ visible: true,
868
+ serverType: "dataflowlayer",
869
+ lsType: "ls",
870
+ url: url,
871
+ addType: type
872
+ };
873
+
874
+ this._layerManager.addTempLayerNode(node);
875
+
876
+ this._layerManager._dataFlowLayerList.push(layer);
877
+
878
+ cb && cb(node);
879
+ break;
880
+
851
881
  case "wms":
852
882
  this._viewer.addWMSLayerGroup(url).then(group => {
853
883
  node = {
@@ -1135,7 +1165,6 @@ const _hoisted_12 = {
1135
1165
 
1136
1166
 
1137
1167
 
1138
-
1139
1168
  //accept=".zip,.geojson,.topojson,.json,.kml,.kmz,.czml,.csv,.xls,.xlsx,.txt"
1140
1169
 
1141
1170
  const __default__ = {
@@ -1289,9 +1318,9 @@ const __default__ = {
1289
1318
  description: language.value.imagertyImageServerdescription
1290
1319
  }, {
1291
1320
  type: "kqgisdataflowserver",
1292
- name: language.value.KQGISDataflowServer + "(未实现)",
1321
+ name: language.value.KQGISDataflowServer,
1293
1322
  namePlaceholder: language.value.unnamedLayer,
1294
- urlPlaceholder: language.value.format + ":http://<host>:<port>/kqgis/rest/services/<servername>/dataflow",
1323
+ urlPlaceholder: language.value.format + ":http://<host>:<port>/streaming/rest/services/<servername>/dataflow",
1295
1324
  description: language.value.imagertyDataflowServerdescription
1296
1325
  }, {
1297
1326
  type: "kqgistileserver",
@@ -1364,7 +1393,6 @@ const __default__ = {
1364
1393
  ];
1365
1394
  dataSourceType.value = dataSourceTypeList.value[0];
1366
1395
  let options = {
1367
- billboardImage: const_image_.BILLBOARD_IMAGE_URL,
1368
1396
  geometryServerUrl: props.geometryServerUrl,
1369
1397
  geometryServerToken: props.geometryServerToken
1370
1398
  };
@@ -13566,20 +13594,18 @@ class MeasureViewModel {
13566
13594
  if (this._measureHandler.measureResults) {
13567
13595
  this._measureHandler.measureResults.forEach(measureResult => {
13568
13596
  let labels = measureResult.labels._labels;
13597
+ let positions = measureResult.polyline.positions;
13598
+ let dist = 0; // 更新每段长度值
13569
13599
 
13570
- if (labels.length === 1) {
13571
- if (labels[0].text) labels[0].text = this.convertValueUnit(distanceTotal, unit);
13572
- } else {
13573
- let positions = measureResult.polyline.positions;
13574
- let dist = 0;
13575
-
13576
- for (let i = 0; i < labels.length; i++) {
13577
- if (labels[i].show && labels[i].text && labels[i].text) {
13578
- dist = Cesium.Cartesian3.distance(positions[i], positions[i + 1]);
13579
- labels[i].text = this.convertValueUnit(dist, unit);
13580
- }
13600
+ for (let i = 0; i < labels.length - 1; i++) {
13601
+ if (labels[i].show && labels[i].text) {
13602
+ dist = Cesium.Cartesian3.distance(positions[i], positions[i + 1]);
13603
+ labels[i].text = this.convertValueUnit(dist, unit);
13581
13604
  }
13582
- }
13605
+ } // 更新总长度值
13606
+
13607
+
13608
+ measureResult.label.text = this.convertValueUnit(distanceTotal, unit);
13583
13609
  }, this);
13584
13610
  }
13585
13611
  } //测量距离数值单位换算
@@ -16694,18 +16720,21 @@ class ProfileAnalysisViewModel {
16694
16720
  //显示结果的DOM元素
16695
16721
  //显示结果的DOM元素显隐
16696
16722
  //全局参数对象
16697
- constructor(viewer, viewModel, chart) {
16723
+ constructor(scenceView, viewModel, chart) {
16698
16724
  (0,_Users_zpc_Documents_KQGEOSpace_KQGISClientForVue_node_modules_babel_runtime_helpers_esm_defineProperty_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z)(this, "_profileAnalysis", null);
16699
16725
 
16700
16726
  (0,_Users_zpc_Documents_KQGEOSpace_KQGISClientForVue_node_modules_babel_runtime_helpers_esm_defineProperty_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z)(this, "_ProfileAnalysisChart", null);
16701
16727
 
16702
16728
  (0,_Users_zpc_Documents_KQGEOSpace_KQGISClientForVue_node_modules_babel_runtime_helpers_esm_defineProperty_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z)(this, "_ProfileAnalysisChartVis", null);
16703
16729
 
16730
+ (0,_Users_zpc_Documents_KQGEOSpace_KQGISClientForVue_node_modules_babel_runtime_helpers_esm_defineProperty_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z)(this, "_language", null);
16731
+
16704
16732
  (0,_Users_zpc_Documents_KQGEOSpace_KQGISClientForVue_node_modules_babel_runtime_helpers_esm_defineProperty_js__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z)(this, "_globaOptions", {
16705
16733
  width: 360,
16706
16734
  height: 360
16707
16735
  });
16708
16736
 
16737
+ this._language = scenceView._language;
16709
16738
  this._globaOptions.viewModel = {
16710
16739
  angle: viewModel.perspectiveAngle || 90,
16711
16740
  frustumH: viewModel.targetAreaHeight || 200,
@@ -16713,7 +16742,7 @@ class ProfileAnalysisViewModel {
16713
16742
  isPerspective: viewModel.enablePerspective || true,
16714
16743
  cameraHeight: viewModel.cameraHeight || 0
16715
16744
  };
16716
- this._globaOptions.viewer = viewer;
16745
+ this._globaOptions.viewer = scenceView._viewer;
16717
16746
  this._globaOptions.viewer.scene.postProcessStages._fxaa.enabled = true;
16718
16747
  this._globaOptions.viewer.scene.globe.depthTestAgainstTerrain = true;
16719
16748
  this._ProfileAnalysisChart = chart;
@@ -16856,14 +16885,14 @@ class ProfileAnalysisViewModel {
16856
16885
  this._globaOptions.ctx.stroke(); //=====================
16857
16886
 
16858
16887
 
16859
- let str = String(this._profileAnalysis._frustumW.toPrecision(7));
16860
- let str1 = "Rect width : " + str;
16861
- str = String(this._profileAnalysis._maxW.toPrecision(7));
16862
- let str2 = "Total width : " + str;
16863
- str = String(this._profileAnalysis._frustumH.toPrecision(7));
16864
- let str3 = "Rect height : " + str;
16865
- str = String(this._profileAnalysis._maxH.toPrecision(7));
16866
- let str4 = "Total height : " + str;
16888
+ let str = String(this._profileAnalysis._frustumW.toFixed(2));
16889
+ let str1 = this._language.profileLength + " : " + str + "m";
16890
+ str = String(this._profileAnalysis._maxW.toFixed(2));
16891
+ let str2 = this._language.totalLength + " : " + str + "m";
16892
+ str = String(this._profileAnalysis._frustumH.toFixed(2));
16893
+ let str3 = this._language.profileHeight + " : " + str + "m";
16894
+ str = String(this._profileAnalysis._maxH.toFixed(2));
16895
+ let str4 = this._language.totalHeight + " : " + str + "m";
16867
16896
  this._globaOptions.ctx.font = "bold 15px Arial";
16868
16897
  this._globaOptions.ctx.textAlign = "left";
16869
16898
  this._globaOptions.ctx.textBaseline = "bottom";
@@ -17081,7 +17110,7 @@ const __default__ = {
17081
17110
  gis_utils_.utils.getWebMap(null, scenceView => {
17082
17111
  if (scenceView) {
17083
17112
  language.value = scenceView._language;
17084
- viewModel = new ProfileAnalysisViewModel/* default */.Z(scenceView._viewer, {
17113
+ viewModel = new ProfileAnalysisViewModel/* default */.Z(scenceView, {
17085
17114
  perspectiveAngle: formItem.perspectiveAngle,
17086
17115
  // 透视角度
17087
17116
  targetAreaWidth: formItem.targetAreaWidth,
@@ -26438,6 +26467,7 @@ class LayerManager {
26438
26467
  //图层原数据列表(包含文件夹节点,融合子图层)
26439
26468
  //置顶图层guid
26440
26469
  //记录置顶图层index
26470
+ //数据流服务图层集合
26441
26471
  //地形集合
26442
26472
  //加载geojson数据样式
26443
26473
  constructor(scenceView) {
@@ -26457,6 +26487,8 @@ class LayerManager {
26457
26487
 
26458
26488
  (0,defineProperty/* default */.Z)(this, "_emptyTerrainProvider", new Cesium.EllipsoidTerrainProvider({}));
26459
26489
 
26490
+ (0,defineProperty/* default */.Z)(this, "_dataFlowLayerList", []);
26491
+
26460
26492
  (0,defineProperty/* default */.Z)(this, "_terrainProviders", []);
26461
26493
 
26462
26494
  (0,defineProperty/* default */.Z)(this, "_geojsonStyle", {
@@ -26556,6 +26588,10 @@ class LayerManager {
26556
26588
 
26557
26589
  this._layerListData_old.push(layer_old);
26558
26590
  }, this);
26591
+ }, error => {
26592
+ console.log(error);
26593
+ }).catch(error => {
26594
+ console.error(error);
26559
26595
  });
26560
26596
  sourcePromises.push(sourcePromise);
26561
26597
  }
@@ -26642,6 +26678,8 @@ class LayerManager {
26642
26678
  type = "kqgis3dserver";
26643
26679
  } else if (layerData.sourceType === "mvt") {
26644
26680
  type = "mvt";
26681
+ } else if (layerData.sourceType === "kqdataflowserver") {
26682
+ type = "kqgisdataflowserver";
26645
26683
  }
26646
26684
 
26647
26685
  layerData.addType = type;
@@ -26892,6 +26930,28 @@ class LayerManager {
26892
26930
 
26893
26931
  break;
26894
26932
 
26933
+ case "kqgisdataflowserver":
26934
+ layerData.visible = isAdd;
26935
+ layerData.serverType = "dataflowlayer";
26936
+
26937
+ if (isAdd) {
26938
+ layer = new Cesium.Kq3dDataFlowLayer(this._viewer, {
26939
+ url: url,
26940
+ style: {
26941
+ image: const_image_.CAR_URL,
26942
+ width: 30,
26943
+ height: 30
26944
+ },
26945
+ ...params
26946
+ });
26947
+ layer.init();
26948
+ layer.guid = layerData.guid;
26949
+
26950
+ this._dataFlowLayerList.push(layer);
26951
+ }
26952
+
26953
+ break;
26954
+
26895
26955
  case "wms":
26896
26956
  //配置id时只能是单个图层
26897
26957
  if (layerData.rect84) {
@@ -27432,6 +27492,12 @@ class LayerManager {
27432
27492
  let layer = dataSources.find(item => {
27433
27493
  return item.guid === guid;
27434
27494
  });
27495
+ return layer;
27496
+ } else if (type === "dataflowlayer") {
27497
+ let layer = this._dataFlowLayerList.find(item => {
27498
+ return item.guid === guid;
27499
+ });
27500
+
27435
27501
  return layer;
27436
27502
  }
27437
27503
  } //通过guid获取图层类型
@@ -27596,6 +27662,8 @@ class LayerManager {
27596
27662
  });
27597
27663
  }
27598
27664
  });
27665
+ } else if (layer instanceof Cesium.Kq3dDataFlowLayer) {
27666
+ layer.flyToBounds();
27599
27667
  }
27600
27668
  } //获取底图图层Index
27601
27669
 
@@ -27867,6 +27935,19 @@ class LayerManager {
27867
27935
 
27868
27936
  break;
27869
27937
 
27938
+ case "dataflowlayer":
27939
+ layer.destroy(); //删除_dataFlowLayerList数据
27940
+
27941
+ for (var i = 0; i < this._dataFlowLayerList.length; i++) {
27942
+ if (guid === this._dataFlowLayerList[i].guid) {
27943
+ this._dataFlowLayerList.splice(i, 1);
27944
+
27945
+ break;
27946
+ }
27947
+ }
27948
+
27949
+ break;
27950
+
27870
27951
  default:
27871
27952
  break;
27872
27953
  }