@kq_npm/client3d_webgl_vue 4.5.40 → 4.5.42

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.
@@ -57,6 +57,13 @@ element_plus_dist_index_full_js__WEBPACK_IMPORTED_MODULE_0__.ElMessage.install =
57
57
  _common_KqGIS__WEBPACK_IMPORTED_MODULE_1__/* .kq_npm_client_common_vue.KqMessage */ .P.KqMessage = element_plus_dist_index_full_js__WEBPACK_IMPORTED_MODULE_0__.ElMessage;
58
58
 
59
59
 
60
+ /***/ }),
61
+
62
+ /***/ 8422:
63
+ /***/ (function(module) {
64
+
65
+ module.exports = require("@element-plus/icons-vue");
66
+
60
67
  /***/ }),
61
68
 
62
69
  /***/ 348:
@@ -248,6 +255,22 @@ class WindySlicingViewModel {
248
255
  this.callbackParams = callbackParams;
249
256
  this._windySlicingPolylineHandler = new window.Cesium.ScreenSpaceEventHandler(this._viewer.canvas);
250
257
  }
258
+ // 切换剖切模式
259
+ changeSlicingMode() {
260
+ if (this._options.styleType == "1") {
261
+ if (this._currentVolumePosition) this.windySlicingRectangleSlicing(this._currentVolumePosition);
262
+ } else if (this._options.styleType == "2") {
263
+ if (this._currentVolumePosition) {
264
+ this.windySlicingSurfaceSection(this._currentVolumePosition, this._windySlicingLayerconfig);
265
+ }
266
+ } else if (this._options.styleType == "3") {
267
+ this.windyVoxelsSingleSlicing();
268
+ } else if (this._options.styleType == "4") {
269
+ this.gridVoxelsSingleProvider();
270
+ } else if (this._options.styleType == "5") {
271
+ this.gridVolumeIsoProvider();
272
+ }
273
+ }
251
274
  // 参数切换
252
275
  paramsChanged(key, val) {
253
276
  let that = this;
@@ -278,7 +301,8 @@ class WindySlicingViewModel {
278
301
  this._windySlicingDrawManager.startDraw("rectangle", { clampToGround: true }, (feature, { shape }) => {
279
302
  if (!shape.groupName || shape.groupName !== "windySlicingDraw") return;
280
303
  if (shape && shape.type === "rectangle") {
281
- that.windySlicingRectangleSlicing(shape.bounds);
304
+ that._currentVolumePosition = shape.bounds;
305
+ that.changeSlicingMode();
282
306
  this.callbackParams && this.callbackParams("showSlicingSetting", true)
283
307
  }
284
308
  that._windySlicingDrawManager.clearDrawGroup("windySlicingDraw");
@@ -294,30 +318,12 @@ class WindySlicingViewModel {
294
318
  if (this._currentVolumePosition) this.windySlicingRectangleSlicing(this._currentVolumePosition);
295
319
  }
296
320
  } else if (this._options.slicingType == 3) {
297
- if (this._options.styleType == "3") {
298
- this.windyVoxelsSingleSlicing();
299
- } else if (this._options.styleType == "4") {
300
- this.gridVoxelsSingleProvider();
301
- } else if (this._options.styleType == "5") {
302
- this.gridVolumeIsoProvider();
303
- }
321
+ this.changeSlicingMode();
304
322
  }
305
323
  break;
306
324
  case "styleType":
307
325
  this.removeVolumePrimitive();
308
- if (this._options.styleType == "1") {
309
- if (this._currentVolumePosition) this.windySlicingRectangleSlicing(this._currentVolumePosition);
310
- } else if (this._options.styleType == "2") {
311
- if (this._currentVolumePosition) {
312
- this.windySlicingSurfaceSection(this._currentVolumePosition, this._windySlicingLayerconfig);
313
- }
314
- } else if (this._options.styleType == "3") {
315
- this.windyVoxelsSingleSlicing();
316
- } else if (this._options.styleType == "4") {
317
- this.gridVoxelsSingleProvider();
318
- } else if (this._options.styleType == "5") {
319
- this.gridVolumeIsoProvider();
320
- }
326
+ this.changeSlicingMode();
321
327
  break;
322
328
  case "showAxis":
323
329
  if (this._volumePrimitive) this._volumePrimitive.showAxis(this._options[key]);
@@ -386,6 +392,9 @@ class WindySlicingViewModel {
386
392
  if (this._volumePrimitiveVoxels) {
387
393
  this._volumePrimitiveVoxels.zIndexClipping((this._options[key] - 1) || 0);
388
394
  }
395
+ case "rangeFiltering":
396
+ this.removeVolumePrimitive();
397
+ this.gridVoxelsSingleProvider();
389
398
  break;
390
399
  case "destroy":
391
400
  this.destroy();
@@ -566,18 +575,43 @@ class WindySlicingViewModel {
566
575
  */
567
576
  getPointSlicingData(cartographic) {
568
577
  let that = this;
569
- let X = window.Cesium.Math.toDegrees(cartographic.longitude);
570
- let Y = window.Cesium.Math.toDegrees(cartographic.latitude);
571
- let unit = this._windySlicingLayerconfig.unit;
572
- let data = {
573
- "collectionName": that._windySlicingLayerconfig?.params?.layer,
574
- "point": {
575
- "x": X,
576
- "y": Y
577
- },
578
- "geoSRS": "EPSG:4326",
579
- type: 1
578
+ const { longitude, latitude } = cartographic;
579
+ const X = Cesium.Math.toDegrees(longitude);
580
+ const Y = Cesium.Math.toDegrees(latitude);
581
+ const unit = this._windySlicingLayerconfig?.valueUnit || '';
582
+
583
+ const layer = this._layerManager.getLayerByGuid(
584
+ this._windySlicingLayerconfig.guid,
585
+ "imagerylayer"
586
+ );
587
+
588
+ // 处理时间维度
589
+ let timeValue = null;
590
+ if (this._windySlicingLayerconfig?.multiDimInfo?.isHaveTimeDim) {
591
+ const timeIndex = layer?.imageryProvider?._timeIndex;
592
+ timeValue = timeIndex != null
593
+ ? this._windySlicingLayerconfig.multiDimInfo.timeValues[timeIndex]
594
+ : null;
595
+ }
596
+
597
+ // 处理Z轴维度
598
+ let zValue = null;
599
+ if (this._windySlicingLayerconfig?.multiDimInfo?.isHaveZDim) {
600
+ const zIndex = layer?.imageryProvider?._zValueIndex;
601
+ zValue = zIndex != null
602
+ ? `${this._windySlicingLayerconfig.zValues[zIndex]}`
603
+ : null;
580
604
  }
605
+
606
+ // 构建数据对象
607
+ const data = {
608
+ collectionName: this._windySlicingLayerconfig?.params?.layer,
609
+ point: { x: X, y: Y },
610
+ geoSRS: "EPSG:4326",
611
+ type: 1,
612
+ ...(timeValue != null && { timeValue }),
613
+ ...(zValue != null && { zValues: zValue })
614
+ };
581
615
  //清除
582
616
  if (this._pointSlicingHtmlTag) {
583
617
  this._pointSlicingHtmlTag.destroy()
@@ -618,6 +652,49 @@ class WindySlicingViewModel {
618
652
  };
619
653
  xhr.send(JSON.stringify(data));
620
654
  }
655
+ //计算风向
656
+ /**
657
+ *
658
+ * @param {*} u 经度
659
+ * @param {*} v 维度
660
+ * @param {*} dir 角度
661
+ * @returns
662
+ */
663
+ direction(u, v, dir) {
664
+ let angles
665
+ let direct = "";
666
+ let speed
667
+ if (u && v) {
668
+ speed = Math.sqrt(u * u + v * v);
669
+
670
+ let angle = Math.atan2(u, v);
671
+ angles = 180 + angle * 180 / Math.PI;
672
+ } else {
673
+ angles = Number(dir)
674
+ }
675
+
676
+ if (angles >= 15 && angles < 75) {
677
+ direct = "东北";
678
+ } else if (angles >= 75 && angles < 105) {
679
+ direct = "东";
680
+ } else if (angles >= 105 && angles < 165) {
681
+ direct = "东南";
682
+ } else if (angles >= 165 && angles < 195) {
683
+ direct = "南";
684
+ } else if (angles >= 195 && angles < 255) {
685
+ direct = "西南";
686
+ } else if (angles >= 255 && angles < 285) {
687
+ direct = "西";
688
+ } else if (angles >= 285 && angles < 345) {
689
+ direct = "西北";
690
+ } else {
691
+ direct = "北";
692
+ }
693
+ return {
694
+ direct,
695
+ speed
696
+ }
697
+ }
621
698
  /**
622
699
  * 展现气象服务点数据
623
700
  * @param {*} val 数值
@@ -662,6 +739,22 @@ class WindySlicingViewModel {
662
739
  attrRange: [ranges[0], ranges[ranges.length - 1]],
663
740
  varName: this._windySlicingLayerconfig?.params?.varNames,
664
741
  };
742
+ // 处理时间维度
743
+ let timeValue = null;
744
+ const layer = this._layerManager.getLayerByGuid(
745
+ this._windySlicingLayerconfig.guid,
746
+ "imagerylayer"
747
+ );
748
+ if (this._windySlicingLayerconfig?.multiDimInfo?.isHaveTimeDim) {
749
+ const timeIndex = layer?.imageryProvider?._timeIndex;
750
+ timeValue = timeIndex != null
751
+ ? this._windySlicingLayerconfig.multiDimInfo.timeValues[timeIndex]
752
+ : null;
753
+ }
754
+ if (this._windySlicingLayerconfig.unit == 'hpa') {
755
+ this._currentVolumeOption.isReverse = true;
756
+ }
757
+ if (timeValue) this._currentVolumeOption.timeValue = timeValue;
665
758
  let varNames = this._windySlicingLayerconfig?.params?.varNames?.split?.(",") ?? [];
666
759
  if (varNames && varNames.length > 1) {
667
760
  Object.assign(this._currentVolumeOption, {
@@ -874,45 +967,54 @@ class WindySlicingViewModel {
874
967
  let that = this;
875
968
  if (!this._volumePrimitiveVoxels || !this._volumePrimitiveVoxels.readyPromise) return;
876
969
  this._volumePrimitiveVoxels.readyPromise.then(() => {
877
- let attrRange = that.generateAttrRange(that._windySlicingLayerconfig.ranges, that._windySlicingLayerconfig.colors);
970
+ let attrRange = that.generateAttrRange(that._options.renderList ?? null);
878
971
  that._volumePrimitiveVoxels.showSurfaces(that._currentVolumePosition, attrRange);
879
972
  })
880
973
  }
881
974
  }
882
- // 生成attrRange的核心函数
883
- generateAttrRange(rangeTable, colorTable) {
884
- const minValue = Math.min(...rangeTable);
885
- const maxValue = Math.max(...rangeTable);
886
- const numColors = colorTable.length;
887
- const step = 0.1;
888
- // 计算区间大小
889
- const intervalSize = (maxValue - minValue) / numColors;
890
- // 生成所有数值点
891
- const attrRange = [];
892
- let currentValue = minValue;
893
- // 四舍五入到小数点后一位,避免浮点精度问题
894
- while (currentValue <= maxValue) {
895
- // 计算当前值所属的区间索引
896
- const intervalIndex = Math.min(
897
- Math.floor((currentValue - minValue) / intervalSize),
898
- numColors - 1
899
- );
900
- // 获取对应颜色
901
- const color = colorTable[intervalIndex];
902
- // 添加到结果数组
903
- attrRange.push({
904
- value: parseFloat(currentValue.toFixed(1)),
905
- color: Cesium.Color.fromCssColorString(color),
906
- interval: intervalIndex
907
- });
908
- // 增加步长
909
- currentValue += step;
910
- // 处理浮点精度问题
911
- currentValue = parseFloat(currentValue.toFixed(1));
975
+ getValueColor(start, end, color) {
976
+ let num = start;
977
+ let arr = [];
978
+ while (start <= num && num <= end) {
979
+ arr.push({
980
+ value: num,
981
+ color: Cesium.Color.fromCssColorString(color)
982
+ })
983
+ num = num + 0.1
912
984
  }
985
+ return arr;
986
+ }
987
+ /**
988
+ * 生成属性范围数组,用于等值面渲染
989
+ * @param {Array} data - 输入的范围配置数组
990
+ * @returns {Array} 生成的属性范围数组
991
+ */
992
+ generateAttrRange(data = [{ minValue: 0, maxValue: 10, color: "#fdfd28" }]) {
993
+ const attrRange = [];
994
+ const PRECISION = 1; // 小数点后精度
995
+ const STEP = 0.1; // 步长
996
+ data.forEach(element => {
997
+ const { minValue, maxValue, color } = element;
998
+ // 参数校验
999
+ if (minValue >= maxValue) {
1000
+ console.warn(`Invalid range: minValue (${minValue}) >= maxValue (${maxValue})`);
1001
+ return;
1002
+ }
1003
+ // 计算当前范围的所有值点
1004
+ let currentValue = minValue;
1005
+ while (currentValue <= maxValue) {
1006
+ attrRange.push({
1007
+ value: parseFloat(currentValue.toFixed(PRECISION)),
1008
+ color: Cesium.Color.fromCssColorString(color),
1009
+ interval: 0 // 单色区间默认为0
1010
+ });
1011
+ // 增加步长并处理浮点精度
1012
+ currentValue = parseFloat((currentValue + STEP).toFixed(PRECISION));
1013
+ }
1014
+ });
913
1015
  return attrRange;
914
1016
  }
915
- // 风速体
1017
+ // 体场
916
1018
  gridVoxelsSingleProvider() {
917
1019
  if (!Cesium.Kq3dGridVoxelsSingleProviderExt) {
918
1020
  console.log("Kq3dGridVoxelsSingleProviderExt class cannot be empty");
@@ -921,16 +1023,13 @@ class WindySlicingViewModel {
921
1023
  if (this._currentVolumeOption && this._currentVolumePosition) {
922
1024
  let options = Object.assign({}, this._currentVolumeOption, {
923
1025
  // 高度偏移
924
- offset: 0,
1026
+ offset: 100,
925
1027
  showAxis: false,
926
1028
  scale: this._options["layerScale"] || 20,
927
1029
  filterValues: [30000, -30000],
928
- filterRange: [20, 60],
1030
+ filterRange: this._options["rangeFiltering"] || [20, 40],
929
1031
  zValues: this._windySlicingLayerconfig.zValues
930
1032
  });
931
- if (this._windySlicingLayerconfig.unit != 'hpa') {
932
- options.isReverse = true;
933
- }
934
1033
  this._volumePrimitiveVoxels = new Cesium.Kq3dGridVoxelsSingleProviderExt(options);
935
1034
  let that = this;
936
1035
  if (!this._volumePrimitiveVoxels || !this._volumePrimitiveVoxels.readyPromise) return;
@@ -1035,10 +1134,14 @@ var vue_i18n_cjs_js_ = __webpack_require__(7080);
1035
1134
  // EXTERNAL MODULE: external "@kq_npm/client_common_vue/_types/global-event"
1036
1135
  var global_event_ = __webpack_require__(3536);
1037
1136
  var global_event_default = /*#__PURE__*/__webpack_require__.n(global_event_);
1137
+ // EXTERNAL MODULE: external "@element-plus/icons-vue"
1138
+ var icons_vue_ = __webpack_require__(8422);
1038
1139
  ;// CONCATENATED MODULE: ./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./src/webgl/windyslicing/WindySlicing.vue?vue&type=script&setup=true&lang=js
1039
1140
 
1040
1141
 
1041
1142
  const _hoisted_1 = { class: "kq3d-windy-slicing-box" }
1143
+ const _hoisted_2 = { style: {"display":"flex","align-items":"center","justify-content":"left"} }
1144
+ const _hoisted_3 = { class: "render-list-container" }
1042
1145
 
1043
1146
  ;
1044
1147
 
@@ -1048,6 +1151,7 @@ const _hoisted_1 = { class: "kq3d-windy-slicing-box" }
1048
1151
 
1049
1152
 
1050
1153
 
1154
+
1051
1155
  const __default__ = {
1052
1156
  name: "Kq3dWindySlicing"
1053
1157
  };
@@ -1106,8 +1210,11 @@ let currentLang = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)(
1106
1210
  let language = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)(proxy.$i18n.global.messages[proxy.$i18n.global.locale]["webgl"]);
1107
1211
  let enableLayerings = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)([]);
1108
1212
  let unit = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)("m");
1213
+ let unitValue = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)("");
1109
1214
  let showSlicingSetting = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)(false);
1110
1215
  let showWindySlicing = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)(props.show);
1216
+ const scrollcar_ref = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)();
1217
+ const renderbox_ref = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.ref)();
1111
1218
 
1112
1219
  let formItem = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.reactive)({
1113
1220
  collapseValue: props.settingParams?.collapseValue ?? "setting",
@@ -1139,7 +1246,15 @@ let formItem = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.reactive
1139
1246
  bodyDissectionXClipping: props.settingParams?.bodyDissectionXClipping ?? 0, //体剖切透明度
1140
1247
  bodyDissectionYClipping: props.settingParams?.bodyDissectionYClipping ?? 0, //体剖切透明度
1141
1248
  bodyDissectionZClipping: props.settingParams?.bodyDissectionZClipping ?? 1, //体剖切透明度
1142
- bodyDissectionZClippingMax: props.settingParams?.bodyDissectionZClippingMax ?? 10 //体剖切透明度
1249
+ bodyDissectionZClippingMax: props.settingParams?.bodyDissectionZClippingMax ?? 10, //体剖切透明度
1250
+ rangeFiltering: props.settingParams?.rangeFiltering ?? [20, 60], // 范围过滤
1251
+ maxRangeFiltering: props.settingParams?.maxRangeFiltering ?? 80, // 范围过滤最大值
1252
+ minRangeFiltering: props.settingParams?.minRangeFiltering ?? -20, // 范围过滤最小值
1253
+ renderList: props.settingParams?.renderList ?? [{
1254
+ minValue: 0,
1255
+ maxValue: 10,
1256
+ color: "#fdfd28"
1257
+ }], // 渲染列表
1143
1258
  });
1144
1259
  // 创建深度复制
1145
1260
  let formItemDef = JSON.parse(JSON.stringify(formItem));
@@ -1226,6 +1341,7 @@ function callbackParams(key, val) {
1226
1341
  showSlicingSetting.value = val;
1227
1342
  break;
1228
1343
  case "slicingLayerConfig":
1344
+ console.log(val);
1229
1345
  if (!Array.isArray(val.zValues) || val.zValues.length === 0) {
1230
1346
  showWindySlicing.value = false;
1231
1347
  } else {
@@ -1238,6 +1354,12 @@ function callbackParams(key, val) {
1238
1354
  Object.assign(viewModel._options, formItem);
1239
1355
  }
1240
1356
  unit.value = val.unit;
1357
+ unitValue.value = val.valueUnit;
1358
+ const ranges = val?.ranges ?? null;
1359
+ if (ranges?.length) {
1360
+ formItem.maxRangeFiltering = Number(ranges.at(-1));
1361
+ formItem.minRangeFiltering = Number(ranges[0]);
1362
+ }
1241
1363
  break;
1242
1364
  case "windySlicingSurfaceSection":
1243
1365
  changeParams(val);
@@ -1263,16 +1385,17 @@ function callbackParams(key, val) {
1263
1385
  //切换类型
1264
1386
  function changeMode(mode) {
1265
1387
  if (!viewModel) return;
1266
- if (formItem.mode !== mode) {
1267
- showSlicingSetting.value = false;
1268
- formItem.mode = mode;
1269
- viewModel._options.mode = formItem.mode;
1270
- viewModel && viewModel.paramsChanged("mode");
1271
- if (mode == "delete") {
1272
- Object.assign(formItem, formItemDef);
1273
- }
1388
+ showSlicingSetting.value = false;
1389
+ formItem.mode = mode;
1390
+ viewModel._options.mode = formItem.mode;
1391
+ viewModel && viewModel.paramsChanged("mode");
1392
+ if (mode == "delete") {
1393
+ Object.assign(formItem, formItemDef);
1274
1394
  }
1275
1395
  }
1396
+ function applicationClick() {
1397
+ paramsChanged("styleType");
1398
+ }
1276
1399
  // 参数切换事件
1277
1400
  function paramsChanged(key) {
1278
1401
  if (!viewModel) return;
@@ -1357,8 +1480,30 @@ function clear() {
1357
1480
  }
1358
1481
  // 显示提示信息
1359
1482
  function formatTooltip(val) {
1360
- return enableLayerings.value[val - 1] + unit.value;
1483
+ return enableLayerings.value[val - 1] +" "+ unit.value;
1484
+ }
1485
+ // 显示提示信息
1486
+ function formatTooltips(val) {
1487
+ return val +" "+ unitValue.value;
1361
1488
  }
1489
+ /**
1490
+ * 添加渲染列表
1491
+ */
1492
+ const addRenderList = () => {
1493
+ formItem.renderList.push({
1494
+ minValue: 0,
1495
+ maxValue: 10,
1496
+ color: "#fdfd28"
1497
+ });
1498
+ };
1499
+
1500
+ /**
1501
+ * 删除渲染列表
1502
+ * @param {number} index 下标
1503
+ */
1504
+ const handleDelete = index => {
1505
+ formItem.renderList.splice(index, 1);
1506
+ };
1362
1507
  // 销毁
1363
1508
  (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.onBeforeUnmount)(() => {
1364
1509
  global_event_default().off("windyTypeChange", handleWindyTypeChange);
@@ -1382,6 +1527,9 @@ return (_ctx, _cache) => {
1382
1527
  const _component_kq_input_number = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.resolveComponent)("kq-input-number")
1383
1528
  const _component_kq_option = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.resolveComponent)("kq-option")
1384
1529
  const _component_kq_select = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.resolveComponent)("kq-select")
1530
+ const _component_kq_icon = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.resolveComponent)("kq-icon")
1531
+ const _component_kq_color_picker = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.resolveComponent)("kq-color-picker")
1532
+ const _component_kq_scrollbar = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.resolveComponent)("kq-scrollbar")
1385
1533
  const _component_kq_form = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.resolveComponent)("kq-form")
1386
1534
  const _component_kq_collapse_item = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.resolveComponent)("kq-collapse-item")
1387
1535
  const _component_kq_collapse = (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.resolveComponent)("kq-collapse")
@@ -1868,7 +2016,7 @@ return (_ctx, _cache) => {
1868
2016
  ]),
1869
2017
  _: 1 /* STABLE */
1870
2018
  }),
1871
- (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_row, { class: "rowclass" }, {
2019
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_row, null, {
1872
2020
  default: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.withCtx)(() => [
1873
2021
  (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_form_item, {
1874
2022
  label: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.unref)(language).heightSection + (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.unref)(language).value
@@ -2112,6 +2260,189 @@ return (_ctx, _cache) => {
2112
2260
  _: 1 /* STABLE */
2113
2261
  })
2114
2262
  ], 64 /* STABLE_FRAGMENT */))
2263
+ : (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createCommentVNode)("v-if", true),
2264
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createCommentVNode)(" 体场设置 "),
2265
+ ((0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.unref)(formItem).styleType === '4')
2266
+ ? ((0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.openBlock)(), (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createBlock)(_component_kq_row, { key: 3 }, {
2267
+ default: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.withCtx)(() => [
2268
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_form_item, {
2269
+ label: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.unref)(language).rangeFiltering + '('+(0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.unref)(unitValue)+')'
2270
+ }, {
2271
+ default: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.withCtx)(() => [
2272
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_slider, {
2273
+ modelValue: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.unref)(formItem).rangeFiltering,
2274
+ "onUpdate:modelValue": _cache[58] || (_cache[58] = $event => (((0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.unref)(formItem).rangeFiltering) = $event)),
2275
+ range: "",
2276
+ min: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.unref)(formItem).minRangeFiltering,
2277
+ max: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.unref)(formItem).maxRangeFiltering,
2278
+ "format-tooltip": formatTooltips,
2279
+ onChange: _cache[59] || (_cache[59] = $event => (paramsChanged('rangeFiltering')))
2280
+ }, null, 8 /* PROPS */, ["modelValue", "min", "max"])
2281
+ ]),
2282
+ _: 1 /* STABLE */
2283
+ }, 8 /* PROPS */, ["label"])
2284
+ ]),
2285
+ _: 1 /* STABLE */
2286
+ }))
2287
+ : (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createCommentVNode)("v-if", true),
2288
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createCommentVNode)(" 等值面 "),
2289
+ ((0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.unref)(formItem).styleType === '5')
2290
+ ? ((0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.openBlock)(), (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createElementBlock)(external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.Fragment, { key: 4 }, [
2291
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_row, {
2292
+ class: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.normalizeClass)((0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.unref)(formItem).renderList.length > 0 ? 'rowclass' : '')
2293
+ }, {
2294
+ default: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.withCtx)(() => [
2295
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_form_item, {
2296
+ label: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.unref)(language).renderList
2297
+ }, {
2298
+ default: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.withCtx)(() => [
2299
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createElementVNode)("div", _hoisted_2, [
2300
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_icon, {
2301
+ color: "#409EFF",
2302
+ size: "18",
2303
+ class: "kq-row-icon",
2304
+ onClick: addRenderList,
2305
+ title: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.unref)(language).addRenderValue
2306
+ }, {
2307
+ default: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.withCtx)(() => [
2308
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)((0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.unref)(icons_vue_.CirclePlus))
2309
+ ]),
2310
+ _: 1 /* STABLE */
2311
+ }, 8 /* PROPS */, ["title"]),
2312
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_icon, {
2313
+ style: {"margin-left":"10px"},
2314
+ color: "#409EFF",
2315
+ size: "18",
2316
+ class: "kq-row-icon",
2317
+ onClick: applicationClick,
2318
+ title: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.unref)(language).applicationBtn
2319
+ }, {
2320
+ default: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.withCtx)(() => [
2321
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)((0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.unref)(client_icons_vue_.IconSave2))
2322
+ ]),
2323
+ _: 1 /* STABLE */
2324
+ }, 8 /* PROPS */, ["title"])
2325
+ ])
2326
+ ]),
2327
+ _: 1 /* STABLE */
2328
+ }, 8 /* PROPS */, ["label"])
2329
+ ]),
2330
+ _: 1 /* STABLE */
2331
+ }, 8 /* PROPS */, ["class"]),
2332
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_row, null, {
2333
+ default: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.withCtx)(() => [
2334
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_scrollbar, {
2335
+ "max-height": "170px",
2336
+ ref_key: "scrollcar_ref",
2337
+ ref: scrollcar_ref,
2338
+ style: {"width":"100%"}
2339
+ }, {
2340
+ default: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.withCtx)(() => [
2341
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createCommentVNode)(" 添加关键容器:强制内部使用栅格布局 "),
2342
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createElementVNode)("div", _hoisted_3, [
2343
+ ((0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.openBlock)(true), (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createElementBlock)(external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.Fragment, null, (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.renderList)((0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.unref)(formItem).renderList, (item, index) => {
2344
+ return ((0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.openBlock)(), (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createElementBlock)("div", {
2345
+ key: index,
2346
+ class: "render-item"
2347
+ }, [
2348
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createCommentVNode)(" 关键修改:添加gutter并确保总span=24 "),
2349
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_row, {
2350
+ justify: "space-between",
2351
+ align: "middle"
2352
+ }, {
2353
+ default: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.withCtx)(() => [
2354
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_col, { span: 6 }, {
2355
+ default: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.withCtx)(() => [
2356
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_input_number, {
2357
+ modelValue: item.minValue,
2358
+ "onUpdate:modelValue": $event => ((item.minValue) = $event),
2359
+ "controls-position": "right",
2360
+ max: item.maxValue,
2361
+ style: {"width":"100%"},
2362
+ onChange: _cache[60] || (_cache[60] = $event => (paramsChanged('renderList')))
2363
+ }, null, 8 /* PROPS */, ["modelValue", "onUpdate:modelValue", "max"])
2364
+ ]),
2365
+ _: 2 /* DYNAMIC */
2366
+ }, 1024 /* DYNAMIC_SLOTS */),
2367
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_col, {
2368
+ span: 2,
2369
+ style: {"text-align":"center"}
2370
+ }, {
2371
+ default: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.withCtx)(() => [
2372
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createTextVNode)(" ~ ")
2373
+ ]),
2374
+ _: 1 /* STABLE */
2375
+ }),
2376
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_col, { span: 6 }, {
2377
+ default: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.withCtx)(() => [
2378
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_input_number, {
2379
+ modelValue: item.maxValue,
2380
+ "onUpdate:modelValue": $event => ((item.maxValue) = $event),
2381
+ "controls-position": "right",
2382
+ min: item.minValue,
2383
+ style: {"width":"100%"},
2384
+ onChange: _cache[61] || (_cache[61] = $event => (paramsChanged('renderList')))
2385
+ }, null, 8 /* PROPS */, ["modelValue", "onUpdate:modelValue", "min"])
2386
+ ]),
2387
+ _: 2 /* DYNAMIC */
2388
+ }, 1024 /* DYNAMIC_SLOTS */),
2389
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_col, {
2390
+ span: 4,
2391
+ style: {"text-align":"center"}
2392
+ }, {
2393
+ default: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.withCtx)(() => [
2394
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createElementVNode)("div", null, (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.toDisplayString)((0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.unref)(unitValue)), 1 /* TEXT */)
2395
+ ]),
2396
+ _: 1 /* STABLE */
2397
+ }),
2398
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_col, {
2399
+ span: 3,
2400
+ style: {"text-align":"right"},
2401
+ justify: "space-between",
2402
+ align: "middle"
2403
+ }, {
2404
+ default: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.withCtx)(() => [
2405
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_color_picker, {
2406
+ modelValue: item.color,
2407
+ "onUpdate:modelValue": $event => ((item.color) = $event),
2408
+ onChange: _cache[62] || (_cache[62] = $event => (paramsChanged('renderList')))
2409
+ }, null, 8 /* PROPS */, ["modelValue", "onUpdate:modelValue"])
2410
+ ]),
2411
+ _: 2 /* DYNAMIC */
2412
+ }, 1024 /* DYNAMIC_SLOTS */),
2413
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_col, {
2414
+ span: 3,
2415
+ style: {"display":"flex","align-items":"center","justify-content":"center"}
2416
+ }, {
2417
+ default: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.withCtx)(() => [
2418
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)(_component_kq_icon, {
2419
+ color: "#F56C6C",
2420
+ size: "18",
2421
+ class: "kq-row-icon",
2422
+ onClick: $event => (handleDelete(index)),
2423
+ title: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.unref)(language).deleteRow
2424
+ }, {
2425
+ default: (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.withCtx)(() => [
2426
+ (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createVNode)((0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.unref)(icons_vue_.Remove))
2427
+ ]),
2428
+ _: 2 /* DYNAMIC */
2429
+ }, 1032 /* PROPS, DYNAMIC_SLOTS */, ["onClick", "title"])
2430
+ ]),
2431
+ _: 2 /* DYNAMIC */
2432
+ }, 1024 /* DYNAMIC_SLOTS */)
2433
+ ]),
2434
+ _: 2 /* DYNAMIC */
2435
+ }, 1024 /* DYNAMIC_SLOTS */)
2436
+ ]))
2437
+ }), 128 /* KEYED_FRAGMENT */))
2438
+ ])
2439
+ ]),
2440
+ _: 1 /* STABLE */
2441
+ }, 512 /* NEED_PATCH */)
2442
+ ]),
2443
+ _: 1 /* STABLE */
2444
+ })
2445
+ ], 64 /* STABLE_FRAGMENT */))
2115
2446
  : (0,external_root_Vue_commonjs_vue_commonjs2_vue_amd_vue_.createCommentVNode)("v-if", true)
2116
2447
  ]),
2117
2448
  _: 1 /* STABLE */