@vtx/cs-map 1.0.9 → 1.0.10

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.
@@ -1 +1 @@
1
- {"version":3,"file":"HighlightLayer.js","names":["_FeatureLayer","_interopRequireDefault","require","_cesium","_CircleRippleMaterialProperty","obj","__esModule","_typeof","o","Symbol","iterator","constructor","prototype","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","ownKeys","e","r","t","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","call","Number","handleData","data","map","_data","datas","Array","isArray","v","ImageryLayerFeatureInfo","item","geometry","_ref","_ref$coordinates","coordinates","geometryInfo","lngLats","_v$position","_v$_polyline","position","_value","_v$position2","handlePositionData","feature","_polyline","_positions","_v$_polyline2","type","_ref2","_ref2$type","getLngLats","getProperties","cartographic","Cartographic","fromCartesian","lng","Math","toDegrees","longitude","lat","latitude","lineStyle","style","stroke","color","opacity","width","pointStyle","size","pixelOffset","Cartesian2","ellipse","semiMinorAxis","semiMajorAxis","material","CircleRippleMaterialProperty","Color","speed","count","gradient","HighlightLayer","options","_this","_feature$data","_feature$_polyline","includes","layer","loadData","fitView","entity","height","_options$isFit","isFit","FeatureLayer","addLayer","clearFeatures","entities","removeAll","destroy","dataSources","remove","exports"],"sources":["highlight-layer/HighlightLayer.js"],"sourcesContent":["/**\n * 图层高亮操作\n */\nimport FeatureLayer from '../feature-layer/FeatureLayer';\nimport { Cartesian2, Cartographic, Math, ImageryLayerFeatureInfo, Color } from 'cesium';\nimport CircleRippleMaterialProperty from '../map/material/CircleRippleMaterialProperty';\n\n/**\n * @description: wms图层点击获取的数据处理\n * @param {*} data\n * @return {*}\n */\nconst handleData = (data, map) => {\n let _data = [];\n let datas = Array.isArray(data) ? data : [data];\n datas.map(v => {\n // 影像图层的数据\n if (v instanceof ImageryLayerFeatureInfo) {\n let item = v.data || {};\n let { geometry } = item;\n let { coordinates = [] } = geometry || {};\n _data.push({ ...item, geometryInfo: { ...geometry, lngLats: coordinates } });\n } else {\n if (v?.position?._value) {\n handlePositionData({ data: _data, position: v?.position?._value, map, feature: v });\n } else if (v?._polyline?._positions?._value) {\n handlePositionData({\n data: _data,\n position: v?._polyline?._positions?._value,\n map,\n feature: v,\n type: 'Polyline',\n });\n }\n }\n });\n return _data;\n};\n\nconst handlePositionData = ({ data, position, map, feature, type = 'point' }) => {\n let lngLats = [];\n if (Array.isArray(position)) {\n position.map(v => {\n lngLats.push(getLngLats(v));\n });\n } else {\n // 点\n lngLats = getLngLats(position);\n }\n\n data.push({\n ...map.getProperties(feature),\n geometryInfo: {\n type: type,\n lngLats,\n },\n });\n};\n\nconst getLngLats = position => {\n let lngLats = [];\n\n let cartographic = Cartographic.fromCartesian(position);\n let lng = Math.toDegrees(cartographic?.longitude);\n lngLats.push(lng);\n let lat = Math.toDegrees(cartographic?.latitude);\n lngLats.push(lat);\n\n return lngLats;\n};\n\nconst lineStyle = {\n type: 'Polyline',\n style: {\n stroke: {\n color: '#ff4d4f',\n opacity: 1,\n width: 2,\n },\n }\n};\n\nconst pointStyle = {\n type: 'Marker',\n style: {\n type: 'PointIcon',\n color: '#ff4d4f',\n size: 18,\n pixelOffset: new Cartesian2(0, 10),\n ellipse: {\n semiMinorAxis: 100.0,\n semiMajorAxis: 100.0,\n material: new CircleRippleMaterialProperty({\n color: new Color(1, 0, 0, 0.7),\n speed: 12.0,\n count: 3,\n gradient: 0.2,\n }),\n },\n }\n};\n\nexport default class HighlightLayer {\n constructor(options) {\n const { isFit = true } = options;\n\n this.map = options.map;\n this.layer = new FeatureLayer({\n style: lineStyle,\n });\n this.map.addLayer(this.layer);\n }\n\n // 高亮图层增加feature\n addHighlightFeature = feature => {\n if (feature) {\n let type = feature?.data?.geometry?.type;\n if (['LineString', 'MultiLineString'].includes(type)) {\n this.layer.style = lineStyle;\n } else if (['Point'].includes(type)) {\n this.layer.style = pointStyle;\n } else if (feature?._polyline?._positions?._value) {\n this.layer.style = lineStyle;\n } else {\n this.layer.style = pointStyle;\n }\n let data = handleData(feature, this.map, this.layer);\n this.layer.data = data;\n this.layer.loadData(data);\n this.map.fitView({ entity: this.layer, height: 1000 });\n }\n };\n\n clearFeatures() {\n this.layer.entities.removeAll();\n }\n\n destroy() {\n this.map.dataSources.remove(this.layer);\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"HighlightLayer.js","names":["_FeatureLayer","_interopRequireDefault","require","_cesium","_CircleRippleMaterialProperty","obj","__esModule","_typeof","o","Symbol","iterator","constructor","prototype","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","ownKeys","e","r","t","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","call","Number","handleData","data","map","_data","datas","Array","isArray","v","ImageryLayerFeatureInfo","item","geometry","_ref","_ref$coordinates","coordinates","geometryInfo","lngLats","_v$position","_v$_polyline","position","_value","_v$position2","handlePositionData","feature","_polyline","_positions","_v$_polyline2","type","_ref2","_ref2$type","getLngLats","getProperties","cartographic","Cartographic","fromCartesian","lng","Math","toDegrees","longitude","lat","latitude","lineStyle","style","stroke","color","opacity","width","pointStyle","size","pixelOffset","Cartesian2","ellipse","semiMinorAxis","semiMajorAxis","material","CircleRippleMaterialProperty","Color","speed","count","gradient","HighlightLayer","options","_this","_feature$data","_feature$_polyline","includes","layer","loadData","fitView","entity","height","_options$isFit","isFit","FeatureLayer","addLayer","clearFeatures","entities","removeAll","destroy","dataSources","remove","exports"],"sources":["highlight-layer/HighlightLayer.js"],"sourcesContent":["/**\n * 图层高亮操作\n */\nimport FeatureLayer from '../feature-layer/FeatureLayer';\nimport { Cartesian2, Cartographic, Math, ImageryLayerFeatureInfo, Color } from 'cesium';\nimport CircleRippleMaterialProperty from '../map/material/CircleRippleMaterialProperty';\n\n/**\n * @description: wms图层点击获取的数据处理\n * @param {*} data\n * @return {*}\n */\nconst handleData = (data, map) => {\n let _data = [];\n let datas = Array.isArray(data) ? data : [data];\n datas.map(v => {\n // 影像图层的数据\n if (v instanceof ImageryLayerFeatureInfo) {\n let item = v.data || {};\n let { geometry } = item;\n let { coordinates = [] } = geometry || {};\n _data.push({ ...item, geometryInfo: { ...geometry, lngLats: coordinates } });\n } else {\n if (v?.position?._value) {\n handlePositionData({ data: _data, position: v?.position?._value, map, feature: v });\n } else if (v?._polyline?._positions?._value) {\n handlePositionData({\n data: _data,\n position: v?._polyline?._positions?._value,\n map,\n feature: v,\n type: 'Polyline',\n });\n }\n }\n });\n return _data;\n};\n\nconst handlePositionData = ({ data, position, map, feature, type = 'point' }) => {\n let lngLats = [];\n if (Array.isArray(position)) {\n position.map(v => {\n lngLats.push(getLngLats(v));\n });\n } else {\n // 点\n lngLats = getLngLats(position);\n }\n\n data.push({\n ...map.getProperties(feature),\n geometryInfo: {\n type: type,\n lngLats,\n },\n });\n};\n\nconst getLngLats = position => {\n let lngLats = [];\n\n let cartographic = Cartographic.fromCartesian(position);\n let lng = Math.toDegrees(cartographic?.longitude);\n lngLats.push(lng);\n let lat = Math.toDegrees(cartographic?.latitude);\n lngLats.push(lat);\n\n return lngLats;\n};\n\nconst lineStyle = {\n type: 'Polyline',\n style: {\n stroke: {\n color: '#ff4d4f',\n opacity: 1,\n width: 2,\n },\n },\n};\n\nconst pointStyle = {\n style: {\n type: 'PointIcon',\n color: '#ff4d4f',\n size: 18,\n pixelOffset: new Cartesian2(0, 10),\n ellipse: {\n semiMinorAxis: 50.0,\n semiMajorAxis: 50.0,\n material: new CircleRippleMaterialProperty({\n color: new Color(1, 0, 0, 0.7),\n speed: 12.0,\n count: 3,\n gradient: 0.2,\n }),\n },\n },\n};\n\nexport default class HighlightLayer {\n constructor(options) {\n const { isFit = true } = options;\n\n this.map = options.map;\n this.layer = new FeatureLayer({\n style: lineStyle,\n });\n this.map.addLayer(this.layer);\n }\n\n // 高亮图层增加feature\n addHighlightFeature = feature => {\n if (feature) {\n let type = feature?.data?.geometry?.type;\n if (['LineString', 'MultiLineString'].includes(type)) {\n this.layer.style = lineStyle;\n } else if (['Point'].includes(type)) {\n this.layer.style = pointStyle;\n } else if (feature?._polyline?._positions?._value) {\n this.layer.style = lineStyle;\n } else {\n this.layer.style = pointStyle;\n }\n let data = handleData(feature, this.map, this.layer);\n this.layer.data = data;\n this.layer.loadData(data);\n this.map.fitView({ entity: this.layer, height: 1000 });\n }\n };\n\n clearFeatures() {\n this.layer.entities.removeAll();\n }\n\n destroy() {\n this.map.dataSources.remove(this.layer);\n }\n}\n"],"mappings":"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"}
@@ -4,7 +4,7 @@ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" ==
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports["default"] = void 0;
7
+ exports.getCqlFilterByFilters = exports["default"] = void 0;
8
8
  var _cesium = require("cesium");
9
9
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
10
10
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -25,6 +25,18 @@ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) ===
25
25
  function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
26
26
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
27
27
  function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
28
+ var getCqlFilterByFilters = function getCqlFilterByFilters(filters) {
29
+ var cql_filter = "";
30
+ if (filters !== null && filters !== void 0 && filters.length) {
31
+ filters.map(function (v) {
32
+ if (!v.hasOwnProperty('show') || v.show) {
33
+ cql_filter = cql_filter ? "".concat(cql_filter, " or ").concat(v.filter) : v.filter;
34
+ }
35
+ });
36
+ }
37
+ return cql_filter;
38
+ };
39
+ exports.getCqlFilterByFilters = getCqlFilterByFilters;
28
40
  var ImageLayer = /*#__PURE__*/function (_ImageryLayer) {
29
41
  _inherits(ImageLayer, _ImageryLayer);
30
42
  var _super = _createSuper(ImageLayer);
@@ -44,23 +56,45 @@ var ImageLayer = /*#__PURE__*/function (_ImageryLayer) {
44
56
  autoRefresh = options.autoRefresh,
45
57
  style = options.style,
46
58
  codeField = options.codeField,
47
- _options$visible = options.visible,
48
- visible = _options$visible === void 0 ? true : _options$visible,
59
+ _options$show = options.show,
60
+ show = _options$show === void 0 ? true : _options$show,
49
61
  legend = options.legend,
50
- map = options.map;
62
+ map = options.map,
63
+ filters = options.filters,
64
+ zIndex = options.zIndex,
65
+ groupLayer = options.groupLayer;
66
+ var _params = _objectSpread({}, params);
67
+ if (filters !== null && filters !== void 0 && filters.length) {
68
+ if (!show) {
69
+ filters.map(function (f) {
70
+ f.show = false;
71
+ });
72
+ } else {
73
+ filters.map(function (f) {
74
+ var _f$show;
75
+ f.show = (_f$show = f.show) !== null && _f$show !== void 0 ? _f$show : true;
76
+ });
77
+ }
78
+ var _cql_filter = getCqlFilterByFilters(filters);
79
+ if (_cql_filter) {
80
+ _params.cql_filter = _params.cql_filter ? "".concat(_params.cql_filter, " or ").concat(_cql_filter) : _cql_filter;
81
+ } else {
82
+ show = false;
83
+ }
84
+ }
51
85
  var imageryProvider = new _cesium.WebMapServiceImageryProvider(_objectSpread({
52
86
  url: url,
53
87
  enablePickFeatures: true,
54
- getFeatureInfoParameters: params,
88
+ getFeatureInfoParameters: _params,
55
89
  parameters: _objectSpread({
56
90
  service: 'WMS',
57
91
  format: 'image/png',
58
92
  transparent: true
59
- }, params),
60
- layers: params.typeName || params.QUERY_LAYERS
93
+ }, _params),
94
+ layers: _params.typeName || _params.QUERY_LAYERS
61
95
  }, geoserverParams));
62
96
  _this = _super.call(this, imageryProvider, {
63
- show: visible
97
+ show: show
64
98
  });
65
99
 
66
100
  // 接口地址
@@ -93,6 +127,18 @@ var ImageLayer = /*#__PURE__*/function (_ImageryLayer) {
93
127
 
94
128
  // 地图
95
129
  _this.map = map;
130
+
131
+ // 图层组
132
+ _this.groupLayer = groupLayer;
133
+
134
+ // 过滤
135
+ _this.filters = filters;
136
+
137
+ // 查询条件
138
+ _this.params = params;
139
+
140
+ // 图层层级
141
+ _this.zIndex = zIndex;
96
142
  return _this;
97
143
  }
98
144
 
@@ -106,6 +152,13 @@ var ImageLayer = /*#__PURE__*/function (_ImageryLayer) {
106
152
  this.setVisible(value);
107
153
  }
108
154
 
155
+ // 获取地图
156
+ }, {
157
+ key: "getMap",
158
+ value: function getMap() {
159
+ return this.map;
160
+ }
161
+
109
162
  // 设置图层显示隐藏
110
163
  }, {
111
164
  key: "setVisible",
@@ -117,10 +170,62 @@ var ImageLayer = /*#__PURE__*/function (_ImageryLayer) {
117
170
  map.layers.emit('visible', this, visible);
118
171
  }
119
172
  }
173
+
174
+ // 设置过滤条件
120
175
  }, {
121
- key: "getMap",
122
- value: function getMap() {
123
- return this.map;
176
+ key: "setFilters",
177
+ value: function setFilters(filters) {
178
+ if (filters !== null && filters !== void 0 && filters.length) {
179
+ var params = _objectSpread({}, this.params);
180
+ filters.map(function (v) {
181
+ if (!v.hasOwnProperty('show') || v.show) {
182
+ params.cql_filter = params.cql_filter ? "".concat(params.cql_filter, " or ").concat(v.filter) : v.filter;
183
+ }
184
+ });
185
+ this.filters = filters;
186
+ this.setParams(params);
187
+ this.setVisibleByFilters();
188
+ }
189
+ }
190
+
191
+ // 根据过滤条件组显示图层
192
+ }, {
193
+ key: "setVisibleByFilters",
194
+ value: function setVisibleByFilters() {
195
+ var filters = this.filters;
196
+ if (filters !== null && filters !== void 0 && filters.length) {
197
+ var visible = false;
198
+ filters.map(function (v) {
199
+ if (!v.hasOwnProperty('show') || v.show) {
200
+ visible = true;
201
+ }
202
+ });
203
+ this.setVisible(visible);
204
+ }
205
+ }
206
+
207
+ // 设置查询条件
208
+ }, {
209
+ key: "setParams",
210
+ value: function setParams(params) {
211
+ // 下面的方法无效,暂时没有好的方式,只能通过替换图层达到效果
212
+ // this.imageryProvider = new WebMapServiceImageryProvider({
213
+ // url: this.url,
214
+ // enablePickFeatures: true,
215
+ // getFeatureInfoParameters: params,
216
+ // parameters: { service: 'WMS', format: 'image/png', transparent: true, ...params },
217
+ // layers: params.typeName || params.QUERY_LAYERS,
218
+ // })
219
+ }
220
+ }, {
221
+ key: "getGroupIndex",
222
+ value: function getGroupIndex() {
223
+ return this.groupLayer.indexOf(this);
224
+ }
225
+ }, {
226
+ key: "getMapIndex",
227
+ value: function getMapIndex() {
228
+ return this.map.scene.imageryLayers.indexOf(this);
124
229
  }
125
230
  }]);
126
231
  return ImageLayer;
@@ -1 +1 @@
1
- {"version":3,"file":"ImageLayer.js","names":["_cesium","require","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","descriptor","configurable","writable","_toPropertyKey","key","_createClass","protoProps","staticProps","prototype","set","property","value","receiver","Reflect","base","_superPropBase","desc","call","_set","isStrict","s","obj","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","Number","_get","get","bind","object","hasOwnProperty","_getPrototypeOf","_inherits","subClass","superClass","create","constructor","_setPrototypeOf","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","result","NewTarget","construct","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","getPrototypeOf","ImageLayer","_ImageryLayer","_super","options","_this","url","_options$params","params","_options$geoserverPar","geoserverParams","modalType","name","labelField","template","autoRefresh","style","codeField","_options$visible","visible","legend","map","imageryProvider","WebMapServiceImageryProvider","enablePickFeatures","getFeatureInfoParameters","parameters","service","format","transparent","layers","typeName","QUERY_LAYERS","show","setVisible","getMap","emit","ImageryLayer","_default","exports"],"sources":["image-layer/ImageLayer.js"],"sourcesContent":["import {ImageryLayer, WebMapServiceImageryProvider} from 'cesium';\n\nclass ImageLayer extends ImageryLayer {\n constructor(options) {\n const {\n url,\n params = {},\n geoserverParams = {},\n key,\n modalType,\n name,\n labelField,\n template,\n autoRefresh,\n style,\n codeField,\n visible = true,\n legend,\n map\n } = options;\n\n const imageryProvider = new WebMapServiceImageryProvider({\n url: url,\n enablePickFeatures: true,\n getFeatureInfoParameters: params,\n parameters: { service: 'WMS', format: 'image/png', transparent: true, ...params },\n layers: params.typeName || params.QUERY_LAYERS,\n ...geoserverParams,\n });\n\n super(imageryProvider, {show: visible});\n\n // 接口地址\n this.url = url;\n\n this.style = style;\n\n // 图层标识\n this.key = key;\n\n // 弹窗类型\n this.modalType = modalType;\n\n // 图层名称\n this.name = name;\n\n // 设施类型\n this.codeField = codeField;\n\n // 图例\n this.legend = legend;\n\n // 标签字段\n this.labelField = labelField;\n\n // 自动刷新标识\n this.autoRefresh = autoRefresh;\n\n // 模版内容\n this.template = template;\n\n // 地图\n this.map = map;\n }\n\n // 重写父类的属性访问器\n get show() {\n return super.show;\n }\n\n set show(value) {\n this.setVisible(value);\n }\n\n // 设置图层显示隐藏\n setVisible(visible) {\n super.show = visible; // 将属性传递给父类\n\n const map = this.getMap && this.getMap();\n if (map) {\n map.layers.emit('visible', this, visible)\n }\n }\n\n getMap() {\n return this.map;\n }\n}\n\nexport default ImageLayer;\n"],"mappings":"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"}
1
+ {"version":3,"file":"ImageLayer.js","names":["_cesium","require","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","descriptor","configurable","writable","_toPropertyKey","key","_createClass","protoProps","staticProps","prototype","set","property","value","receiver","Reflect","base","_superPropBase","desc","call","_set","isStrict","s","obj","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","Number","_get","get","bind","object","hasOwnProperty","_getPrototypeOf","_inherits","subClass","superClass","create","constructor","_setPrototypeOf","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","result","NewTarget","construct","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","getPrototypeOf","getCqlFilterByFilters","filters","cql_filter","map","v","show","concat","exports","ImageLayer","_ImageryLayer","_super","options","_this","url","_options$params","params","_options$geoserverPar","geoserverParams","modalType","name","labelField","template","autoRefresh","style","codeField","_options$show","legend","zIndex","groupLayer","_params","f","_f$show","_cql_filter","imageryProvider","WebMapServiceImageryProvider","enablePickFeatures","getFeatureInfoParameters","parameters","service","format","transparent","layers","typeName","QUERY_LAYERS","setVisible","getMap","visible","emit","setFilters","setParams","setVisibleByFilters","getGroupIndex","indexOf","getMapIndex","scene","imageryLayers","ImageryLayer","_default"],"sources":["image-layer/ImageLayer.js"],"sourcesContent":["import {ImageryLayer, WebMapServiceImageryProvider} from 'cesium';\n\nexport const getCqlFilterByFilters = (filters) => {\n let cql_filter = \"\";\n if (filters?.length) {\n filters.map(v => {\n if (!v.hasOwnProperty('show') || v.show) {\n cql_filter = cql_filter ? `${cql_filter} or ${v.filter}` : v.filter;\n }\n })\n }\n\n return cql_filter\n}\nclass ImageLayer extends ImageryLayer {\n constructor(options) {\n let {\n url,\n params = {},\n geoserverParams = {},\n key,\n modalType,\n name,\n labelField,\n template,\n autoRefresh,\n style,\n codeField,\n show = true,\n legend,\n map,\n filters,\n zIndex,\n groupLayer\n } = options;\n\n const _params = {...params};\n if (filters?.length) {\n if (!show) {\n filters.map(f => {\n f.show = false;\n })\n } else {\n filters.map(f => {\n f.show = f.show ?? true;\n })\n }\n\n let _cql_filter = getCqlFilterByFilters(filters);\n if (_cql_filter) {\n _params.cql_filter = _params.cql_filter ? `${_params.cql_filter} or ${_cql_filter}` : _cql_filter;\n } else {\n show = false;\n }\n }\n\n const imageryProvider = new WebMapServiceImageryProvider({\n url: url,\n enablePickFeatures: true,\n getFeatureInfoParameters: _params,\n parameters: {\n service: 'WMS',\n format: 'image/png',\n transparent: true,\n ..._params\n },\n layers: _params.typeName || _params.QUERY_LAYERS,\n ...geoserverParams,\n });\n\n super(imageryProvider, {show});\n\n // 接口地址\n this.url = url;\n\n this.style = style;\n\n // 图层标识\n this.key = key;\n\n // 弹窗类型\n this.modalType = modalType;\n\n // 图层名称\n this.name = name;\n\n // 设施类型\n this.codeField = codeField;\n\n // 图例\n this.legend = legend;\n\n // 标签字段\n this.labelField = labelField;\n\n // 自动刷新标识\n this.autoRefresh = autoRefresh;\n\n // 模版内容\n this.template = template;\n\n // 地图\n this.map = map;\n\n // 图层组\n this.groupLayer = groupLayer;\n\n // 过滤\n this.filters = filters;\n\n // 查询条件\n this.params = params;\n\n // 图层层级\n this.zIndex = zIndex;\n }\n\n // 重写父类的属性访问器\n get show() {\n return super.show;\n }\n\n set show(value) {\n this.setVisible(value);\n }\n\n // 获取地图\n getMap() {\n return this.map;\n }\n\n // 设置图层显示隐藏\n setVisible(visible) {\n super.show = visible; // 将属性传递给父类\n\n const map = this.getMap && this.getMap();\n if (map) {\n map.layers.emit('visible', this, visible)\n }\n }\n\n // 设置过滤条件\n setFilters(filters) {\n if (filters?.length) {\n const params = {...this.params};\n filters.map(v => {\n if (!v.hasOwnProperty('show') || v.show) {\n params.cql_filter = params.cql_filter ? `${params.cql_filter} or ${v.filter}` : v.filter;\n }\n })\n\n this.filters = filters;\n\n\n this.setParams(params);\n this.setVisibleByFilters();\n }\n }\n\n // 根据过滤条件组显示图层\n setVisibleByFilters() {\n const filters = this.filters;\n if (filters?.length) {\n let visible = false;\n\n filters.map(v => {\n if (!v.hasOwnProperty('show') || v.show) {\n visible = true;\n }\n })\n\n this.setVisible(visible);\n }\n }\n\n // 设置查询条件\n setParams(params) {\n // 下面的方法无效,暂时没有好的方式,只能通过替换图层达到效果\n // this.imageryProvider = new WebMapServiceImageryProvider({\n // url: this.url,\n // enablePickFeatures: true,\n // getFeatureInfoParameters: params,\n // parameters: { service: 'WMS', format: 'image/png', transparent: true, ...params },\n // layers: params.typeName || params.QUERY_LAYERS,\n // })\n }\n\n getGroupIndex() {\n return this.groupLayer.indexOf(this)\n }\n\n getMapIndex() {\n return this.map.scene.imageryLayers.indexOf(this)\n }\n\n}\n\nexport default ImageLayer;\n"],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
@@ -13,6 +12,12 @@ var _useProps2 = _interopRequireDefault(require("../_util/useProps"));
13
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
14
13
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
14
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
15
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
16
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
17
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
18
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
19
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
20
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
16
21
  function _default(props) {
17
22
  var url = props.url,
18
23
  params = props.params,
@@ -27,14 +32,28 @@ function _default(props) {
27
32
  template = props.template,
28
33
  modalType = props.modalType,
29
34
  codeField = props.codeField,
30
- _props$visible = props.visible,
31
- visible = _props$visible === void 0 ? true : _props$visible,
32
- groupLayer = props.groupLayer;
35
+ _props$show = props.show,
36
+ show = _props$show === void 0 ? true : _props$show,
37
+ groupLayer = props.groupLayer,
38
+ filters = props.filters;
33
39
  var layerRef = (0, _react.useRef)();
34
40
  var _useProps = (0, _useProps2["default"])(),
35
41
  map = _useProps.map;
36
42
  (0, _react.useEffect)(function () {
37
- var layer = new _ImageLayer["default"]({
43
+ replaceLayer(props);
44
+ return function () {
45
+ removeLayer();
46
+ };
47
+ }, []);
48
+ var removeLayer = function removeLayer() {
49
+ if (groupLayer) {
50
+ layerRef.current && groupLayer.removeLayer(layerRef.current);
51
+ } else {
52
+ layerRef.current && map.removeLayer(layerRef.current);
53
+ }
54
+ };
55
+ var replaceLayer = function replaceLayer(_props) {
56
+ var layer = new _ImageLayer["default"](_objectSpread({
38
57
  url: url,
39
58
  params: params,
40
59
  geoserverParams: geoserverParams,
@@ -47,30 +66,53 @@ function _default(props) {
47
66
  template: template,
48
67
  modalType: modalType,
49
68
  codeField: codeField,
50
- visible: visible,
69
+ show: show,
51
70
  map: map,
52
- groupLayer: groupLayer
53
- });
71
+ groupLayer: groupLayer,
72
+ filters: filters
73
+ }, _props));
74
+ layer.setFilters = function (_filters) {
75
+ var _show = false;
76
+ _filters.map(function (f) {
77
+ if (f.show) {
78
+ _show = true;
79
+ }
80
+ });
81
+ replaceLayer({
82
+ filters: _filters,
83
+ show: _show
84
+ });
85
+ };
54
86
 
55
87
  // 注册事件
56
88
  (0, _events.registerEventLayer)(layer, props);
57
89
  if (groupLayer) {
58
- groupLayer.addLayer(layer);
90
+ var groupIndex, mapIndex;
91
+ if (layerRef.current) {
92
+ groupIndex = layerRef.current.getGroupIndex();
93
+ mapIndex = layerRef.current.getMapIndex();
94
+ }
95
+ groupLayer.addLayer(layer, groupIndex, mapIndex);
59
96
  } else {
60
- map.addLayer(layer);
97
+ var _mapIndex;
98
+ if (layerRef.current) {
99
+ _mapIndex = layerRef.current.getMapIndex();
100
+ }
101
+ map.addLayer(layer, _mapIndex);
102
+ }
103
+
104
+ // 删除原来的图层
105
+ if (layerRef.current) {
106
+ removeLayer();
61
107
  }
62
108
  layerRef.current = layer;
63
- return function () {
64
- if (groupLayer) {
65
- groupLayer.removeLayer(layer);
66
- } else {
67
- map.removeLayer(layer);
68
- }
69
- };
70
- }, []);
109
+ };
110
+ (0, _ahooks.useUpdateEffect)(function () {
111
+ layerRef.current.show = show;
112
+ }, [show]);
71
113
  (0, _ahooks.useUpdateEffect)(function () {
72
- layerRef.current.show = visible;
73
- }, [visible]);
114
+ layerRef.current.setFilters(filters);
115
+ }, [filters]);
74
116
  return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null);
75
117
  }
76
118
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_ImageLayer","_interopRequireDefault","_ahooks","_events","_useProps2","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_default","props","url","params","geoserverParams","style","zIndex","id","_key","name","labelField","legend","template","modalType","codeField","_props$visible","visible","groupLayer","layerRef","useRef","_useProps","useProps","map","useEffect","layer","ImageLayer","registerEventLayer","addLayer","current","removeLayer","useUpdateEffect","show","createElement","Fragment"],"sources":["image-layer/index.js"],"sourcesContent":["import React, { useRef, useEffect } from 'react';\nimport ImageLayer from './ImageLayer';\nimport { useUpdateEffect } from 'ahooks';\nimport { registerEventLayer } from '../events';\nimport useProps from \"../_util/useProps\";\n\nexport default function(props) {\n const {\n url,\n params,\n geoserverParams,\n style,\n zIndex,\n id: key,\n _key,\n name,\n labelField,\n legend,\n template,\n modalType,\n codeField,\n visible = true,\n groupLayer\n } = props;\n const layerRef = useRef();\n const { map } = useProps();\n\n useEffect(() => {\n let layer = new ImageLayer({\n url,\n params,\n geoserverParams,\n style,\n zIndex,\n key: key || _key,\n name,\n labelField,\n legend,\n template,\n modalType,\n codeField,\n visible,\n map,\n groupLayer\n });\n\n // 注册事件\n registerEventLayer(layer, props);\n\n if (groupLayer) {\n groupLayer.addLayer(layer);\n } else {\n map.addLayer(layer);\n }\n\n layerRef.current = layer;\n return () => {\n if (groupLayer) {\n groupLayer.removeLayer(layer);\n } else {\n map.removeLayer(layer);\n }\n };\n }, []);\n\n useUpdateEffect(() => {\n layerRef.current.show = visible;\n }, [visible])\n\n return <></>;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_ImageLayer","_interopRequireDefault","_ahooks","_events","_useProps2","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","o","Symbol","iterator","constructor","ownKeys","e","r","t","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","TypeError","Number","_default","props","url","params","geoserverParams","style","zIndex","id","_key","name","labelField","legend","template","modalType","codeField","_props$show","show","groupLayer","filters","layerRef","useRef","_useProps","useProps","map","useEffect","replaceLayer","removeLayer","current","_props","layer","ImageLayer","setFilters","_filters","_show","f","registerEventLayer","groupIndex","mapIndex","getGroupIndex","getMapIndex","addLayer","useUpdateEffect","createElement","Fragment"],"sources":["image-layer/index.js"],"sourcesContent":["import React, { useRef, useEffect } from 'react';\nimport ImageLayer from './ImageLayer';\nimport { useUpdateEffect } from 'ahooks';\nimport { registerEventLayer } from '../events';\nimport useProps from \"../_util/useProps\";\n\nexport default function(props) {\n const {\n url,\n params,\n geoserverParams,\n style,\n zIndex,\n id: key,\n _key,\n name,\n labelField,\n legend,\n template,\n modalType,\n codeField,\n show = true,\n groupLayer,\n filters\n } = props;\n const layerRef = useRef();\n const { map } = useProps();\n\n useEffect(() => {\n replaceLayer(props)\n return () => {\n removeLayer();\n };\n }, []);\n\n const removeLayer = () => {\n if (groupLayer) {\n layerRef.current && groupLayer.removeLayer(layerRef.current);\n } else {\n layerRef.current && map.removeLayer(layerRef.current);\n }\n }\n\n const replaceLayer = (_props) => {\n let layer = new ImageLayer({\n url,\n params,\n geoserverParams,\n style,\n zIndex,\n key: key || _key,\n name,\n labelField,\n legend,\n template,\n modalType,\n codeField,\n show,\n map,\n groupLayer,\n filters,\n ..._props\n });\n\n layer.setFilters = (_filters) => {\n let _show = false;\n _filters.map(f => {\n if (f.show) {\n _show = true\n }\n })\n replaceLayer({filters: _filters, show: _show});\n }\n\n // 注册事件\n registerEventLayer(layer, props);\n\n if (groupLayer) {\n let groupIndex, mapIndex;\n if (layerRef.current) {\n groupIndex = layerRef.current.getGroupIndex();\n mapIndex = layerRef.current.getMapIndex();\n }\n\n groupLayer.addLayer(layer, groupIndex, mapIndex);\n } else {\n let mapIndex;\n if (layerRef.current) {\n mapIndex = layerRef.current.getMapIndex();\n }\n\n map.addLayer(layer, mapIndex);\n }\n\n // 删除原来的图层\n if (layerRef.current) {\n removeLayer();\n }\n\n layerRef.current = layer;\n }\n\n useUpdateEffect(() => {\n layerRef.current.show = show;\n }, [show]);\n\n useUpdateEffect(() => {\n layerRef.current.setFilters(filters);\n }, [filters]);\n\n return <></>;\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AACA,IAAAK,UAAA,GAAAH,sBAAA,CAAAF,OAAA;AAAyC,SAAAE,uBAAAI,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA;AAAA,SAAAE,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAV,wBAAAO,GAAA,EAAAG,WAAA,SAAAA,WAAA,IAAAH,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAO,OAAA,CAAAP,GAAA,yBAAAA,GAAA,uCAAAA,GAAA,UAAAQ,KAAA,GAAAN,wBAAA,CAAAC,WAAA,OAAAK,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAT,GAAA,YAAAQ,KAAA,CAAAE,GAAA,CAAAV,GAAA,SAAAW,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAhB,GAAA,QAAAgB,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAnB,GAAA,EAAAgB,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAf,GAAA,EAAAgB,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAhB,GAAA,CAAAgB,GAAA,SAAAL,MAAA,cAAAX,GAAA,MAAAQ,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAArB,GAAA,EAAAW,MAAA,YAAAA,MAAA;AAAA,SAAAJ,QAAAe,CAAA,sCAAAf,OAAA,wBAAAgB,MAAA,uBAAAA,MAAA,CAAAC,QAAA,aAAAF,CAAA,kBAAAA,CAAA,gBAAAA,CAAA,WAAAA,CAAA,yBAAAC,MAAA,IAAAD,CAAA,CAAAG,WAAA,KAAAF,MAAA,IAAAD,CAAA,KAAAC,MAAA,CAAAN,SAAA,qBAAAK,CAAA,KAAAf,OAAA,CAAAe,CAAA;AAAA,SAAAI,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAhB,MAAA,CAAAiB,IAAA,CAAAH,CAAA,OAAAd,MAAA,CAAAkB,qBAAA,QAAAT,CAAA,GAAAT,MAAA,CAAAkB,qBAAA,CAAAJ,CAAA,GAAAC,CAAA,KAAAN,CAAA,GAAAA,CAAA,CAAAU,MAAA,WAAAJ,CAAA,WAAAf,MAAA,CAAAE,wBAAA,CAAAY,CAAA,EAAAC,CAAA,EAAAK,UAAA,OAAAJ,CAAA,CAAAK,IAAA,CAAAC,KAAA,CAAAN,CAAA,EAAAP,CAAA,YAAAO,CAAA;AAAA,SAAAO,cAAAT,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAS,SAAA,CAAAC,MAAA,EAAAV,CAAA,UAAAC,CAAA,WAAAQ,SAAA,CAAAT,CAAA,IAAAS,SAAA,CAAAT,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAb,MAAA,CAAAgB,CAAA,OAAAU,OAAA,WAAAX,CAAA,IAAAY,eAAA,CAAAb,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAf,MAAA,CAAA4B,yBAAA,GAAA5B,MAAA,CAAA6B,gBAAA,CAAAf,CAAA,EAAAd,MAAA,CAAA4B,yBAAA,CAAAZ,CAAA,KAAAH,OAAA,CAAAb,MAAA,CAAAgB,CAAA,GAAAU,OAAA,WAAAX,CAAA,IAAAf,MAAA,CAAAC,cAAA,CAAAa,CAAA,EAAAC,CAAA,EAAAf,MAAA,CAAAE,wBAAA,CAAAc,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAAA,SAAAa,gBAAAxC,GAAA,EAAAgB,GAAA,EAAA2B,KAAA,IAAA3B,GAAA,GAAA4B,cAAA,CAAA5B,GAAA,OAAAA,GAAA,IAAAhB,GAAA,IAAAa,MAAA,CAAAC,cAAA,CAAAd,GAAA,EAAAgB,GAAA,IAAA2B,KAAA,EAAAA,KAAA,EAAAV,UAAA,QAAAY,YAAA,QAAAC,QAAA,oBAAA9C,GAAA,CAAAgB,GAAA,IAAA2B,KAAA,WAAA3C,GAAA;AAAA,SAAA4C,eAAAG,GAAA,QAAA/B,GAAA,GAAAgC,YAAA,CAAAD,GAAA,oBAAAxC,OAAA,CAAAS,GAAA,iBAAAA,GAAA,GAAAiC,MAAA,CAAAjC,GAAA;AAAA,SAAAgC,aAAAE,KAAA,EAAAC,IAAA,QAAA5C,OAAA,CAAA2C,KAAA,kBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAA3B,MAAA,CAAA8B,WAAA,OAAAD,IAAA,KAAAE,SAAA,QAAAC,GAAA,GAAAH,IAAA,CAAAjC,IAAA,CAAA+B,KAAA,EAAAC,IAAA,oBAAA5C,OAAA,CAAAgD,GAAA,uBAAAA,GAAA,YAAAC,SAAA,4DAAAL,IAAA,gBAAAF,MAAA,GAAAQ,MAAA,EAAAP,KAAA;AAE1B,SAAAQ,SAASC,KAAK,EAAE;EAC3B,IACIC,GAAG,GAgBHD,KAAK,CAhBLC,GAAG;IACHC,MAAM,GAeNF,KAAK,CAfLE,MAAM;IACNC,eAAe,GAcfH,KAAK,CAdLG,eAAe;IACfC,KAAK,GAaLJ,KAAK,CAbLI,KAAK;IACLC,MAAM,GAYNL,KAAK,CAZLK,MAAM;IACFhD,GAAG,GAWP2C,KAAK,CAXLM,EAAE;IACFC,IAAI,GAUJP,KAAK,CAVLO,IAAI;IACJC,IAAI,GASJR,KAAK,CATLQ,IAAI;IACJC,UAAU,GAQVT,KAAK,CARLS,UAAU;IACVC,MAAM,GAONV,KAAK,CAPLU,MAAM;IACNC,QAAQ,GAMRX,KAAK,CANLW,QAAQ;IACRC,SAAS,GAKTZ,KAAK,CALLY,SAAS;IACTC,SAAS,GAITb,KAAK,CAJLa,SAAS;IAAAC,WAAA,GAITd,KAAK,CAHLe,IAAI;IAAJA,IAAI,GAAAD,WAAA,cAAG,IAAI,GAAAA,WAAA;IACXE,UAAU,GAEVhB,KAAK,CAFLgB,UAAU;IACVC,OAAO,GACPjB,KAAK,CADLiB,OAAO;EAEX,IAAMC,QAAQ,GAAG,IAAAC,aAAM,EAAC,CAAC;EACzB,IAAAC,SAAA,GAAgB,IAAAC,qBAAQ,EAAC,CAAC;IAAlBC,GAAG,GAAAF,SAAA,CAAHE,GAAG;EAEX,IAAAC,gBAAS,EAAC,YAAM;IACZC,YAAY,CAACxB,KAAK,CAAC;IACnB,OAAO,YAAM;MACTyB,WAAW,CAAC,CAAC;IACjB,CAAC;EACL,CAAC,EAAE,EAAE,CAAC;EAEN,IAAMA,WAAW,GAAG,SAAdA,WAAWA,CAAA,EAAS;IACtB,IAAIT,UAAU,EAAE;MACZE,QAAQ,CAACQ,OAAO,IAAIV,UAAU,CAACS,WAAW,CAACP,QAAQ,CAACQ,OAAO,CAAC;IAChE,CAAC,MAAM;MACHR,QAAQ,CAACQ,OAAO,IAAIJ,GAAG,CAACG,WAAW,CAACP,QAAQ,CAACQ,OAAO,CAAC;IACzD;EACJ,CAAC;EAED,IAAMF,YAAY,GAAG,SAAfA,YAAYA,CAAIG,MAAM,EAAK;IAC7B,IAAIC,KAAK,GAAG,IAAIC,sBAAU,CAAApD,aAAA;MACtBwB,GAAG,EAAHA,GAAG;MACHC,MAAM,EAANA,MAAM;MACNC,eAAe,EAAfA,eAAe;MACfC,KAAK,EAALA,KAAK;MACLC,MAAM,EAANA,MAAM;MACNhD,GAAG,EAAEA,GAAG,IAAIkD,IAAI;MAChBC,IAAI,EAAJA,IAAI;MACJC,UAAU,EAAVA,UAAU;MACVC,MAAM,EAANA,MAAM;MACNC,QAAQ,EAARA,QAAQ;MACRC,SAAS,EAATA,SAAS;MACTC,SAAS,EAATA,SAAS;MACTE,IAAI,EAAJA,IAAI;MACJO,GAAG,EAAHA,GAAG;MACHN,UAAU,EAAVA,UAAU;MACVC,OAAO,EAAPA;IAAO,GACJU,MAAM,CACZ,CAAC;IAEFC,KAAK,CAACE,UAAU,GAAG,UAACC,QAAQ,EAAK;MAC7B,IAAIC,KAAK,GAAG,KAAK;MACjBD,QAAQ,CAACT,GAAG,CAAC,UAAAW,CAAC,EAAI;QACd,IAAIA,CAAC,CAAClB,IAAI,EAAE;UACRiB,KAAK,GAAG,IAAI;QAChB;MACJ,CAAC,CAAC;MACFR,YAAY,CAAC;QAACP,OAAO,EAAEc,QAAQ;QAAEhB,IAAI,EAAEiB;MAAK,CAAC,CAAC;IAClD,CAAC;;IAED;IACA,IAAAE,0BAAkB,EAACN,KAAK,EAAE5B,KAAK,CAAC;IAEhC,IAAIgB,UAAU,EAAE;MACZ,IAAImB,UAAU,EAAEC,QAAQ;MACxB,IAAIlB,QAAQ,CAACQ,OAAO,EAAE;QAClBS,UAAU,GAAGjB,QAAQ,CAACQ,OAAO,CAACW,aAAa,CAAC,CAAC;QAC7CD,QAAQ,GAAGlB,QAAQ,CAACQ,OAAO,CAACY,WAAW,CAAC,CAAC;MAC7C;MAEAtB,UAAU,CAACuB,QAAQ,CAACX,KAAK,EAAEO,UAAU,EAAEC,QAAQ,CAAC;IACpD,CAAC,MAAM;MACH,IAAIA,SAAQ;MACZ,IAAIlB,QAAQ,CAACQ,OAAO,EAAE;QAClBU,SAAQ,GAAGlB,QAAQ,CAACQ,OAAO,CAACY,WAAW,CAAC,CAAC;MAC7C;MAEAhB,GAAG,CAACiB,QAAQ,CAACX,KAAK,EAAEQ,SAAQ,CAAC;IACjC;;IAEA;IACA,IAAIlB,QAAQ,CAACQ,OAAO,EAAE;MAClBD,WAAW,CAAC,CAAC;IACjB;IAEAP,QAAQ,CAACQ,OAAO,GAAGE,KAAK;EAC5B,CAAC;EAED,IAAAY,uBAAe,EAAC,YAAM;IAClBtB,QAAQ,CAACQ,OAAO,CAACX,IAAI,GAAGA,IAAI;EAChC,CAAC,EAAE,CAACA,IAAI,CAAC,CAAC;EAEV,IAAAyB,uBAAe,EAAC,YAAM;IAClBtB,QAAQ,CAACQ,OAAO,CAACI,UAAU,CAACb,OAAO,CAAC;EACxC,CAAC,EAAE,CAACA,OAAO,CAAC,CAAC;EAEb,oBAAOpF,MAAA,YAAA4G,aAAA,CAAA5G,MAAA,YAAA6G,QAAA,MAAI,CAAC;AAChB"}
package/lib/map/Layers.js CHANGED
@@ -8,8 +8,8 @@ exports["default"] = void 0;
8
8
  var _EventEmitter2 = _interopRequireDefault(require("../_util/EventEmitter"));
9
9
  var _ImageLayer = _interopRequireDefault(require("../image-layer/ImageLayer"));
10
10
  var _FeatureLayer = _interopRequireDefault(require("../feature-layer/FeatureLayer"));
11
- var _GroupLayer = _interopRequireDefault(require("../group-layer/GroupLayer"));
12
11
  var _cesium = require("cesium");
12
+ var _lodash = _interopRequireDefault(require("lodash"));
13
13
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
14
14
  function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
15
15
  function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
@@ -128,12 +128,12 @@ var Layers = /*#__PURE__*/function (_EventEmitter) {
128
128
  // 图层新增
129
129
  }, {
130
130
  key: "addLayer",
131
- value: function addLayer(layer) {
131
+ value: function addLayer(layer, index) {
132
132
  var map = this.map;
133
133
  if (layer instanceof _cesium.CustomDataSource) {
134
134
  map.dataSources.add(layer);
135
135
  } else if (layer instanceof _cesium.ImageryLayer) {
136
- map.scene.imageryLayers.add(layer);
136
+ map.scene.imageryLayers.add(layer, index);
137
137
  }
138
138
 
139
139
  // 图层是否含有name字段,作为加入到图层树的判断依据
@@ -245,13 +245,18 @@ var Layers = /*#__PURE__*/function (_EventEmitter) {
245
245
  if (layer) {
246
246
  var _layer$filters2;
247
247
  if ((_layer$filters2 = layer.filters) !== null && _layer$filters2 !== void 0 && _layer$filters2.length) {
248
- layer.filters.map(function (v) {
248
+ var filters = _lodash["default"].cloneDeep(layer.filters);
249
+ filters.map(function (v) {
249
250
  v.show = _keys.includes(v.key);
250
251
  });
251
- layer.setFilters(layer.filters);
252
+ if (!_lodash["default"].isEqual(filters, layer.filters)) {
253
+ layer.setFilters(filters);
254
+ }
252
255
  } else {
253
256
  var show = keys.includes(a);
254
- layer.setVisible(show);
257
+ if (show !== layer.show) {
258
+ layer.setVisible(show);
259
+ }
255
260
  }
256
261
  }
257
262
  });