@kq_npm/client3d_webgl_vue 4.5.40 → 4.5.41

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.
@@ -694,6 +694,11 @@ const __default__ = {
694
694
  isRight: {
695
695
  type: Boolean,
696
696
  default: true
697
+ },
698
+ // 是否连续测量
699
+ isMulti: {
700
+ type: Boolean,
701
+ default: true
697
702
  }
698
703
  },
699
704
  setup(__props, { expose: __expose }) {
@@ -878,6 +883,7 @@ let headerTempRef = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref
878
883
  }
879
884
  });
880
885
  }
886
+ if(!props.isMulti) viewModel.stopMeasure();
881
887
  }
882
888
  }
883
889
  });
@@ -886,6 +892,7 @@ let headerTempRef = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref
886
892
  if (!active) {
887
893
  if(measureType.value === "area" && mode.value !== "space") return;
888
894
  isTips.value = false;
895
+ if(!props.isMulti) isActive.value = null;
889
896
  if (result.value === 0) return;
890
897
  if (measureType.value === "height" && result.value.angle === 0) return;
891
898
  if (measureType.value === "azimuth" && result.value === 0) return;
@@ -895,6 +902,7 @@ let headerTempRef = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref
895
902
 
896
903
  let handler = new Cesium.ScreenSpaceEventHandler(scenceView._viewer.scene.canvas);
897
904
  handler.setInputAction(function () {
905
+ if(!props.isMulti) return;
898
906
  if(!viewModel._measureHandler.active) return;
899
907
  let isDrawing = viewModel._measureHandler.isDrawing;
900
908
  if(!isDrawing) {
@@ -918,6 +926,7 @@ let headerTempRef = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref
918
926
  }, Cesium.ScreenSpaceEventType.LEFT_CLICK);
919
927
 
920
928
  handler.setInputAction(function () {
929
+ if(!props.isMulti) return;
921
930
  let isDrawing = viewModel._measureHandler.isDrawing;
922
931
  if(!isDrawing) {
923
932
  isActive.value = null;
@@ -5995,7 +6004,7 @@ BoxClip.install = (Vue, opts) => {
5995
6004
 
5996
6005
  /***/ }),
5997
6006
 
5998
- /***/ 2080:
6007
+ /***/ 8613:
5999
6008
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
6000
6009
 
6001
6010
  "use strict";
@@ -6009,9 +6018,6 @@ __webpack_require__.d(__webpack_exports__, {
6009
6018
 
6010
6019
  // EXTERNAL MODULE: external {"root":"Vue","commonjs":"vue","commonjs2":"vue","amd":"vue"}
6011
6020
  var external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_ = __webpack_require__(1895);
6012
- ;// CONCATENATED MODULE: external "html2canvas"
6013
- var external_html2canvas_namespaceObject = require("html2canvas");
6014
- var external_html2canvas_default = /*#__PURE__*/__webpack_require__.n(external_html2canvas_namespaceObject);
6015
6021
  // EXTERNAL MODULE: ./src/common/_ui/message/index.js
6016
6022
  var message = __webpack_require__(1705);
6017
6023
  // EXTERNAL MODULE: external "@element-plus/icons-vue"
@@ -6239,7 +6245,6 @@ const _hoisted_46 = { class: "kq3d-client-print-systemTime" }
6239
6245
 
6240
6246
 
6241
6247
 
6242
-
6243
6248
  const __default__ = {
6244
6249
  name: "Kq3dClientPrint"
6245
6250
  };
@@ -6314,6 +6319,7 @@ const __default__ = {
6314
6319
 
6315
6320
  const props = __props;
6316
6321
 
6322
+ // import html2canvas from "html2canvas-pro";
6317
6323
  const { proxy } = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.getCurrentInstance)();
6318
6324
  let language = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)(proxy.$i18n.global.messages[proxy.$i18n.global.locale]["webgl"]);
6319
6325
  let { locale, messages } = (0,vue_i18n_cjs_js_.useI18n)();
@@ -6505,13 +6511,13 @@ let printObj = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)({
6505
6511
  });
6506
6512
  let showMap = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)(false);
6507
6513
  let formItem = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.reactive)({
6508
- options: props?.options ?? null,
6509
- service: props?.service ?? null,
6510
- scenceInfo: props?.scenceInfo ?? null,
6511
- defaultShowLayerNames: props?.defaultShowLayerNames ?? null,
6512
- showToolButtons: props?.scenceInfo ?? true,
6513
- toolButtonsPosition: props?.toolButtonsPosition ?? null,
6514
- showLogo: props?.showLogo ?? false
6514
+ options: (props && props.options) || {},
6515
+ service: props && props.service,
6516
+ scenceInfo: props && props.scenceInfo,
6517
+ defaultShowLayerNames: props && props.defaultShowLayerNames,
6518
+ showToolButtons: props && props.showToolButtons,
6519
+ toolButtonsPosition: props && props.toolButtonsPosition,
6520
+ showLogo: props && props.showLogo
6515
6521
  });
6516
6522
  let currentClick = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.reactive)({});
6517
6523
  let scaleFloor = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)(1);
@@ -6547,8 +6553,8 @@ let scenceView_print = null;
6547
6553
  if (scenceView && scenceView._viewer) {
6548
6554
  scenceView_partent = scenceView;
6549
6555
  viewModel._scenceView_partent = scenceView;
6550
- Object.assign(formItem,scenceView._props);
6551
- if(!formItem.scenceInfo && !formItem.service){
6556
+ formItem = scenceView._props;
6557
+ if(!formItem.scenceInfo){
6552
6558
  formItem.scenceInfo = scenceView_partent._layerManager.getScenceInfo();
6553
6559
  }
6554
6560
  showMap.value = true;
@@ -7000,7 +7006,7 @@ function getPic() {
7000
7006
  loadState.value = true;
7001
7007
  // 延时1000ms,等待图片读入到blob文件对象,然后使用URL.createObjectURL转换成src可用的地址
7002
7008
  setTimeout(() => {
7003
- external_html2canvas_default()(printMap.value, {
7009
+ html2canvas(printMap.value, {
7004
7010
  taintTest: true, // 检测每张图片都已经加载完成
7005
7011
  logging: true, // 启用日志记录以进行调试 (发现加上对去白边有帮助)
7006
7012
  allowTaint: true, // 否允许跨源图像污染画布
@@ -10057,7 +10063,7 @@ Compass.install = (Vue, opts) => {
10057
10063
  /* harmony import */ var _webgl_fixedzoomin__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7671);
10058
10064
  /* harmony import */ var _webgl_resetview__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(1364);
10059
10065
  /* harmony import */ var _webgl_compass__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(1899);
10060
- /* harmony import */ var _webgl_clientPrint__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(2080);
10066
+ /* harmony import */ var _webgl_clientPrint__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(8613);
10061
10067
  /* harmony import */ var _webgl_baseterraingallery__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(8180);
10062
10068
  /* harmony import */ var _webgl_measure__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(9870);
10063
10069
  /* harmony import */ var _webgl_flight__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(9395);
@@ -32511,11 +32517,19 @@ const createHeaderTemp = (boxElem, props, headerTempRef, defaultHeaderTempTitle
32511
32517
  const setCollapseHeaderTemp = (__isCollapseHeaderTemp, __showShadow, isClick) => {
32512
32518
  if (headerTempRef.value) {
32513
32519
  let _btnBox = headerTempRef.value && headerTempRef.value.childNodes[1];
32514
- let _title = headerTempTitle.value
32515
- ? XEUtils.toValueString(headerTempTitle.value)
32516
- : defaultHeaderTempTitle && defaultHeaderTempTitle.value
32517
- ? defaultHeaderTempTitle.value
32518
- : null;
32520
+ let _title = (() => {
32521
+ if (headerTempTitle.value) {
32522
+ return headerTempTitle.value;
32523
+ } else if (defaultHeaderTempTitle) {
32524
+ if (defaultHeaderTempTitle.value) {
32525
+ return defaultHeaderTempTitle.value;
32526
+ } else {
32527
+ return defaultHeaderTempTitle;
32528
+ }
32529
+ } else {
32530
+ return null;
32531
+ }
32532
+ })();
32519
32533
  // 初始化时禁止动画效果
32520
32534
  addClass(boxElem, ["kq-is-hide-no-transition"]);
32521
32535
  if (isClick) {
@@ -32610,11 +32624,19 @@ const createHeaderTemp = (boxElem, props, headerTempRef, defaultHeaderTempTitle
32610
32624
  {
32611
32625
  class: "_title"
32612
32626
  },
32613
- headerTempTitle.value
32614
- ? XEUtils.toValueString(headerTempTitle.value)
32615
- : defaultHeaderTempTitle.value
32616
- ? defaultHeaderTempTitle.value
32617
- : "标题"
32627
+ (() => {
32628
+ if (headerTempTitle.value) {
32629
+ return headerTempTitle.value;
32630
+ } else if (defaultHeaderTempTitle) {
32631
+ if (defaultHeaderTempTitle.value) {
32632
+ return defaultHeaderTempTitle.value;
32633
+ } else {
32634
+ return defaultHeaderTempTitle;
32635
+ }
32636
+ } else {
32637
+ return "标题123";
32638
+ }
32639
+ })()
32618
32640
  ),
32619
32641
  h(
32620
32642
  "div",
@@ -61389,7 +61411,7 @@ class LayerManager {
61389
61411
  type = "kqgismapserver";
61390
61412
  }
61391
61413
  //记录数据源里所有图层信息
61392
- layerData.sourceLayers = source.mapServerInfo.layers_show;
61414
+ layerData.sourceLayers = source.mapServerInfo ? source.mapServerInfo.layers_show : null;
61393
61415
  } else if (layerData.sourceType === "arcserver") {
61394
61416
  if (!layerData.renderType || layerData.renderType === "rest") {
61395
61417
  type = "arcgismapserver";
@@ -66052,11 +66074,11 @@ class SkylineAnalysisViewModel {
66052
66074
  lineWidth: option.skylineWidth, //天际线线宽
66053
66075
  radius: option.skylineRadius //天际线分析范围
66054
66076
  };
66055
- if (option.viewPosition) this._options.viewPosition = option.viewPosition;
66056
- if (option.heading) this._options.heading = option.heading;
66057
- if (option.pitch) this._options.pitch = option.pitch;
66058
- if (option.roll) this._options.viewPosition = option.roll;
66059
- if (option.fov) this._options.fov = option.fov;
66077
+ // if (option.viewPosition) this._options.viewPosition = option.viewPosition;
66078
+ // if (option.heading) this._options.heading = option.heading;
66079
+ // if (option.pitch) this._options.pitch = option.pitch;
66080
+ // if (option.roll) this._options.viewPosition = option.roll;
66081
+ // if (option.fov) this._options.fov = option.fov;
66060
66082
  // 实例化天际线分析类
66061
66083
  this._skylineAnalysis = new window.Cesium.Kq3dSkyline(this._options);
66062
66084
  }
@@ -66073,7 +66095,7 @@ class SkylineAnalysisViewModel {
66073
66095
  }
66074
66096
  }
66075
66097
  if (flag) {
66076
- if (!this._skylineAnalysis || this._skylineAnalysis.isDestroyed()) {
66098
+ if (this._skylineAnalysis?.isDestroyed?.()) {
66077
66099
  this._skylineAnalysis = new window.Cesium.Kq3dSkyline(this._options);
66078
66100
  }
66079
66101
  this._skylineAnalysis.updateBuffer();
@@ -66103,8 +66125,6 @@ class SkylineAnalysisViewModel {
66103
66125
  this._skylineAnalysis = new window.Cesium.Kq3dSkyline(this._options);
66104
66126
  }
66105
66127
  this._showLimitHeightBody = true;
66106
- this._skylineAnalysis.faceColor = this._options.faceColor;
66107
- this._skylineAnalysis.faceOutlineColor = this._options.faceOutlineColor;
66108
66128
  this._skylineAnalysis.drawHeightGeo();
66109
66129
  this._skylineAnalysis.viewer.camera.moveBackward(1);
66110
66130
  } else {
@@ -66203,7 +66223,7 @@ class SkylineAnalysisViewModel {
66203
66223
  if (this._skylineAnalysis && !this._skylineAnalysis.isDestroyed()) {
66204
66224
  this._skylineAnalysis.removeAlllimitHeights();
66205
66225
  this._skylineAnalysis.removeAllFaces();
66206
- // this._skylineAnalysis.removeGeoJsonDataSource();
66226
+ this._skylineAnalysis.removeGeoJsonDataSource();
66207
66227
  this._skylineAnalysis.removeCzmlJsonDataSource();
66208
66228
  }
66209
66229
  }
@@ -66368,7 +66388,9 @@ let resultEcahrtVis = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.r
66368
66388
 
66369
66389
 
66370
66390
  let formItem = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.reactive)({
66371
- collapseValue: (props.settingParams && props.settingParams.collapseValue) || ((props.settingParams && props.settingParams.collapseValue)==''? "":"setting"), // 默认展开属性设置
66391
+ collapseValue:
66392
+ (props.settingParams && props.settingParams.collapseValue) ||
66393
+ ((props.settingParams && props.settingParams.collapseValue) == "" ? "" : "setting"), // 默认展开属性设置
66372
66394
  skylineColor: (props.settingParams && props.settingParams.skylineColor) || "#ff0000", // 天际线颜色
66373
66395
  skylineRadius: (props.settingParams && props.settingParams.skylineRadius) || 1000, // 天际线半径
66374
66396
  minSkylineRadius: (props.settingParams && props.settingParams.minSkylineRadius) || 0, // 天际线半径范围最小值
@@ -66377,7 +66399,7 @@ let formItem = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.reactive
66377
66399
  limitHeightBodyAlpha: (props.settingParams && props.settingParams.limitHeightBodyAlpha) || 0.7, // 限高体透明度
66378
66400
  minLimitHeightBodyAlpha: (props.settingParams && props.settingParams.minLimitHeightBodyAlpha) || 0, // 限高体透明度范围最小值
66379
66401
  maxLimitHeightBodyAlpha: (props.settingParams && props.settingParams.maxLimitHeightBodyAlpha) || 1, // 限高体透明度范围最大值
66380
- skylineWidth: 2 // 天际线宽度
66402
+ skylineWidth: props?.settingParams?.skylineWidth ?? 2 // 天际线宽度
66381
66403
  });
66382
66404
 
66383
66405
  // 组件容器Ref
@@ -66421,17 +66443,7 @@ headerTempTitle.value = language.value.skylineAnalysis;
66421
66443
 
66422
66444
  gis_utils_.utils.getWebMap(null, scenceView => {
66423
66445
  if (scenceView) {
66424
- viewModel = new SkylineAnalysisViewModel(
66425
- scenceView,
66426
- {
66427
- skylineColor: formItem.skylineColor,
66428
- skylineRadius: formItem.skylineRadius,
66429
- limitHeightBodyColor: formItem.limitHeightBodyColor,
66430
- limitHeightBodyAlpha: formItem.limitHeightBodyAlpha,
66431
- skylineWidth: formItem.skylineWidth
66432
- },
66433
- setEchartsColor()
66434
- );
66446
+ viewModel = new SkylineAnalysisViewModel(scenceView, formItem, setEchartsColor());
66435
66447
  viewModel._skylineAnalysisChartTitle = scenceView._language["skylineAnalysisChartTitle"];
66436
66448
  }
66437
66449
  });
@@ -67881,6 +67893,11 @@ class SlopeAspectAnalysisViewModel {
67881
67893
  };
67882
67894
  this._globaOptions.viewer.scene.globe.depthTestAgainstTerrain = true; //开启深度检测
67883
67895
  this._globaOptions.viewer.scene.globe.enableLighting = true;
67896
+ this._globaOptions.viewer.scene.logarithmicDepthBuffer = true;
67897
+ this._globaOptions.viewer.scene.globe.depthTestAgainstTerrain = true;
67898
+ this._globaOptions.viewer.scene.pickTranslucentDepth = true;
67899
+ this._globaOptions.viewer.scene._environmentState.renderTranslucentDepthForPick = true;
67900
+
67884
67901
  this._globaOptions._drawManager = scenceView._drawManager;
67885
67902
  // 坡度对象
67886
67903
  this._aspectAnalysis = new window.Cesium.Kq3dAspect({
@@ -78176,7 +78193,7 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__1895__;
78176
78193
  /******/ // startup
78177
78194
  /******/ // Load entry module and return exports
78178
78195
  /******/ // This entry module is referenced by other modules so it can't be inlined
78179
- /******/ var __webpack_exports__ = __webpack_require__(2080);
78196
+ /******/ var __webpack_exports__ = __webpack_require__(8613);
78180
78197
  /******/
78181
78198
  /******/ return __webpack_exports__;
78182
78199
  /******/ })()
package/index.js CHANGED
@@ -3456,7 +3456,7 @@ class LayerManager {
3456
3456
  type = "kqgismapserver";
3457
3457
  }
3458
3458
  //记录数据源里所有图层信息
3459
- layerData.sourceLayers = source.mapServerInfo.layers_show;
3459
+ layerData.sourceLayers = source.mapServerInfo ? source.mapServerInfo.layers_show : null;
3460
3460
  } else if (layerData.sourceType === "arcserver") {
3461
3461
  if (!layerData.renderType || layerData.renderType === "rest") {
3462
3462
  type = "arcgismapserver";
@@ -6555,9 +6555,6 @@ Compass.install = (Vue, opts) => {
6555
6555
  };
6556
6556
 
6557
6557
 
6558
- ;// CONCATENATED MODULE: external "html2canvas"
6559
- var external_html2canvas_namespaceObject = require("html2canvas");
6560
- var external_html2canvas_default = /*#__PURE__*/__webpack_require__.n(external_html2canvas_namespaceObject);
6561
6558
  // EXTERNAL MODULE: ./public/libs/kqwebclient/leaflet/3rd-libs/vue3-print-nb/vue3-print-nb.umd.js
6562
6559
  var vue3_print_nb_umd = __webpack_require__(347);
6563
6560
  var vue3_print_nb_umd_default = /*#__PURE__*/__webpack_require__.n(vue3_print_nb_umd);
@@ -6767,7 +6764,6 @@ const _hoisted_46 = { class: "kq3d-client-print-systemTime" }
6767
6764
 
6768
6765
 
6769
6766
 
6770
-
6771
6767
  const ClientPrintvue_type_script_setup_true_lang_js_default_ = {
6772
6768
  name: "Kq3dClientPrint"
6773
6769
  };
@@ -6842,6 +6838,7 @@ const ClientPrintvue_type_script_setup_true_lang_js_default_ = {
6842
6838
 
6843
6839
  const props = __props;
6844
6840
 
6841
+ // import html2canvas from "html2canvas-pro";
6845
6842
  const { proxy } = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.getCurrentInstance)();
6846
6843
  let language = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)(proxy.$i18n.global.messages[proxy.$i18n.global.locale]["webgl"]);
6847
6844
  let { locale, messages } = (0,vue_i18n_cjs_js_namespaceObject.useI18n)();
@@ -7033,13 +7030,13 @@ let printObj = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)({
7033
7030
  });
7034
7031
  let showMap = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)(false);
7035
7032
  let formItem = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.reactive)({
7036
- options: props?.options ?? null,
7037
- service: props?.service ?? null,
7038
- scenceInfo: props?.scenceInfo ?? null,
7039
- defaultShowLayerNames: props?.defaultShowLayerNames ?? null,
7040
- showToolButtons: props?.scenceInfo ?? true,
7041
- toolButtonsPosition: props?.toolButtonsPosition ?? null,
7042
- showLogo: props?.showLogo ?? false
7033
+ options: (props && props.options) || {},
7034
+ service: props && props.service,
7035
+ scenceInfo: props && props.scenceInfo,
7036
+ defaultShowLayerNames: props && props.defaultShowLayerNames,
7037
+ showToolButtons: props && props.showToolButtons,
7038
+ toolButtonsPosition: props && props.toolButtonsPosition,
7039
+ showLogo: props && props.showLogo
7043
7040
  });
7044
7041
  let currentClick = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.reactive)({});
7045
7042
  let scaleFloor = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)(1);
@@ -7075,8 +7072,8 @@ let scenceView_print = null;
7075
7072
  if (scenceView && scenceView._viewer) {
7076
7073
  scenceView_partent = scenceView;
7077
7074
  viewModel._scenceView_partent = scenceView;
7078
- Object.assign(formItem,scenceView._props);
7079
- if(!formItem.scenceInfo && !formItem.service){
7075
+ formItem = scenceView._props;
7076
+ if(!formItem.scenceInfo){
7080
7077
  formItem.scenceInfo = scenceView_partent._layerManager.getScenceInfo();
7081
7078
  }
7082
7079
  showMap.value = true;
@@ -7528,7 +7525,7 @@ function getPic() {
7528
7525
  loadState.value = true;
7529
7526
  // 延时1000ms,等待图片读入到blob文件对象,然后使用URL.createObjectURL转换成src可用的地址
7530
7527
  setTimeout(() => {
7531
- external_html2canvas_default()(printMap.value, {
7528
+ html2canvas(printMap.value, {
7532
7529
  taintTest: true, // 检测每张图片都已经加载完成
7533
7530
  logging: true, // 启用日志记录以进行调试 (发现加上对去白边有帮助)
7534
7531
  allowTaint: true, // 否允许跨源图像污染画布
@@ -10135,6 +10132,11 @@ const Measurevue_type_script_setup_true_lang_js_default_ = {
10135
10132
  isRight: {
10136
10133
  type: Boolean,
10137
10134
  default: true
10135
+ },
10136
+ // 是否连续测量
10137
+ isMulti: {
10138
+ type: Boolean,
10139
+ default: true
10138
10140
  }
10139
10141
  },
10140
10142
  setup(__props, { expose: __expose }) {
@@ -10319,6 +10321,7 @@ let headerTempRef = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref
10319
10321
  }
10320
10322
  });
10321
10323
  }
10324
+ if(!props.isMulti) viewModel.stopMeasure();
10322
10325
  }
10323
10326
  }
10324
10327
  });
@@ -10327,6 +10330,7 @@ let headerTempRef = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref
10327
10330
  if (!active) {
10328
10331
  if(measureType.value === "area" && mode.value !== "space") return;
10329
10332
  isTips.value = false;
10333
+ if(!props.isMulti) isActive.value = null;
10330
10334
  if (result.value === 0) return;
10331
10335
  if (measureType.value === "height" && result.value.angle === 0) return;
10332
10336
  if (measureType.value === "azimuth" && result.value === 0) return;
@@ -10336,6 +10340,7 @@ let headerTempRef = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref
10336
10340
 
10337
10341
  let handler = new Cesium.ScreenSpaceEventHandler(scenceView._viewer.scene.canvas);
10338
10342
  handler.setInputAction(function () {
10343
+ if(!props.isMulti) return;
10339
10344
  if(!viewModel._measureHandler.active) return;
10340
10345
  let isDrawing = viewModel._measureHandler.isDrawing;
10341
10346
  if(!isDrawing) {
@@ -10359,6 +10364,7 @@ let headerTempRef = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref
10359
10364
  }, Cesium.ScreenSpaceEventType.LEFT_CLICK);
10360
10365
 
10361
10366
  handler.setInputAction(function () {
10367
+ if(!props.isMulti) return;
10362
10368
  let isDrawing = viewModel._measureHandler.isDrawing;
10363
10369
  if(!isDrawing) {
10364
10370
  isActive.value = null;
@@ -27124,11 +27130,11 @@ class SkylineAnalysisViewModel {
27124
27130
  lineWidth: option.skylineWidth, //天际线线宽
27125
27131
  radius: option.skylineRadius //天际线分析范围
27126
27132
  };
27127
- if (option.viewPosition) this._options.viewPosition = option.viewPosition;
27128
- if (option.heading) this._options.heading = option.heading;
27129
- if (option.pitch) this._options.pitch = option.pitch;
27130
- if (option.roll) this._options.viewPosition = option.roll;
27131
- if (option.fov) this._options.fov = option.fov;
27133
+ // if (option.viewPosition) this._options.viewPosition = option.viewPosition;
27134
+ // if (option.heading) this._options.heading = option.heading;
27135
+ // if (option.pitch) this._options.pitch = option.pitch;
27136
+ // if (option.roll) this._options.viewPosition = option.roll;
27137
+ // if (option.fov) this._options.fov = option.fov;
27132
27138
  // 实例化天际线分析类
27133
27139
  this._skylineAnalysis = new window.Cesium.Kq3dSkyline(this._options);
27134
27140
  }
@@ -27145,7 +27151,7 @@ class SkylineAnalysisViewModel {
27145
27151
  }
27146
27152
  }
27147
27153
  if (flag) {
27148
- if (!this._skylineAnalysis || this._skylineAnalysis.isDestroyed()) {
27154
+ if (this._skylineAnalysis?.isDestroyed?.()) {
27149
27155
  this._skylineAnalysis = new window.Cesium.Kq3dSkyline(this._options);
27150
27156
  }
27151
27157
  this._skylineAnalysis.updateBuffer();
@@ -27175,8 +27181,6 @@ class SkylineAnalysisViewModel {
27175
27181
  this._skylineAnalysis = new window.Cesium.Kq3dSkyline(this._options);
27176
27182
  }
27177
27183
  this._showLimitHeightBody = true;
27178
- this._skylineAnalysis.faceColor = this._options.faceColor;
27179
- this._skylineAnalysis.faceOutlineColor = this._options.faceOutlineColor;
27180
27184
  this._skylineAnalysis.drawHeightGeo();
27181
27185
  this._skylineAnalysis.viewer.camera.moveBackward(1);
27182
27186
  } else {
@@ -27275,7 +27279,7 @@ class SkylineAnalysisViewModel {
27275
27279
  if (this._skylineAnalysis && !this._skylineAnalysis.isDestroyed()) {
27276
27280
  this._skylineAnalysis.removeAlllimitHeights();
27277
27281
  this._skylineAnalysis.removeAllFaces();
27278
- // this._skylineAnalysis.removeGeoJsonDataSource();
27282
+ this._skylineAnalysis.removeGeoJsonDataSource();
27279
27283
  this._skylineAnalysis.removeCzmlJsonDataSource();
27280
27284
  }
27281
27285
  }
@@ -27434,7 +27438,9 @@ let resultEcahrtVis = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.r
27434
27438
 
27435
27439
 
27436
27440
  let formItem = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.reactive)({
27437
- collapseValue: (props.settingParams && props.settingParams.collapseValue) || ((props.settingParams && props.settingParams.collapseValue)==''? "":"setting"), // 默认展开属性设置
27441
+ collapseValue:
27442
+ (props.settingParams && props.settingParams.collapseValue) ||
27443
+ ((props.settingParams && props.settingParams.collapseValue) == "" ? "" : "setting"), // 默认展开属性设置
27438
27444
  skylineColor: (props.settingParams && props.settingParams.skylineColor) || "#ff0000", // 天际线颜色
27439
27445
  skylineRadius: (props.settingParams && props.settingParams.skylineRadius) || 1000, // 天际线半径
27440
27446
  minSkylineRadius: (props.settingParams && props.settingParams.minSkylineRadius) || 0, // 天际线半径范围最小值
@@ -27443,7 +27449,7 @@ let formItem = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.reactive
27443
27449
  limitHeightBodyAlpha: (props.settingParams && props.settingParams.limitHeightBodyAlpha) || 0.7, // 限高体透明度
27444
27450
  minLimitHeightBodyAlpha: (props.settingParams && props.settingParams.minLimitHeightBodyAlpha) || 0, // 限高体透明度范围最小值
27445
27451
  maxLimitHeightBodyAlpha: (props.settingParams && props.settingParams.maxLimitHeightBodyAlpha) || 1, // 限高体透明度范围最大值
27446
- skylineWidth: 2 // 天际线宽度
27452
+ skylineWidth: props?.settingParams?.skylineWidth ?? 2 // 天际线宽度
27447
27453
  });
27448
27454
 
27449
27455
  // 组件容器Ref
@@ -27487,17 +27493,7 @@ headerTempTitle.value = language.value.skylineAnalysis;
27487
27493
 
27488
27494
  gis_utils_.utils.getWebMap(null, scenceView => {
27489
27495
  if (scenceView) {
27490
- viewModel = new SkylineAnalysisViewModel(
27491
- scenceView,
27492
- {
27493
- skylineColor: formItem.skylineColor,
27494
- skylineRadius: formItem.skylineRadius,
27495
- limitHeightBodyColor: formItem.limitHeightBodyColor,
27496
- limitHeightBodyAlpha: formItem.limitHeightBodyAlpha,
27497
- skylineWidth: formItem.skylineWidth
27498
- },
27499
- setEchartsColor()
27500
- );
27496
+ viewModel = new SkylineAnalysisViewModel(scenceView, formItem, setEchartsColor());
27501
27497
  viewModel._skylineAnalysisChartTitle = scenceView._language["skylineAnalysisChartTitle"];
27502
27498
  }
27503
27499
  });
@@ -31319,6 +31315,11 @@ class SlopeAspectAnalysisViewModel {
31319
31315
  };
31320
31316
  this._globaOptions.viewer.scene.globe.depthTestAgainstTerrain = true; //开启深度检测
31321
31317
  this._globaOptions.viewer.scene.globe.enableLighting = true;
31318
+ this._globaOptions.viewer.scene.logarithmicDepthBuffer = true;
31319
+ this._globaOptions.viewer.scene.globe.depthTestAgainstTerrain = true;
31320
+ this._globaOptions.viewer.scene.pickTranslucentDepth = true;
31321
+ this._globaOptions.viewer.scene._environmentState.renderTranslucentDepthForPick = true;
31322
+
31322
31323
  this._globaOptions._drawManager = scenceView._drawManager;
31323
31324
  // 坡度对象
31324
31325
  this._aspectAnalysis = new window.Cesium.Kq3dAspect({
@@ -51970,11 +51971,19 @@ const createHeaderTemp = (boxElem, props, headerTempRef, defaultHeaderTempTitle
51970
51971
  const setCollapseHeaderTemp = (__isCollapseHeaderTemp, __showShadow, isClick) => {
51971
51972
  if (headerTempRef.value) {
51972
51973
  let _btnBox = headerTempRef.value && headerTempRef.value.childNodes[1];
51973
- let _title = headerTempTitle.value
51974
- ? XEUtils.toValueString(headerTempTitle.value)
51975
- : defaultHeaderTempTitle && defaultHeaderTempTitle.value
51976
- ? defaultHeaderTempTitle.value
51977
- : null;
51974
+ let _title = (() => {
51975
+ if (headerTempTitle.value) {
51976
+ return headerTempTitle.value;
51977
+ } else if (defaultHeaderTempTitle) {
51978
+ if (defaultHeaderTempTitle.value) {
51979
+ return defaultHeaderTempTitle.value;
51980
+ } else {
51981
+ return defaultHeaderTempTitle;
51982
+ }
51983
+ } else {
51984
+ return null;
51985
+ }
51986
+ })();
51978
51987
  // 初始化时禁止动画效果
51979
51988
  addClass(boxElem, ["kq-is-hide-no-transition"]);
51980
51989
  if (isClick) {
@@ -52069,11 +52078,19 @@ const createHeaderTemp = (boxElem, props, headerTempRef, defaultHeaderTempTitle
52069
52078
  {
52070
52079
  class: "_title"
52071
52080
  },
52072
- headerTempTitle.value
52073
- ? XEUtils.toValueString(headerTempTitle.value)
52074
- : defaultHeaderTempTitle.value
52075
- ? defaultHeaderTempTitle.value
52076
- : "标题"
52081
+ (() => {
52082
+ if (headerTempTitle.value) {
52083
+ return headerTempTitle.value;
52084
+ } else if (defaultHeaderTempTitle) {
52085
+ if (defaultHeaderTempTitle.value) {
52086
+ return defaultHeaderTempTitle.value;
52087
+ } else {
52088
+ return defaultHeaderTempTitle;
52089
+ }
52090
+ } else {
52091
+ return "标题123";
52092
+ }
52093
+ })()
52077
52094
  ),
52078
52095
  h(
52079
52096
  "div",
package/measure/index.js CHANGED
@@ -155,6 +155,11 @@ const __default__ = {
155
155
  isRight: {
156
156
  type: Boolean,
157
157
  default: true
158
+ },
159
+ // 是否连续测量
160
+ isMulti: {
161
+ type: Boolean,
162
+ default: true
158
163
  }
159
164
  },
160
165
  setup(__props, { expose: __expose }) {
@@ -339,6 +344,7 @@ let headerTempRef = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref
339
344
  }
340
345
  });
341
346
  }
347
+ if(!props.isMulti) viewModel.stopMeasure();
342
348
  }
343
349
  }
344
350
  });
@@ -347,6 +353,7 @@ let headerTempRef = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref
347
353
  if (!active) {
348
354
  if(measureType.value === "area" && mode.value !== "space") return;
349
355
  isTips.value = false;
356
+ if(!props.isMulti) isActive.value = null;
350
357
  if (result.value === 0) return;
351
358
  if (measureType.value === "height" && result.value.angle === 0) return;
352
359
  if (measureType.value === "azimuth" && result.value === 0) return;
@@ -356,6 +363,7 @@ let headerTempRef = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref
356
363
 
357
364
  let handler = new Cesium.ScreenSpaceEventHandler(scenceView._viewer.scene.canvas);
358
365
  handler.setInputAction(function () {
366
+ if(!props.isMulti) return;
359
367
  if(!viewModel._measureHandler.active) return;
360
368
  let isDrawing = viewModel._measureHandler.isDrawing;
361
369
  if(!isDrawing) {
@@ -379,6 +387,7 @@ let headerTempRef = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref
379
387
  }, Cesium.ScreenSpaceEventType.LEFT_CLICK);
380
388
 
381
389
  handler.setInputAction(function () {
390
+ if(!props.isMulti) return;
382
391
  let isDrawing = viewModel._measureHandler.isDrawing;
383
392
  if(!isDrawing) {
384
393
  isActive.value = null;
package/package.json CHANGED
@@ -1 +1 @@
1
- {"jsdelivr":"./webgl.es.js","name":"@kq_npm/client3d_webgl_vue","description":"KQGIS Client3D for Vue.js","version":"4.5.40","homepage":"","keywords":["KQGIS","webGL","Vue"],"sdkNames":["@kq_npm/client_icons_vue"],"restrictedVersion":true,"validateSDK":true,"browserslist":["> 1%","last 2 versions","not dead","not ie 11"],"author":"zhupc_npm","license":"Apache-2.0","dependencies":{"html2canvas-pro":"1.5.10","save":"2.5.0","papaparse":"5.4.1"}}
1
+ {"jsdelivr":"./webgl.es.js","name":"@kq_npm/client3d_webgl_vue","description":"KQGIS Client3D for Vue.js","version":"4.5.41","homepage":"","keywords":["KQGIS","webGL","Vue"],"sdkNames":["@kq_npm/client_icons_vue"],"restrictedVersion":true,"validateSDK":true,"browserslist":["> 1%","last 2 versions","not dead","not ie 11"],"author":"zhupc_npm","license":"Apache-2.0","dependencies":{"html2canvas-pro":"1.5.10","save":"2.5.0","papaparse":"5.4.1"}}
package/sceneapp/index.js CHANGED
@@ -694,6 +694,11 @@ const __default__ = {
694
694
  isRight: {
695
695
  type: Boolean,
696
696
  default: true
697
+ },
698
+ // 是否连续测量
699
+ isMulti: {
700
+ type: Boolean,
701
+ default: true
697
702
  }
698
703
  },
699
704
  setup(__props, { expose: __expose }) {
@@ -878,6 +883,7 @@ let headerTempRef = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref
878
883
  }
879
884
  });
880
885
  }
886
+ if(!props.isMulti) viewModel.stopMeasure();
881
887
  }
882
888
  }
883
889
  });
@@ -886,6 +892,7 @@ let headerTempRef = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref
886
892
  if (!active) {
887
893
  if(measureType.value === "area" && mode.value !== "space") return;
888
894
  isTips.value = false;
895
+ if(!props.isMulti) isActive.value = null;
889
896
  if (result.value === 0) return;
890
897
  if (measureType.value === "height" && result.value.angle === 0) return;
891
898
  if (measureType.value === "azimuth" && result.value === 0) return;
@@ -895,6 +902,7 @@ let headerTempRef = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref
895
902
 
896
903
  let handler = new Cesium.ScreenSpaceEventHandler(scenceView._viewer.scene.canvas);
897
904
  handler.setInputAction(function () {
905
+ if(!props.isMulti) return;
898
906
  if(!viewModel._measureHandler.active) return;
899
907
  let isDrawing = viewModel._measureHandler.isDrawing;
900
908
  if(!isDrawing) {
@@ -918,6 +926,7 @@ let headerTempRef = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref
918
926
  }, Cesium.ScreenSpaceEventType.LEFT_CLICK);
919
927
 
920
928
  handler.setInputAction(function () {
929
+ if(!props.isMulti) return;
921
930
  let isDrawing = viewModel._measureHandler.isDrawing;
922
931
  if(!isDrawing) {
923
932
  isActive.value = null;
@@ -5995,7 +6004,7 @@ BoxClip.install = (Vue, opts) => {
5995
6004
 
5996
6005
  /***/ }),
5997
6006
 
5998
- /***/ 2080:
6007
+ /***/ 8613:
5999
6008
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
6000
6009
 
6001
6010
  "use strict";
@@ -6007,9 +6016,6 @@ __webpack_require__.d(__webpack_exports__, {
6007
6016
 
6008
6017
  // EXTERNAL MODULE: external {"root":"Vue","commonjs":"vue","commonjs2":"vue","amd":"vue"}
6009
6018
  var external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_ = __webpack_require__(1895);
6010
- ;// CONCATENATED MODULE: external "html2canvas"
6011
- var external_html2canvas_namespaceObject = require("html2canvas");
6012
- var external_html2canvas_default = /*#__PURE__*/__webpack_require__.n(external_html2canvas_namespaceObject);
6013
6019
  // EXTERNAL MODULE: ./src/common/_ui/message/index.js
6014
6020
  var message = __webpack_require__(1705);
6015
6021
  // EXTERNAL MODULE: external "@element-plus/icons-vue"
@@ -6237,7 +6243,6 @@ const _hoisted_46 = { class: "kq3d-client-print-systemTime" }
6237
6243
 
6238
6244
 
6239
6245
 
6240
-
6241
6246
  const __default__ = {
6242
6247
  name: "Kq3dClientPrint"
6243
6248
  };
@@ -6312,6 +6317,7 @@ const __default__ = {
6312
6317
 
6313
6318
  const props = __props;
6314
6319
 
6320
+ // import html2canvas from "html2canvas-pro";
6315
6321
  const { proxy } = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.getCurrentInstance)();
6316
6322
  let language = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)(proxy.$i18n.global.messages[proxy.$i18n.global.locale]["webgl"]);
6317
6323
  let { locale, messages } = (0,vue_i18n_cjs_js_.useI18n)();
@@ -6503,13 +6509,13 @@ let printObj = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)({
6503
6509
  });
6504
6510
  let showMap = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)(false);
6505
6511
  let formItem = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.reactive)({
6506
- options: props?.options ?? null,
6507
- service: props?.service ?? null,
6508
- scenceInfo: props?.scenceInfo ?? null,
6509
- defaultShowLayerNames: props?.defaultShowLayerNames ?? null,
6510
- showToolButtons: props?.scenceInfo ?? true,
6511
- toolButtonsPosition: props?.toolButtonsPosition ?? null,
6512
- showLogo: props?.showLogo ?? false
6512
+ options: (props && props.options) || {},
6513
+ service: props && props.service,
6514
+ scenceInfo: props && props.scenceInfo,
6515
+ defaultShowLayerNames: props && props.defaultShowLayerNames,
6516
+ showToolButtons: props && props.showToolButtons,
6517
+ toolButtonsPosition: props && props.toolButtonsPosition,
6518
+ showLogo: props && props.showLogo
6513
6519
  });
6514
6520
  let currentClick = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.reactive)({});
6515
6521
  let scaleFloor = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)(1);
@@ -6545,8 +6551,8 @@ let scenceView_print = null;
6545
6551
  if (scenceView && scenceView._viewer) {
6546
6552
  scenceView_partent = scenceView;
6547
6553
  viewModel._scenceView_partent = scenceView;
6548
- Object.assign(formItem,scenceView._props);
6549
- if(!formItem.scenceInfo && !formItem.service){
6554
+ formItem = scenceView._props;
6555
+ if(!formItem.scenceInfo){
6550
6556
  formItem.scenceInfo = scenceView_partent._layerManager.getScenceInfo();
6551
6557
  }
6552
6558
  showMap.value = true;
@@ -6998,7 +7004,7 @@ function getPic() {
6998
7004
  loadState.value = true;
6999
7005
  // 延时1000ms,等待图片读入到blob文件对象,然后使用URL.createObjectURL转换成src可用的地址
7000
7006
  setTimeout(() => {
7001
- external_html2canvas_default()(printMap.value, {
7007
+ html2canvas(printMap.value, {
7002
7008
  taintTest: true, // 检测每张图片都已经加载完成
7003
7009
  logging: true, // 启用日志记录以进行调试 (发现加上对去白边有帮助)
7004
7010
  allowTaint: true, // 否允许跨源图像污染画布
@@ -10055,7 +10061,7 @@ Compass.install = (Vue, opts) => {
10055
10061
  /* harmony import */ var _webgl_fixedzoomin__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7671);
10056
10062
  /* harmony import */ var _webgl_resetview__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(1364);
10057
10063
  /* harmony import */ var _webgl_compass__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(1899);
10058
- /* harmony import */ var _webgl_clientPrint__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(2080);
10064
+ /* harmony import */ var _webgl_clientPrint__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(8613);
10059
10065
  /* harmony import */ var _webgl_baseterraingallery__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(8180);
10060
10066
  /* harmony import */ var _webgl_measure__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(9870);
10061
10067
  /* harmony import */ var _webgl_flight__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(9395);
@@ -32510,11 +32516,19 @@ const createHeaderTemp = (boxElem, props, headerTempRef, defaultHeaderTempTitle
32510
32516
  const setCollapseHeaderTemp = (__isCollapseHeaderTemp, __showShadow, isClick) => {
32511
32517
  if (headerTempRef.value) {
32512
32518
  let _btnBox = headerTempRef.value && headerTempRef.value.childNodes[1];
32513
- let _title = headerTempTitle.value
32514
- ? XEUtils.toValueString(headerTempTitle.value)
32515
- : defaultHeaderTempTitle && defaultHeaderTempTitle.value
32516
- ? defaultHeaderTempTitle.value
32517
- : null;
32519
+ let _title = (() => {
32520
+ if (headerTempTitle.value) {
32521
+ return headerTempTitle.value;
32522
+ } else if (defaultHeaderTempTitle) {
32523
+ if (defaultHeaderTempTitle.value) {
32524
+ return defaultHeaderTempTitle.value;
32525
+ } else {
32526
+ return defaultHeaderTempTitle;
32527
+ }
32528
+ } else {
32529
+ return null;
32530
+ }
32531
+ })();
32518
32532
  // 初始化时禁止动画效果
32519
32533
  addClass(boxElem, ["kq-is-hide-no-transition"]);
32520
32534
  if (isClick) {
@@ -32609,11 +32623,19 @@ const createHeaderTemp = (boxElem, props, headerTempRef, defaultHeaderTempTitle
32609
32623
  {
32610
32624
  class: "_title"
32611
32625
  },
32612
- headerTempTitle.value
32613
- ? XEUtils.toValueString(headerTempTitle.value)
32614
- : defaultHeaderTempTitle.value
32615
- ? defaultHeaderTempTitle.value
32616
- : "标题"
32626
+ (() => {
32627
+ if (headerTempTitle.value) {
32628
+ return headerTempTitle.value;
32629
+ } else if (defaultHeaderTempTitle) {
32630
+ if (defaultHeaderTempTitle.value) {
32631
+ return defaultHeaderTempTitle.value;
32632
+ } else {
32633
+ return defaultHeaderTempTitle;
32634
+ }
32635
+ } else {
32636
+ return "标题123";
32637
+ }
32638
+ })()
32617
32639
  ),
32618
32640
  h(
32619
32641
  "div",
@@ -61388,7 +61410,7 @@ class LayerManager {
61388
61410
  type = "kqgismapserver";
61389
61411
  }
61390
61412
  //记录数据源里所有图层信息
61391
- layerData.sourceLayers = source.mapServerInfo.layers_show;
61413
+ layerData.sourceLayers = source.mapServerInfo ? source.mapServerInfo.layers_show : null;
61392
61414
  } else if (layerData.sourceType === "arcserver") {
61393
61415
  if (!layerData.renderType || layerData.renderType === "rest") {
61394
61416
  type = "arcgismapserver";
@@ -66051,11 +66073,11 @@ class SkylineAnalysisViewModel {
66051
66073
  lineWidth: option.skylineWidth, //天际线线宽
66052
66074
  radius: option.skylineRadius //天际线分析范围
66053
66075
  };
66054
- if (option.viewPosition) this._options.viewPosition = option.viewPosition;
66055
- if (option.heading) this._options.heading = option.heading;
66056
- if (option.pitch) this._options.pitch = option.pitch;
66057
- if (option.roll) this._options.viewPosition = option.roll;
66058
- if (option.fov) this._options.fov = option.fov;
66076
+ // if (option.viewPosition) this._options.viewPosition = option.viewPosition;
66077
+ // if (option.heading) this._options.heading = option.heading;
66078
+ // if (option.pitch) this._options.pitch = option.pitch;
66079
+ // if (option.roll) this._options.viewPosition = option.roll;
66080
+ // if (option.fov) this._options.fov = option.fov;
66059
66081
  // 实例化天际线分析类
66060
66082
  this._skylineAnalysis = new window.Cesium.Kq3dSkyline(this._options);
66061
66083
  }
@@ -66072,7 +66094,7 @@ class SkylineAnalysisViewModel {
66072
66094
  }
66073
66095
  }
66074
66096
  if (flag) {
66075
- if (!this._skylineAnalysis || this._skylineAnalysis.isDestroyed()) {
66097
+ if (this._skylineAnalysis?.isDestroyed?.()) {
66076
66098
  this._skylineAnalysis = new window.Cesium.Kq3dSkyline(this._options);
66077
66099
  }
66078
66100
  this._skylineAnalysis.updateBuffer();
@@ -66102,8 +66124,6 @@ class SkylineAnalysisViewModel {
66102
66124
  this._skylineAnalysis = new window.Cesium.Kq3dSkyline(this._options);
66103
66125
  }
66104
66126
  this._showLimitHeightBody = true;
66105
- this._skylineAnalysis.faceColor = this._options.faceColor;
66106
- this._skylineAnalysis.faceOutlineColor = this._options.faceOutlineColor;
66107
66127
  this._skylineAnalysis.drawHeightGeo();
66108
66128
  this._skylineAnalysis.viewer.camera.moveBackward(1);
66109
66129
  } else {
@@ -66202,7 +66222,7 @@ class SkylineAnalysisViewModel {
66202
66222
  if (this._skylineAnalysis && !this._skylineAnalysis.isDestroyed()) {
66203
66223
  this._skylineAnalysis.removeAlllimitHeights();
66204
66224
  this._skylineAnalysis.removeAllFaces();
66205
- // this._skylineAnalysis.removeGeoJsonDataSource();
66225
+ this._skylineAnalysis.removeGeoJsonDataSource();
66206
66226
  this._skylineAnalysis.removeCzmlJsonDataSource();
66207
66227
  }
66208
66228
  }
@@ -66367,7 +66387,9 @@ let resultEcahrtVis = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.r
66367
66387
 
66368
66388
 
66369
66389
  let formItem = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.reactive)({
66370
- collapseValue: (props.settingParams && props.settingParams.collapseValue) || ((props.settingParams && props.settingParams.collapseValue)==''? "":"setting"), // 默认展开属性设置
66390
+ collapseValue:
66391
+ (props.settingParams && props.settingParams.collapseValue) ||
66392
+ ((props.settingParams && props.settingParams.collapseValue) == "" ? "" : "setting"), // 默认展开属性设置
66371
66393
  skylineColor: (props.settingParams && props.settingParams.skylineColor) || "#ff0000", // 天际线颜色
66372
66394
  skylineRadius: (props.settingParams && props.settingParams.skylineRadius) || 1000, // 天际线半径
66373
66395
  minSkylineRadius: (props.settingParams && props.settingParams.minSkylineRadius) || 0, // 天际线半径范围最小值
@@ -66376,7 +66398,7 @@ let formItem = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.reactive
66376
66398
  limitHeightBodyAlpha: (props.settingParams && props.settingParams.limitHeightBodyAlpha) || 0.7, // 限高体透明度
66377
66399
  minLimitHeightBodyAlpha: (props.settingParams && props.settingParams.minLimitHeightBodyAlpha) || 0, // 限高体透明度范围最小值
66378
66400
  maxLimitHeightBodyAlpha: (props.settingParams && props.settingParams.maxLimitHeightBodyAlpha) || 1, // 限高体透明度范围最大值
66379
- skylineWidth: 2 // 天际线宽度
66401
+ skylineWidth: props?.settingParams?.skylineWidth ?? 2 // 天际线宽度
66380
66402
  });
66381
66403
 
66382
66404
  // 组件容器Ref
@@ -66420,17 +66442,7 @@ headerTempTitle.value = language.value.skylineAnalysis;
66420
66442
 
66421
66443
  gis_utils_.utils.getWebMap(null, scenceView => {
66422
66444
  if (scenceView) {
66423
- viewModel = new SkylineAnalysisViewModel(
66424
- scenceView,
66425
- {
66426
- skylineColor: formItem.skylineColor,
66427
- skylineRadius: formItem.skylineRadius,
66428
- limitHeightBodyColor: formItem.limitHeightBodyColor,
66429
- limitHeightBodyAlpha: formItem.limitHeightBodyAlpha,
66430
- skylineWidth: formItem.skylineWidth
66431
- },
66432
- setEchartsColor()
66433
- );
66445
+ viewModel = new SkylineAnalysisViewModel(scenceView, formItem, setEchartsColor());
66434
66446
  viewModel._skylineAnalysisChartTitle = scenceView._language["skylineAnalysisChartTitle"];
66435
66447
  }
66436
66448
  });
@@ -67880,6 +67892,11 @@ class SlopeAspectAnalysisViewModel {
67880
67892
  };
67881
67893
  this._globaOptions.viewer.scene.globe.depthTestAgainstTerrain = true; //开启深度检测
67882
67894
  this._globaOptions.viewer.scene.globe.enableLighting = true;
67895
+ this._globaOptions.viewer.scene.logarithmicDepthBuffer = true;
67896
+ this._globaOptions.viewer.scene.globe.depthTestAgainstTerrain = true;
67897
+ this._globaOptions.viewer.scene.pickTranslucentDepth = true;
67898
+ this._globaOptions.viewer.scene._environmentState.renderTranslucentDepthForPick = true;
67899
+
67883
67900
  this._globaOptions._drawManager = scenceView._drawManager;
67884
67901
  // 坡度对象
67885
67902
  this._aspectAnalysis = new window.Cesium.Kq3dAspect({
@@ -694,6 +694,11 @@ const __default__ = {
694
694
  isRight: {
695
695
  type: Boolean,
696
696
  default: true
697
+ },
698
+ // 是否连续测量
699
+ isMulti: {
700
+ type: Boolean,
701
+ default: true
697
702
  }
698
703
  },
699
704
  setup(__props, { expose: __expose }) {
@@ -878,6 +883,7 @@ let headerTempRef = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref
878
883
  }
879
884
  });
880
885
  }
886
+ if(!props.isMulti) viewModel.stopMeasure();
881
887
  }
882
888
  }
883
889
  });
@@ -886,6 +892,7 @@ let headerTempRef = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref
886
892
  if (!active) {
887
893
  if(measureType.value === "area" && mode.value !== "space") return;
888
894
  isTips.value = false;
895
+ if(!props.isMulti) isActive.value = null;
889
896
  if (result.value === 0) return;
890
897
  if (measureType.value === "height" && result.value.angle === 0) return;
891
898
  if (measureType.value === "azimuth" && result.value === 0) return;
@@ -895,6 +902,7 @@ let headerTempRef = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref
895
902
 
896
903
  let handler = new Cesium.ScreenSpaceEventHandler(scenceView._viewer.scene.canvas);
897
904
  handler.setInputAction(function () {
905
+ if(!props.isMulti) return;
898
906
  if(!viewModel._measureHandler.active) return;
899
907
  let isDrawing = viewModel._measureHandler.isDrawing;
900
908
  if(!isDrawing) {
@@ -918,6 +926,7 @@ let headerTempRef = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref
918
926
  }, Cesium.ScreenSpaceEventType.LEFT_CLICK);
919
927
 
920
928
  handler.setInputAction(function () {
929
+ if(!props.isMulti) return;
921
930
  let isDrawing = viewModel._measureHandler.isDrawing;
922
931
  if(!isDrawing) {
923
932
  isActive.value = null;
@@ -5995,7 +6004,7 @@ BoxClip.install = (Vue, opts) => {
5995
6004
 
5996
6005
  /***/ }),
5997
6006
 
5998
- /***/ 2080:
6007
+ /***/ 8613:
5999
6008
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
6000
6009
 
6001
6010
  "use strict";
@@ -6007,9 +6016,6 @@ __webpack_require__.d(__webpack_exports__, {
6007
6016
 
6008
6017
  // EXTERNAL MODULE: external {"root":"Vue","commonjs":"vue","commonjs2":"vue","amd":"vue"}
6009
6018
  var external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_ = __webpack_require__(1895);
6010
- ;// CONCATENATED MODULE: external "html2canvas"
6011
- var external_html2canvas_namespaceObject = require("html2canvas");
6012
- var external_html2canvas_default = /*#__PURE__*/__webpack_require__.n(external_html2canvas_namespaceObject);
6013
6019
  // EXTERNAL MODULE: ./src/common/_ui/message/index.js
6014
6020
  var message = __webpack_require__(1705);
6015
6021
  // EXTERNAL MODULE: external "@element-plus/icons-vue"
@@ -6237,7 +6243,6 @@ const _hoisted_46 = { class: "kq3d-client-print-systemTime" }
6237
6243
 
6238
6244
 
6239
6245
 
6240
-
6241
6246
  const __default__ = {
6242
6247
  name: "Kq3dClientPrint"
6243
6248
  };
@@ -6312,6 +6317,7 @@ const __default__ = {
6312
6317
 
6313
6318
  const props = __props;
6314
6319
 
6320
+ // import html2canvas from "html2canvas-pro";
6315
6321
  const { proxy } = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.getCurrentInstance)();
6316
6322
  let language = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)(proxy.$i18n.global.messages[proxy.$i18n.global.locale]["webgl"]);
6317
6323
  let { locale, messages } = (0,vue_i18n_cjs_js_.useI18n)();
@@ -6503,13 +6509,13 @@ let printObj = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)({
6503
6509
  });
6504
6510
  let showMap = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)(false);
6505
6511
  let formItem = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.reactive)({
6506
- options: props?.options ?? null,
6507
- service: props?.service ?? null,
6508
- scenceInfo: props?.scenceInfo ?? null,
6509
- defaultShowLayerNames: props?.defaultShowLayerNames ?? null,
6510
- showToolButtons: props?.scenceInfo ?? true,
6511
- toolButtonsPosition: props?.toolButtonsPosition ?? null,
6512
- showLogo: props?.showLogo ?? false
6512
+ options: (props && props.options) || {},
6513
+ service: props && props.service,
6514
+ scenceInfo: props && props.scenceInfo,
6515
+ defaultShowLayerNames: props && props.defaultShowLayerNames,
6516
+ showToolButtons: props && props.showToolButtons,
6517
+ toolButtonsPosition: props && props.toolButtonsPosition,
6518
+ showLogo: props && props.showLogo
6513
6519
  });
6514
6520
  let currentClick = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.reactive)({});
6515
6521
  let scaleFloor = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)(1);
@@ -6545,8 +6551,8 @@ let scenceView_print = null;
6545
6551
  if (scenceView && scenceView._viewer) {
6546
6552
  scenceView_partent = scenceView;
6547
6553
  viewModel._scenceView_partent = scenceView;
6548
- Object.assign(formItem,scenceView._props);
6549
- if(!formItem.scenceInfo && !formItem.service){
6554
+ formItem = scenceView._props;
6555
+ if(!formItem.scenceInfo){
6550
6556
  formItem.scenceInfo = scenceView_partent._layerManager.getScenceInfo();
6551
6557
  }
6552
6558
  showMap.value = true;
@@ -6998,7 +7004,7 @@ function getPic() {
6998
7004
  loadState.value = true;
6999
7005
  // 延时1000ms,等待图片读入到blob文件对象,然后使用URL.createObjectURL转换成src可用的地址
7000
7006
  setTimeout(() => {
7001
- external_html2canvas_default()(printMap.value, {
7007
+ html2canvas(printMap.value, {
7002
7008
  taintTest: true, // 检测每张图片都已经加载完成
7003
7009
  logging: true, // 启用日志记录以进行调试 (发现加上对去白边有帮助)
7004
7010
  allowTaint: true, // 否允许跨源图像污染画布
@@ -10055,7 +10061,7 @@ Compass.install = (Vue, opts) => {
10055
10061
  /* harmony import */ var _webgl_fixedzoomin__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7671);
10056
10062
  /* harmony import */ var _webgl_resetview__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(1364);
10057
10063
  /* harmony import */ var _webgl_compass__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(1899);
10058
- /* harmony import */ var _webgl_clientPrint__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(2080);
10064
+ /* harmony import */ var _webgl_clientPrint__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(8613);
10059
10065
  /* harmony import */ var _webgl_baseterraingallery__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(8180);
10060
10066
  /* harmony import */ var _webgl_measure__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(9870);
10061
10067
  /* harmony import */ var _webgl_flight__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(9395);
@@ -32509,11 +32515,19 @@ const createHeaderTemp = (boxElem, props, headerTempRef, defaultHeaderTempTitle
32509
32515
  const setCollapseHeaderTemp = (__isCollapseHeaderTemp, __showShadow, isClick) => {
32510
32516
  if (headerTempRef.value) {
32511
32517
  let _btnBox = headerTempRef.value && headerTempRef.value.childNodes[1];
32512
- let _title = headerTempTitle.value
32513
- ? XEUtils.toValueString(headerTempTitle.value)
32514
- : defaultHeaderTempTitle && defaultHeaderTempTitle.value
32515
- ? defaultHeaderTempTitle.value
32516
- : null;
32518
+ let _title = (() => {
32519
+ if (headerTempTitle.value) {
32520
+ return headerTempTitle.value;
32521
+ } else if (defaultHeaderTempTitle) {
32522
+ if (defaultHeaderTempTitle.value) {
32523
+ return defaultHeaderTempTitle.value;
32524
+ } else {
32525
+ return defaultHeaderTempTitle;
32526
+ }
32527
+ } else {
32528
+ return null;
32529
+ }
32530
+ })();
32517
32531
  // 初始化时禁止动画效果
32518
32532
  addClass(boxElem, ["kq-is-hide-no-transition"]);
32519
32533
  if (isClick) {
@@ -32608,11 +32622,19 @@ const createHeaderTemp = (boxElem, props, headerTempRef, defaultHeaderTempTitle
32608
32622
  {
32609
32623
  class: "_title"
32610
32624
  },
32611
- headerTempTitle.value
32612
- ? XEUtils.toValueString(headerTempTitle.value)
32613
- : defaultHeaderTempTitle.value
32614
- ? defaultHeaderTempTitle.value
32615
- : "标题"
32625
+ (() => {
32626
+ if (headerTempTitle.value) {
32627
+ return headerTempTitle.value;
32628
+ } else if (defaultHeaderTempTitle) {
32629
+ if (defaultHeaderTempTitle.value) {
32630
+ return defaultHeaderTempTitle.value;
32631
+ } else {
32632
+ return defaultHeaderTempTitle;
32633
+ }
32634
+ } else {
32635
+ return "标题123";
32636
+ }
32637
+ })()
32616
32638
  ),
32617
32639
  h(
32618
32640
  "div",
@@ -61388,7 +61410,7 @@ class LayerManager {
61388
61410
  type = "kqgismapserver";
61389
61411
  }
61390
61412
  //记录数据源里所有图层信息
61391
- layerData.sourceLayers = source.mapServerInfo.layers_show;
61413
+ layerData.sourceLayers = source.mapServerInfo ? source.mapServerInfo.layers_show : null;
61392
61414
  } else if (layerData.sourceType === "arcserver") {
61393
61415
  if (!layerData.renderType || layerData.renderType === "rest") {
61394
61416
  type = "arcgismapserver";
@@ -66051,11 +66073,11 @@ class SkylineAnalysisViewModel {
66051
66073
  lineWidth: option.skylineWidth, //天际线线宽
66052
66074
  radius: option.skylineRadius //天际线分析范围
66053
66075
  };
66054
- if (option.viewPosition) this._options.viewPosition = option.viewPosition;
66055
- if (option.heading) this._options.heading = option.heading;
66056
- if (option.pitch) this._options.pitch = option.pitch;
66057
- if (option.roll) this._options.viewPosition = option.roll;
66058
- if (option.fov) this._options.fov = option.fov;
66076
+ // if (option.viewPosition) this._options.viewPosition = option.viewPosition;
66077
+ // if (option.heading) this._options.heading = option.heading;
66078
+ // if (option.pitch) this._options.pitch = option.pitch;
66079
+ // if (option.roll) this._options.viewPosition = option.roll;
66080
+ // if (option.fov) this._options.fov = option.fov;
66059
66081
  // 实例化天际线分析类
66060
66082
  this._skylineAnalysis = new window.Cesium.Kq3dSkyline(this._options);
66061
66083
  }
@@ -66072,7 +66094,7 @@ class SkylineAnalysisViewModel {
66072
66094
  }
66073
66095
  }
66074
66096
  if (flag) {
66075
- if (!this._skylineAnalysis || this._skylineAnalysis.isDestroyed()) {
66097
+ if (this._skylineAnalysis?.isDestroyed?.()) {
66076
66098
  this._skylineAnalysis = new window.Cesium.Kq3dSkyline(this._options);
66077
66099
  }
66078
66100
  this._skylineAnalysis.updateBuffer();
@@ -66102,8 +66124,6 @@ class SkylineAnalysisViewModel {
66102
66124
  this._skylineAnalysis = new window.Cesium.Kq3dSkyline(this._options);
66103
66125
  }
66104
66126
  this._showLimitHeightBody = true;
66105
- this._skylineAnalysis.faceColor = this._options.faceColor;
66106
- this._skylineAnalysis.faceOutlineColor = this._options.faceOutlineColor;
66107
66127
  this._skylineAnalysis.drawHeightGeo();
66108
66128
  this._skylineAnalysis.viewer.camera.moveBackward(1);
66109
66129
  } else {
@@ -66202,7 +66222,7 @@ class SkylineAnalysisViewModel {
66202
66222
  if (this._skylineAnalysis && !this._skylineAnalysis.isDestroyed()) {
66203
66223
  this._skylineAnalysis.removeAlllimitHeights();
66204
66224
  this._skylineAnalysis.removeAllFaces();
66205
- // this._skylineAnalysis.removeGeoJsonDataSource();
66225
+ this._skylineAnalysis.removeGeoJsonDataSource();
66206
66226
  this._skylineAnalysis.removeCzmlJsonDataSource();
66207
66227
  }
66208
66228
  }
@@ -66367,7 +66387,9 @@ let resultEcahrtVis = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.r
66367
66387
 
66368
66388
 
66369
66389
  let formItem = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.reactive)({
66370
- collapseValue: (props.settingParams && props.settingParams.collapseValue) || ((props.settingParams && props.settingParams.collapseValue)==''? "":"setting"), // 默认展开属性设置
66390
+ collapseValue:
66391
+ (props.settingParams && props.settingParams.collapseValue) ||
66392
+ ((props.settingParams && props.settingParams.collapseValue) == "" ? "" : "setting"), // 默认展开属性设置
66371
66393
  skylineColor: (props.settingParams && props.settingParams.skylineColor) || "#ff0000", // 天际线颜色
66372
66394
  skylineRadius: (props.settingParams && props.settingParams.skylineRadius) || 1000, // 天际线半径
66373
66395
  minSkylineRadius: (props.settingParams && props.settingParams.minSkylineRadius) || 0, // 天际线半径范围最小值
@@ -66376,7 +66398,7 @@ let formItem = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.reactive
66376
66398
  limitHeightBodyAlpha: (props.settingParams && props.settingParams.limitHeightBodyAlpha) || 0.7, // 限高体透明度
66377
66399
  minLimitHeightBodyAlpha: (props.settingParams && props.settingParams.minLimitHeightBodyAlpha) || 0, // 限高体透明度范围最小值
66378
66400
  maxLimitHeightBodyAlpha: (props.settingParams && props.settingParams.maxLimitHeightBodyAlpha) || 1, // 限高体透明度范围最大值
66379
- skylineWidth: 2 // 天际线宽度
66401
+ skylineWidth: props?.settingParams?.skylineWidth ?? 2 // 天际线宽度
66380
66402
  });
66381
66403
 
66382
66404
  // 组件容器Ref
@@ -66420,17 +66442,7 @@ headerTempTitle.value = language.value.skylineAnalysis;
66420
66442
 
66421
66443
  gis_utils_.utils.getWebMap(null, scenceView => {
66422
66444
  if (scenceView) {
66423
- viewModel = new SkylineAnalysisViewModel(
66424
- scenceView,
66425
- {
66426
- skylineColor: formItem.skylineColor,
66427
- skylineRadius: formItem.skylineRadius,
66428
- limitHeightBodyColor: formItem.limitHeightBodyColor,
66429
- limitHeightBodyAlpha: formItem.limitHeightBodyAlpha,
66430
- skylineWidth: formItem.skylineWidth
66431
- },
66432
- setEchartsColor()
66433
- );
66445
+ viewModel = new SkylineAnalysisViewModel(scenceView, formItem, setEchartsColor());
66434
66446
  viewModel._skylineAnalysisChartTitle = scenceView._language["skylineAnalysisChartTitle"];
66435
66447
  }
66436
66448
  });
@@ -67880,6 +67892,11 @@ class SlopeAspectAnalysisViewModel {
67880
67892
  };
67881
67893
  this._globaOptions.viewer.scene.globe.depthTestAgainstTerrain = true; //开启深度检测
67882
67894
  this._globaOptions.viewer.scene.globe.enableLighting = true;
67895
+ this._globaOptions.viewer.scene.logarithmicDepthBuffer = true;
67896
+ this._globaOptions.viewer.scene.globe.depthTestAgainstTerrain = true;
67897
+ this._globaOptions.viewer.scene.pickTranslucentDepth = true;
67898
+ this._globaOptions.viewer.scene._environmentState.renderTranslucentDepthForPick = true;
67899
+
67883
67900
  this._globaOptions._drawManager = scenceView._drawManager;
67884
67901
  // 坡度对象
67885
67902
  this._aspectAnalysis = new window.Cesium.Kq3dAspect({
@@ -251,11 +251,11 @@ class SkylineAnalysisViewModel {
251
251
  lineWidth: option.skylineWidth, //天际线线宽
252
252
  radius: option.skylineRadius //天际线分析范围
253
253
  };
254
- if (option.viewPosition) this._options.viewPosition = option.viewPosition;
255
- if (option.heading) this._options.heading = option.heading;
256
- if (option.pitch) this._options.pitch = option.pitch;
257
- if (option.roll) this._options.viewPosition = option.roll;
258
- if (option.fov) this._options.fov = option.fov;
254
+ // if (option.viewPosition) this._options.viewPosition = option.viewPosition;
255
+ // if (option.heading) this._options.heading = option.heading;
256
+ // if (option.pitch) this._options.pitch = option.pitch;
257
+ // if (option.roll) this._options.viewPosition = option.roll;
258
+ // if (option.fov) this._options.fov = option.fov;
259
259
  // 实例化天际线分析类
260
260
  this._skylineAnalysis = new window.Cesium.Kq3dSkyline(this._options);
261
261
  }
@@ -272,7 +272,7 @@ class SkylineAnalysisViewModel {
272
272
  }
273
273
  }
274
274
  if (flag) {
275
- if (!this._skylineAnalysis || this._skylineAnalysis.isDestroyed()) {
275
+ if (this._skylineAnalysis?.isDestroyed?.()) {
276
276
  this._skylineAnalysis = new window.Cesium.Kq3dSkyline(this._options);
277
277
  }
278
278
  this._skylineAnalysis.updateBuffer();
@@ -302,8 +302,6 @@ class SkylineAnalysisViewModel {
302
302
  this._skylineAnalysis = new window.Cesium.Kq3dSkyline(this._options);
303
303
  }
304
304
  this._showLimitHeightBody = true;
305
- this._skylineAnalysis.faceColor = this._options.faceColor;
306
- this._skylineAnalysis.faceOutlineColor = this._options.faceOutlineColor;
307
305
  this._skylineAnalysis.drawHeightGeo();
308
306
  this._skylineAnalysis.viewer.camera.moveBackward(1);
309
307
  } else {
@@ -402,7 +400,7 @@ class SkylineAnalysisViewModel {
402
400
  if (this._skylineAnalysis && !this._skylineAnalysis.isDestroyed()) {
403
401
  this._skylineAnalysis.removeAlllimitHeights();
404
402
  this._skylineAnalysis.removeAllFaces();
405
- // this._skylineAnalysis.removeGeoJsonDataSource();
403
+ this._skylineAnalysis.removeGeoJsonDataSource();
406
404
  this._skylineAnalysis.removeCzmlJsonDataSource();
407
405
  }
408
406
  }
@@ -567,7 +565,9 @@ let resultEcahrtVis = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.r
567
565
 
568
566
 
569
567
  let formItem = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.reactive)({
570
- collapseValue: (props.settingParams && props.settingParams.collapseValue) || ((props.settingParams && props.settingParams.collapseValue)==''? "":"setting"), // 默认展开属性设置
568
+ collapseValue:
569
+ (props.settingParams && props.settingParams.collapseValue) ||
570
+ ((props.settingParams && props.settingParams.collapseValue) == "" ? "" : "setting"), // 默认展开属性设置
571
571
  skylineColor: (props.settingParams && props.settingParams.skylineColor) || "#ff0000", // 天际线颜色
572
572
  skylineRadius: (props.settingParams && props.settingParams.skylineRadius) || 1000, // 天际线半径
573
573
  minSkylineRadius: (props.settingParams && props.settingParams.minSkylineRadius) || 0, // 天际线半径范围最小值
@@ -576,7 +576,7 @@ let formItem = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.reactive
576
576
  limitHeightBodyAlpha: (props.settingParams && props.settingParams.limitHeightBodyAlpha) || 0.7, // 限高体透明度
577
577
  minLimitHeightBodyAlpha: (props.settingParams && props.settingParams.minLimitHeightBodyAlpha) || 0, // 限高体透明度范围最小值
578
578
  maxLimitHeightBodyAlpha: (props.settingParams && props.settingParams.maxLimitHeightBodyAlpha) || 1, // 限高体透明度范围最大值
579
- skylineWidth: 2 // 天际线宽度
579
+ skylineWidth: props?.settingParams?.skylineWidth ?? 2 // 天际线宽度
580
580
  });
581
581
 
582
582
  // 组件容器Ref
@@ -620,17 +620,7 @@ headerTempTitle.value = language.value.skylineAnalysis;
620
620
 
621
621
  gis_utils_.utils.getWebMap(null, scenceView => {
622
622
  if (scenceView) {
623
- viewModel = new SkylineAnalysisViewModel(
624
- scenceView,
625
- {
626
- skylineColor: formItem.skylineColor,
627
- skylineRadius: formItem.skylineRadius,
628
- limitHeightBodyColor: formItem.limitHeightBodyColor,
629
- limitHeightBodyAlpha: formItem.limitHeightBodyAlpha,
630
- skylineWidth: formItem.skylineWidth
631
- },
632
- setEchartsColor()
633
- );
623
+ viewModel = new SkylineAnalysisViewModel(scenceView, formItem, setEchartsColor());
634
624
  viewModel._skylineAnalysisChartTitle = scenceView._language["skylineAnalysisChartTitle"];
635
625
  }
636
626
  });
@@ -269,6 +269,11 @@ class SlopeAspectAnalysisViewModel {
269
269
  };
270
270
  this._globaOptions.viewer.scene.globe.depthTestAgainstTerrain = true; //开启深度检测
271
271
  this._globaOptions.viewer.scene.globe.enableLighting = true;
272
+ this._globaOptions.viewer.scene.logarithmicDepthBuffer = true;
273
+ this._globaOptions.viewer.scene.globe.depthTestAgainstTerrain = true;
274
+ this._globaOptions.viewer.scene.pickTranslucentDepth = true;
275
+ this._globaOptions.viewer.scene._environmentState.renderTranslucentDepthForPick = true;
276
+
272
277
  this._globaOptions._drawManager = scenceView._drawManager;
273
278
  // 坡度对象
274
279
  this._aspectAnalysis = new window.Cesium.Kq3dAspect({