@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.
@@ -19,6 +19,8 @@ var _unionBy = _interopRequireDefault(require("lodash/unionBy"));
19
19
 
20
20
  var _default2 = _interopRequireDefault(require("../../default"));
21
21
 
22
+ var _antd = require("antd");
23
+
22
24
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
23
25
 
24
26
  function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
@@ -164,6 +166,7 @@ var BaiduMap = /*#__PURE__*/function (_React$Component) {
164
166
  rectangle: []
165
167
  }
166
168
  };
169
+ _this.frameSelectProps = {};
167
170
 
168
171
  _this.loadMapJs();
169
172
 
@@ -520,6 +523,8 @@ var BaiduMap = /*#__PURE__*/function (_React$Component) {
520
523
  t._drawmanager = new BMapLib.DrawingManager(map); //监听绘制结束事件
521
524
 
522
525
  t._drawmanager.addEventListener('overlaycomplete', function (e) {
526
+ var _t$frameSelectProps$b;
527
+
523
528
  if (e.label) {
524
529
  t.state.gis.removeOverlay(e.label);
525
530
  }
@@ -599,6 +604,10 @@ var BaiduMap = /*#__PURE__*/function (_React$Component) {
599
604
  if ('drawEnd' in t.props) {
600
605
  t.props.drawEnd(backobj);
601
606
  }
607
+
608
+ if (((_t$frameSelectProps$b = t.frameSelectProps[backobj.id]) === null || _t$frameSelectProps$b === void 0 ? void 0 : _t$frameSelectProps$b.callback) instanceof Function) {
609
+ t.frameSelectProps[backobj.id].callback(backobj);
610
+ }
602
611
  });
603
612
  }
604
613
 
@@ -3134,6 +3143,63 @@ var BaiduMap = /*#__PURE__*/function (_React$Component) {
3134
3143
  });
3135
3144
  var marker = new BMap.Marker(poi);
3136
3145
  t.popupWindow.open(marker);
3146
+ } // 框选
3147
+
3148
+ }, {
3149
+ key: "frameSelect",
3150
+ value: function frameSelect(_ref, callback) {
3151
+ var geometryType = _ref.geometryType,
3152
+ _ref$parameter = _ref.parameter,
3153
+ parameter = _ref$parameter === void 0 ? {} : _ref$parameter,
3154
+ _ref$data = _ref.data,
3155
+ data = _ref$data === void 0 ? {} : _ref$data;
3156
+
3157
+ if (!['polygon', 'circle', 'rectangle'].includes(geometryType)) {
3158
+ _antd.message.warn("传入的类型不支持框选!");
3159
+
3160
+ return false;
3161
+ }
3162
+
3163
+ var t = this;
3164
+ var params = {},
3165
+ type = geometryType || 'polygon',
3166
+ id = data.id || "frameSelectFeature_".concat(Math.random());
3167
+ params.color = parameter.color || 'red';
3168
+ params.lineColor = parameter.lineColor || 'red';
3169
+ params.lineOpacity = parameter.lineOpacity || 1;
3170
+ params.lineWidth = parameter.lineWidth || 2;
3171
+ params.pellucidity = parameter.pellucidity || 0.6;
3172
+ params.lineType = parameter.lineType || 'solid';
3173
+ t.draw({
3174
+ geometryType: type,
3175
+ parameter: _objectSpread(_objectSpread({}, parameter), params),
3176
+ data: {
3177
+ id: id
3178
+ }
3179
+ });
3180
+ t.frameSelectProps[id] = {
3181
+ callback: callback,
3182
+ id: id,
3183
+ type: geometryType
3184
+ };
3185
+ } // 清除框选
3186
+
3187
+ }, {
3188
+ key: "clearFrameSelect",
3189
+ value: function clearFrameSelect() {
3190
+ for (var key in this.frameSelectProps) {
3191
+ this.removeGraphic(this.frameSelectProps[key].id, this.frameSelectProps[key].type);
3192
+ }
3193
+
3194
+ this.frameSelectProps = {};
3195
+ } // 清除框选ById
3196
+
3197
+ }, {
3198
+ key: "clearFrameSelectById",
3199
+ value: function clearFrameSelectById(id) {
3200
+ var obj = this.frameSelectProps[id];
3201
+ this.removeGraphic(obj.id, obj.type);
3202
+ delete this.frameSelectProps[id];
3137
3203
  } // 关闭信息窗口
3138
3204
 
3139
3205
  }, {
@@ -3675,6 +3741,20 @@ var BaiduMap = /*#__PURE__*/function (_React$Component) {
3675
3741
  return t.hideInfoWindow();
3676
3742
  };
3677
3743
 
3744
+ t.state.gis["frameSelect"] = function () {
3745
+ var obj = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3746
+ var callback = arguments.length > 1 ? arguments[1] : undefined;
3747
+ return t.frameSelect(obj, callback);
3748
+ };
3749
+
3750
+ t.state.gis["clearFrameSelect"] = function () {
3751
+ return t.clearFrameSelect();
3752
+ };
3753
+
3754
+ t.state.gis["clearFrameSelectById"] = function (id) {
3755
+ return t.clearFrameSelectById(id);
3756
+ };
3757
+
3678
3758
  t.state.gis["refresh"] = function () {
3679
3759
  t.refresh();
3680
3760
  };