@vtx/cs-map 1.0.83 → 1.0.85

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.
Files changed (41) hide show
  1. package/lib/_util/cesium.js +179 -0
  2. package/lib/_util/cesium.js.map +1 -0
  3. package/lib/cesium-tiles-layer/CesiumTilesLayer.js +1 -1
  4. package/lib/cesium-tiles-layer/CesiumTilesLayer.js.map +1 -1
  5. package/lib/circle-fly/index.js +75 -0
  6. package/lib/circle-fly/index.js.map +1 -0
  7. package/lib/circle-fly/style/css.js +4 -0
  8. package/lib/circle-fly/style/css.js.map +1 -0
  9. package/lib/circle-fly/style/index.css +0 -0
  10. package/lib/circle-fly/style/index.js +4 -0
  11. package/lib/circle-fly/style/index.js.map +1 -0
  12. package/lib/circle-fly/style/index.less +0 -0
  13. package/lib/feature-layer/FeatureLayer.js +5 -1
  14. package/lib/feature-layer/FeatureLayer.js.map +1 -1
  15. package/lib/image-layer/ImageLayer.js +4 -0
  16. package/lib/image-layer/ImageLayer.js.map +1 -1
  17. package/lib/index.js +22 -1
  18. package/lib/index.js.map +1 -1
  19. package/lib/inundate-analysis/index.js +121 -0
  20. package/lib/inundate-analysis/index.js.map +1 -0
  21. package/lib/inundate-analysis/style/css.js +4 -0
  22. package/lib/inundate-analysis/style/css.js.map +1 -0
  23. package/lib/inundate-analysis/style/index.css +0 -0
  24. package/lib/inundate-analysis/style/index.js +4 -0
  25. package/lib/inundate-analysis/style/index.js.map +1 -0
  26. package/lib/inundate-analysis/style/index.less +0 -0
  27. package/lib/map/Popup.js +224 -179
  28. package/lib/map/Popup.js.map +1 -1
  29. package/lib/map/base/index.js +2 -2
  30. package/lib/map/base/index.js.map +1 -1
  31. package/lib/map/index.js +33 -22
  32. package/lib/map/index.js.map +1 -1
  33. package/lib/scene-roam/index.js +311 -0
  34. package/lib/scene-roam/index.js.map +1 -0
  35. package/lib/scene-roam/style/css.js +4 -0
  36. package/lib/scene-roam/style/css.js.map +1 -0
  37. package/lib/scene-roam/style/index.css +0 -0
  38. package/lib/scene-roam/style/index.js +4 -0
  39. package/lib/scene-roam/style/index.js.map +1 -0
  40. package/lib/scene-roam/style/index.less +0 -0
  41. package/package.json +1 -1
package/lib/map/Popup.js CHANGED
@@ -13,6 +13,7 @@ var _antd = require("antd");
13
13
  var _InfoTool = _interopRequireDefault(require("./InfoTool"));
14
14
  var _classnames = _interopRequireDefault(require("classnames"));
15
15
  var _turf = require("@turf/turf");
16
+ var _Marker = _interopRequireDefault(require("../marker/Marker"));
16
17
  var _Polygon = _interopRequireDefault(require("../polygon/Polygon"));
17
18
  var _Polyline = _interopRequireDefault(require("../polyline/Polyline"));
18
19
  var _layerControl = require("../tools/layer-control");
@@ -20,6 +21,9 @@ var _createFeatureCollection = require("../feature-layer/createFeatureCollection
20
21
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
21
22
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
22
23
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
24
+ function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
25
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
26
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
23
27
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
24
28
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
25
29
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
@@ -44,6 +48,22 @@ var ClusterTitle = function ClusterTitle(props) {
44
48
  className: (0, _classnames["default"])('cs-map-popup-cluster-title-text')
45
49
  }, name));
46
50
  };
51
+
52
+ // 根据图片地址获取图片高度
53
+ var getImageHeightBySrc = function getImageHeightBySrc(src) {
54
+ return new Promise(function (resolve) {
55
+ // js从base64数据中获取宽高
56
+ var image = new Image();
57
+ image.src = src;
58
+ if (image.height) {
59
+ resolve(image.height);
60
+ } else {
61
+ image.onload = function () {
62
+ resolve(image.height);
63
+ };
64
+ }
65
+ });
66
+ };
47
67
  ClusterTitle.propTypes = {
48
68
  layer: _propTypes["default"].object
49
69
  };
@@ -172,187 +192,212 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
172
192
  hideTemplate: hideTemplate
173
193
  };
174
194
  });
175
- var showTemplate = function showTemplate(feature, highlightLayer) {
176
- var _feature$_position, _feature$data, _highlightLayer2;
177
- // 判断是否为聚合点击
178
- if (feature && feature.length >= 2) {
179
- var _layer2$_options;
180
- var points = [];
181
- var features = feature.map(function (f) {
182
- var properties = map.getProperties(f);
183
- points.push((0, _turf.point)(f.geometry));
184
- return {
185
- feature: f,
186
- geometryInfo: (properties === null || properties === void 0 ? void 0 : properties.geometryInfo) || {
187
- type: 'point',
188
- lngLats: f.geometry.join(','),
189
- coordType: 'wgs84'
190
- },
191
- values_: properties,
192
- properties: properties
193
- };
194
- });
195
- var center = (0, _turf.centerOfMass)((0, _turf.featureCollection)(points));
196
- var _handelGeometry = handelGeometry({
197
- data: center
198
- }),
199
- _position2 = _handelGeometry.position;
200
- var _layer2 = map.getLayerByFeature(feature[0]);
201
- infoToolRef.current.add({
202
- position: _position2,
203
- content: '',
204
- element: popupRef.current,
205
- inputFeature: feature,
206
- type: '',
207
- offset: {
208
- x: 0,
209
- y: 50
210
- }
211
- });
212
- setTitle( /*#__PURE__*/_react["default"].createElement(ClusterTitle, {
213
- layer: _layer2
214
- }));
195
+ var showTemplate = /*#__PURE__*/function () {
196
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(feature, highlightLayer) {
197
+ var _feature$_position, _feature$data, _highlightLayer2;
198
+ var _layer2$_options, points, features, _layer2, Template, layer, properties, position, offset, height, _feature$_billboard, src, _height, _feature$_billboard$s, _feature$_polygon, coordinates, _handelGeometry, _position, _offset, _feature$_polyline, _coordinates3, _handelGeometry2, _position2, _offset2, _midpoint$geometry, geometry, _geometry$coordinates, point1, point2, midpoint, _handelGeometry3, _position3, _offset3, template, labelField, currentCameraHeight, viewThreshold, viewHeight;
199
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
200
+ while (1) switch (_context.prev = _context.next) {
201
+ case 0:
202
+ if (!(feature && feature.length >= 2)) {
203
+ _context.next = 9;
204
+ break;
205
+ }
206
+ points = [];
207
+ features = feature.map(function (f) {
208
+ var properties = map.getProperties(f);
209
+ points.push((0, _turf.point)(f.geometry));
210
+ return {
211
+ feature: f,
212
+ geometryInfo: (properties === null || properties === void 0 ? void 0 : properties.geometryInfo) || {
213
+ type: 'point',
214
+ lngLats: f.geometry.join(','),
215
+ coordType: 'wgs84'
216
+ },
217
+ values_: properties,
218
+ properties: properties
219
+ };
220
+ });
221
+ _layer2 = map.getLayerByFeature(feature[0]);
222
+ infoToolRef.current.add({
223
+ position: map._clickObject.position,
224
+ content: '',
225
+ element: popupRef.current,
226
+ inputFeature: feature,
227
+ type: '',
228
+ offset: {
229
+ x: 0,
230
+ y: 20
231
+ }
232
+ });
233
+ setTitle( /*#__PURE__*/_react["default"].createElement(ClusterTitle, {
234
+ layer: _layer2
235
+ }));
215
236
 
216
- // 判断是否有自定义聚合列表模版
217
- var Template = (_layer2 === null || _layer2 === void 0 || (_layer2$_options = _layer2._options) === null || _layer2$_options === void 0 || (_layer2$_options = _layer2$_options.cluster) === null || _layer2$_options === void 0 ? void 0 : _layer2$_options.template) || Cluster;
218
- setContent( /*#__PURE__*/_react["default"].createElement(Template, {
219
- layer: _layer2,
220
- features: features,
221
- onFitView: function onFitView() {
222
- map.fitView({
223
- data: features
224
- });
225
- hideTemplate(null, map.autoView);
226
- },
227
- onFeatureClick: function onFeatureClick(f) {
228
- showTemplate(f.feature, highlightLayer);
229
- }
230
- }));
231
- return;
232
- }
233
- var layer = map.getLayerByFeature(feature);
234
- if (layer !== null && layer !== void 0 && layer.cancelPopup || feature !== null && feature !== void 0 && feature.cancelPopup) {
235
- return;
236
- }
237
- map.layers.highlightFeature = feature;
238
- var properties = map.getProperties(feature);
239
- feature.values_ = properties;
240
- featureRef.current = feature;
241
- var position = feature === null || feature === void 0 || (_feature$_position = feature._position) === null || _feature$_position === void 0 ? void 0 : _feature$_position._value;
242
- // 偏移量
243
- var offset = {
244
- x: 5,
245
- y: 76
246
- };
247
- var height = map.fitViewHeight || 5000;
248
- if (feature instanceof _Polygon["default"] || feature !== null && feature !== void 0 && feature._polygon) {
249
- var _feature$_polygon;
250
- var coordinates = [((feature === null || feature === void 0 || (_feature$_polygon = feature._polygon) === null || _feature$_polygon === void 0 || (_feature$_polygon = _feature$_polygon._hierarchy) === null || _feature$_polygon === void 0 || (_feature$_polygon = _feature$_polygon._value) === null || _feature$_polygon === void 0 ? void 0 : _feature$_polygon.positions) || []).map(function (v) {
251
- var cartographic = _cesium.Cartographic.fromCartesian(v); // 经纬高对象
252
- var lng = _cesium.Math.toDegrees(cartographic.longitude);
253
- var lat = _cesium.Math.toDegrees(cartographic.latitude);
254
- return [lng, lat];
255
- })];
256
- var _handelGeometry2 = handelGeometry({
257
- data: {
258
- geometry: {
259
- type: 'Polygon',
260
- coordinates: coordinates
237
+ // 判断是否有自定义聚合列表模版
238
+ Template = (_layer2 === null || _layer2 === void 0 || (_layer2$_options = _layer2._options) === null || _layer2$_options === void 0 || (_layer2$_options = _layer2$_options.cluster) === null || _layer2$_options === void 0 ? void 0 : _layer2$_options.template) || Cluster;
239
+ setContent( /*#__PURE__*/_react["default"].createElement(Template, {
240
+ layer: _layer2,
241
+ features: features,
242
+ onFitView: function onFitView() {
243
+ map.fitView({
244
+ data: features
245
+ });
246
+ hideTemplate(null, map.autoView);
247
+ },
248
+ onFeatureClick: function onFeatureClick(f) {
249
+ showTemplate(f.feature, highlightLayer);
250
+ }
251
+ }));
252
+ return _context.abrupt("return");
253
+ case 9:
254
+ layer = map.getLayerByFeature(feature);
255
+ if (!(layer !== null && layer !== void 0 && layer.cancelPopup || feature !== null && feature !== void 0 && feature.cancelPopup)) {
256
+ _context.next = 12;
257
+ break;
261
258
  }
262
- }
263
- }),
264
- _position = _handelGeometry2.position,
265
- _offset = _handelGeometry2._offset;
266
- position = _position;
267
- offset = _offset;
268
- height = null;
269
- } else if (feature instanceof _Polyline["default"] || feature !== null && feature !== void 0 && feature._polyline) {
270
- var _feature$_polyline;
271
- var _coordinates3 = ((feature === null || feature === void 0 || (_feature$_polyline = feature._polyline) === null || _feature$_polyline === void 0 || (_feature$_polyline = _feature$_polyline._positions) === null || _feature$_polyline === void 0 ? void 0 : _feature$_polyline._value) || []).map(function (v) {
272
- var cartographic = _cesium.Cartographic.fromCartesian(v); // 经纬高对象
273
- var lng = _cesium.Math.toDegrees(cartographic.longitude);
274
- var lat = _cesium.Math.toDegrees(cartographic.latitude);
275
- return [lng, lat];
276
- });
277
- var _handelGeometry3 = handelGeometry({
278
- data: {
279
- geometry: {
280
- type: 'LineString',
281
- coordinates: _coordinates3
259
+ return _context.abrupt("return");
260
+ case 12:
261
+ map.layers.highlightFeature = feature;
262
+ properties = map.getProperties(feature);
263
+ feature.values_ = properties;
264
+ featureRef.current = feature;
265
+ position = feature === null || feature === void 0 || (_feature$_position = feature._position) === null || _feature$_position === void 0 ? void 0 : _feature$_position._value; // 偏移量
266
+ offset = {
267
+ x: 5,
268
+ y: 76
269
+ };
270
+ height = map.fitViewHeight || 5000;
271
+ if (!(feature instanceof _Marker["default"] || feature !== null && feature !== void 0 && feature._billboard)) {
272
+ _context.next = 28;
273
+ break;
274
+ }
275
+ src = ((_feature$_billboard = feature._billboard) === null || _feature$_billboard === void 0 || (_feature$_billboard = _feature$_billboard._image) === null || _feature$_billboard === void 0 ? void 0 : _feature$_billboard._value) || "";
276
+ if (!src) {
277
+ _context.next = 26;
278
+ break;
279
+ }
280
+ _context.next = 24;
281
+ return getImageHeightBySrc(src);
282
+ case 24:
283
+ _height = _context.sent;
284
+ if (_height) {
285
+ if ((_feature$_billboard$s = feature._billboard.scale) !== null && _feature$_billboard$s !== void 0 && _feature$_billboard$s._value) {
286
+ _height = _height * feature._billboard.scale._value;
287
+ }
288
+ offset.y = _height + 10;
289
+ }
290
+ case 26:
291
+ _context.next = 29;
292
+ break;
293
+ case 28:
294
+ if (feature instanceof _Polygon["default"] || feature !== null && feature !== void 0 && feature._polygon) {
295
+ coordinates = [((feature === null || feature === void 0 || (_feature$_polygon = feature._polygon) === null || _feature$_polygon === void 0 || (_feature$_polygon = _feature$_polygon._hierarchy) === null || _feature$_polygon === void 0 || (_feature$_polygon = _feature$_polygon._value) === null || _feature$_polygon === void 0 ? void 0 : _feature$_polygon.positions) || []).map(function (v) {
296
+ var cartographic = _cesium.Cartographic.fromCartesian(v); // 经纬高对象
297
+ var lng = _cesium.Math.toDegrees(cartographic.longitude);
298
+ var lat = _cesium.Math.toDegrees(cartographic.latitude);
299
+ return [lng, lat];
300
+ })];
301
+ _handelGeometry = handelGeometry({
302
+ data: {
303
+ geometry: {
304
+ type: 'Polygon',
305
+ coordinates: coordinates
306
+ }
307
+ }
308
+ }), _position = _handelGeometry.position, _offset = _handelGeometry._offset;
309
+ position = _position;
310
+ offset = _offset;
311
+ height = null;
312
+ } else if (feature instanceof _Polyline["default"] || feature !== null && feature !== void 0 && feature._polyline) {
313
+ _coordinates3 = ((feature === null || feature === void 0 || (_feature$_polyline = feature._polyline) === null || _feature$_polyline === void 0 || (_feature$_polyline = _feature$_polyline._positions) === null || _feature$_polyline === void 0 ? void 0 : _feature$_polyline._value) || []).map(function (v) {
314
+ var cartographic = _cesium.Cartographic.fromCartesian(v); // 经纬高对象
315
+ var lng = _cesium.Math.toDegrees(cartographic.longitude);
316
+ var lat = _cesium.Math.toDegrees(cartographic.latitude);
317
+ return [lng, lat];
318
+ });
319
+ _handelGeometry2 = handelGeometry({
320
+ data: {
321
+ geometry: {
322
+ type: 'LineString',
323
+ coordinates: _coordinates3
324
+ }
325
+ }
326
+ }), _position2 = _handelGeometry2.position, _offset2 = _handelGeometry2._offset;
327
+ position = _position2;
328
+ offset = _offset2;
329
+ height = null;
330
+ }
331
+ case 29:
332
+ if (feature instanceof _cesium.Cesium3DTileFeature) {
333
+ offset = {
334
+ x: 0,
335
+ y: 20
336
+ };
337
+ position = map._clickObject.position;
338
+ // position = Cartesian3.fromDegrees();
339
+ } else if (feature.primitive) {
340
+ offset = {
341
+ x: 0,
342
+ y: 20
343
+ };
344
+ geometry = (0, _createFeatureCollection.transformGeometry)(properties.geometryInfo);
345
+ _geometry$coordinates = _slicedToArray(geometry.coordinates[0], 2), point1 = _geometry$coordinates[0], point2 = _geometry$coordinates[1];
346
+ midpoint = (0, _turf.midpoint)(point1, point2);
347
+ if (midpoint !== null && midpoint !== void 0 && (_midpoint$geometry = midpoint.geometry) !== null && _midpoint$geometry !== void 0 && _midpoint$geometry.coordinates) {
348
+ position = _cesium.Cartesian3.fromDegrees.apply(_cesium.Cartesian3, _toConsumableArray(midpoint.geometry.coordinates));
349
+ }
282
350
  }
283
- }
284
- }),
285
- _position3 = _handelGeometry3.position,
286
- _offset2 = _handelGeometry3._offset;
287
- position = _position3;
288
- offset = _offset2;
289
- height = null;
290
- }
291
- if (feature instanceof _cesium.Cesium3DTileFeature) {
292
- offset = {
293
- x: 0,
294
- y: 20
295
- };
296
- position = map._clickObject.position;
297
- // position = Cartesian3.fromDegrees();
298
- } else if (feature.primitive) {
299
- var _midpoint$geometry;
300
- offset = {
301
- x: 0,
302
- y: 20
303
- };
304
- var geometry = (0, _createFeatureCollection.transformGeometry)(properties.geometryInfo);
305
- var _geometry$coordinates = _slicedToArray(geometry.coordinates[0], 2),
306
- point1 = _geometry$coordinates[0],
307
- point2 = _geometry$coordinates[1];
308
- var midpoint = (0, _turf.midpoint)(point1, point2);
309
- if (midpoint !== null && midpoint !== void 0 && (_midpoint$geometry = midpoint.geometry) !== null && _midpoint$geometry !== void 0 && _midpoint$geometry.coordinates) {
310
- position = _cesium.Cartesian3.fromDegrees.apply(_cesium.Cartesian3, _toConsumableArray(midpoint.geometry.coordinates));
311
- }
312
- }
313
351
 
314
- // 影像图层的数据
315
- if (feature instanceof _cesium.ImageryLayerFeatureInfo || feature !== null && feature !== void 0 && (_feature$data = feature.data) !== null && _feature$data !== void 0 && (_feature$data = _feature$data.geometry) !== null && _feature$data !== void 0 && _feature$data.coordinates) {
316
- var _handelGeometry4 = handelGeometry(feature),
317
- _position4 = _handelGeometry4.position,
318
- _offset3 = _handelGeometry4._offset;
319
- position = _position4;
320
- offset = _offset3;
321
- }
322
- if (layer !== null && layer !== void 0 && layer.template) {
323
- var template = layer.template;
324
- var labelField = layer.labelField;
325
- setTitle(labelField && properties[labelField]);
326
- setContent(feature && template(feature));
327
- infoToolRef.current.add({
328
- position: position,
329
- content: '',
330
- element: popupRef.current,
331
- inputFeature: feature,
332
- type: '',
333
- offset: offset
334
- });
335
- map.popupRef = feature;
336
- }
337
- var currentCameraHeight = map.camera.positionCartographic.height;
338
- var viewThreshold = currentCameraHeight < height;
339
- var viewHeight = viewThreshold ? currentCameraHeight : height;
340
- if (!viewRef.current && map.autoView) {
341
- getView();
342
- }
343
- if (viewThreshold) {
344
- viewRef.current = null;
345
- }
346
- highlightLayer = highlightLayer || map.highlightLayer;
347
- highlightLayerRef.current = highlightLayer;
348
- highlightLayer.addHighlightFeature(feature);
349
- if ((_highlightLayer2 = highlightLayer) !== null && _highlightLayer2 !== void 0 && _highlightLayer2.layer && map.autoView && !viewThreshold) {
350
- map.fitView({
351
- entity: highlightLayer.layer,
352
- height: viewHeight
353
- });
354
- }
355
- };
352
+ // 影像图层的数据
353
+ if (feature instanceof _cesium.ImageryLayerFeatureInfo || feature !== null && feature !== void 0 && (_feature$data = feature.data) !== null && _feature$data !== void 0 && (_feature$data = _feature$data.geometry) !== null && _feature$data !== void 0 && _feature$data.coordinates) {
354
+ _handelGeometry3 = handelGeometry(feature), _position3 = _handelGeometry3.position, _offset3 = _handelGeometry3._offset;
355
+ position = _position3;
356
+ offset = _offset3;
357
+ }
358
+ if (layer !== null && layer !== void 0 && layer.template) {
359
+ template = layer.template;
360
+ labelField = layer.labelField;
361
+ setTitle(labelField && properties[labelField]);
362
+ setContent(feature && template(feature));
363
+ infoToolRef.current.add({
364
+ position: position,
365
+ content: '',
366
+ element: popupRef.current,
367
+ inputFeature: feature,
368
+ type: '',
369
+ offset: offset
370
+ });
371
+ map.popupRef = feature;
372
+ }
373
+ currentCameraHeight = map.camera.positionCartographic.height;
374
+ viewThreshold = currentCameraHeight < height;
375
+ viewHeight = viewThreshold ? currentCameraHeight : height;
376
+ if (!viewRef.current && map.autoView) {
377
+ getView();
378
+ }
379
+ if (viewThreshold) {
380
+ viewRef.current = null;
381
+ }
382
+ highlightLayer = highlightLayer || map.highlightLayer;
383
+ highlightLayerRef.current = highlightLayer;
384
+ highlightLayer.addHighlightFeature(feature);
385
+ if ((_highlightLayer2 = highlightLayer) !== null && _highlightLayer2 !== void 0 && _highlightLayer2.layer && map.autoView && !viewThreshold) {
386
+ map.fitView({
387
+ entity: highlightLayer.layer,
388
+ height: viewHeight
389
+ });
390
+ }
391
+ case 41:
392
+ case "end":
393
+ return _context.stop();
394
+ }
395
+ }, _callee);
396
+ }));
397
+ return function showTemplate(_x, _x2) {
398
+ return _ref.apply(this, arguments);
399
+ };
400
+ }();
356
401
  var hideTemplate = function hideTemplate(_layer) {
357
402
  if (_layer) {
358
403
  var layer = typeof _layer === 'string' ? map.getLayerByKey(_layer) : _layer;
@@ -369,8 +414,8 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
369
414
 
370
415
  // 判断点位异常-点位异常展示红色
371
416
  function judgeAbnormal() {
372
- var _ref = map.getProperties(featureRef.current) || {},
373
- status = _ref.status;
417
+ var _ref2 = map.getProperties(featureRef.current) || {},
418
+ status = _ref2.status;
374
419
  return status && [1, 2, 4].includes(status);
375
420
  }
376
421