@vtx/map 1.1.29 → 1.1.31

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.
@@ -124,7 +124,7 @@ var OlMap = /*#__PURE__*/function (_React$Component) {
124
124
  // geoServer_image
125
125
 
126
126
  case 'geoServer_image':
127
- t.addGeoServerImageLayer(item.coverage);
127
+ t.addGeoServerImageLayer(item);
128
128
 
129
129
  default:
130
130
  break;
@@ -286,6 +286,7 @@ var OlMap = /*#__PURE__*/function (_React$Component) {
286
286
  rectangle: []
287
287
  }
288
288
  };
289
+ _this.frameSelectProps = {};
289
290
 
290
291
  _this.loadMapJs();
291
292
 
@@ -658,7 +659,8 @@ var OlMap = /*#__PURE__*/function (_React$Component) {
658
659
 
659
660
  }, {
660
661
  key: "addGeoServerImageLayer",
661
- value: function addGeoServerImageLayer(url) {
662
+ value: function addGeoServerImageLayer(item) {
663
+ var url = item.coverage;
662
664
  var exist = this.olLayers.find(function (item) {
663
665
  return item.address === url;
664
666
  });
@@ -679,9 +681,9 @@ var OlMap = /*#__PURE__*/function (_React$Component) {
679
681
  serverType: 'geoserver',
680
682
  crossOrigin: '*',
681
683
  ratio: 1,
682
- params: _objectSpread({
684
+ params: _objectSpread(_objectSpread({
683
685
  VERSION: '1.1.0'
684
- }, param)
686
+ }, item.param || {}), param)
685
687
  }); // 矢量图层
686
688
 
687
689
  var layer = new ol.layer.Image({
@@ -722,6 +724,20 @@ var OlMap = /*#__PURE__*/function (_React$Component) {
722
724
  return t.hideInfoWindow();
723
725
  };
724
726
 
727
+ t.state.gis["frameSelect"] = function () {
728
+ var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
729
+ var callback = arguments.length > 1 ? arguments[1] : undefined;
730
+ return t.frameSelect(obj, callback);
731
+ };
732
+
733
+ t.state.gis["clearFrameSelect"] = function () {
734
+ return t.clearFrameSelect();
735
+ };
736
+
737
+ t.state.gis["clearFrameSelectById"] = function (id) {
738
+ return t.clearFrameSelectById(id);
739
+ };
740
+
725
741
  t.state.gis["refresh"] = function () {
726
742
  t.refresh();
727
743
  };
@@ -1155,6 +1171,8 @@ var OlMap = /*#__PURE__*/function (_React$Component) {
1155
1171
  }
1156
1172
 
1157
1173
  t.drawToolbar.on('drawend', function (e) {
1174
+ var _t$frameSelectProps$p;
1175
+
1158
1176
  // 关闭绘制事件
1159
1177
  t.drawToolbar.finishDrawing(); // 移除
1160
1178
 
@@ -1397,6 +1415,10 @@ var OlMap = /*#__PURE__*/function (_React$Component) {
1397
1415
  if ('drawEnd' in t.props && typeof t.props.drawEnd == 'function') {
1398
1416
  t.props.drawEnd(param);
1399
1417
  }
1418
+
1419
+ if (((_t$frameSelectProps$p = t.frameSelectProps[param.attributes.id]) === null || _t$frameSelectProps$p === void 0 ? void 0 : _t$frameSelectProps$p.callback) instanceof Function) {
1420
+ t.frameSelectProps[param.attributes.id].callback(param);
1421
+ }
1400
1422
  }); //保存绘制图元的id便于后期比对
1401
1423
 
1402
1424
  t.state.drawIds[drawParam.geometryType].push(drawParam.data.id);
@@ -1969,6 +1991,62 @@ var OlMap = /*#__PURE__*/function (_React$Component) {
1969
1991
  t.morepoints.map(function (item, index) {
1970
1992
  item.value.clear();
1971
1993
  });
1994
+ } // 框选
1995
+
1996
+ }, {
1997
+ key: "frameSelect",
1998
+ value: function frameSelect(_ref, callback) {
1999
+ var geometryType = _ref.geometryType,
2000
+ _ref$parameter = _ref.parameter,
2001
+ parameter = _ref$parameter === void 0 ? {} : _ref$parameter,
2002
+ _ref$data = _ref.data,
2003
+ data = _ref$data === void 0 ? {} : _ref$data;
2004
+
2005
+ if (!['polygon', 'circle', 'rectangle'].includes(geometryType)) {
2006
+ message.warn("传入的类型不支持框选!");
2007
+ return false;
2008
+ }
2009
+
2010
+ var t = this;
2011
+ var params = {},
2012
+ type = geometryType || 'polygon',
2013
+ id = data.id || "frameSelectFeature_".concat(Math.random());
2014
+ params.color = parameter.color || '#FF0000';
2015
+ params.lineColor = parameter.lineColor || '#FF0000';
2016
+ params.lineOpacity = parameter.lineOpacity || 1;
2017
+ params.lineWidth = parameter.lineWidth || 2;
2018
+ params.pellucidity = parameter.pellucidity || 0.6;
2019
+ params.lineType = parameter.lineType || 'solid';
2020
+ t.draw({
2021
+ geometryType: type,
2022
+ parameter: _objectSpread(_objectSpread({}, parameter), params),
2023
+ data: {
2024
+ id: id
2025
+ }
2026
+ });
2027
+ t.frameSelectProps[id] = {
2028
+ callback: callback,
2029
+ id: id,
2030
+ type: geometryType
2031
+ };
2032
+ } // 清除框选
2033
+
2034
+ }, {
2035
+ key: "clearFrameSelect",
2036
+ value: function clearFrameSelect() {
2037
+ for (var key in this.frameSelectProps) {
2038
+ this.removeGraphic(this.frameSelectProps[key].id, this.frameSelectProps[key].type);
2039
+ }
2040
+
2041
+ this.frameSelectProps = {};
2042
+ } // 清除框选ById
2043
+
2044
+ }, {
2045
+ key: "clearFrameSelectById",
2046
+ value: function clearFrameSelectById(id) {
2047
+ var obj = this.frameSelectProps[id];
2048
+ this.removeGraphic(obj.id, obj.type);
2049
+ delete this.frameSelectProps[id];
1972
2050
  }
1973
2051
  /*
1974
2052
  * 添加信息窗口
@@ -4164,13 +4242,12 @@ var OlMap = /*#__PURE__*/function (_React$Component) {
4164
4242
  }, {
4165
4243
  key: "getFeatureInfo",
4166
4244
  value: function getFeatureInfo(event, view, source) {
4167
- var _source$params_,
4168
- _source$params_2,
4169
- _this8 = this;
4245
+ var _this8 = this;
4170
4246
 
4247
+ var sourceParam = source.getParams();
4171
4248
  var url = source.getFeatureInfoUrl(event.coordinate, view.getResolution(), view.getProjection(), {
4172
- cql_filter: (_source$params_ = source.params_) === null || _source$params_ === void 0 ? void 0 : _source$params_.cql_filter,
4173
- QUERY_LAYERS: (_source$params_2 = source.params_) === null || _source$params_2 === void 0 ? void 0 : _source$params_2.layers,
4249
+ cql_filter: sourceParam === null || sourceParam === void 0 ? void 0 : sourceParam.cql_filter,
4250
+ QUERY_LAYERS: sourceParam === null || sourceParam === void 0 ? void 0 : sourceParam.layers,
4174
4251
  INFO_FORMAT: 'application/json',
4175
4252
  REQUEST: "GetFeatureInfo",
4176
4253
  FEATURE_COUNT: 50