@vtx/cs-map 1.0.24 → 1.0.26

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 (35) hide show
  1. package/lib/demand-layer/DemandLayer.js +410 -0
  2. package/lib/demand-layer/DemandLayer.js.map +1 -0
  3. package/lib/demand-layer/index.js +104 -0
  4. package/lib/demand-layer/index.js.map +1 -0
  5. package/lib/demand-layer/style/css.js +4 -0
  6. package/lib/demand-layer/style/css.js.map +1 -0
  7. package/lib/demand-layer/style/index.css +0 -0
  8. package/lib/demand-layer/style/index.js +4 -0
  9. package/lib/demand-layer/style/index.js.map +1 -0
  10. package/lib/demand-layer/style/index.less +0 -0
  11. package/lib/feature-layer/FeatureLayer.js +39 -28
  12. package/lib/feature-layer/FeatureLayer.js.map +1 -1
  13. package/lib/feature-layer/index.js +2 -0
  14. package/lib/feature-layer/index.js.map +1 -1
  15. package/lib/heatmap-layer/CesiumHeatmap.js +1 -1
  16. package/lib/heatmap-layer/CesiumHeatmap.js.map +1 -1
  17. package/lib/heatmap-layer/index.js +2 -1
  18. package/lib/heatmap-layer/index.js.map +1 -1
  19. package/lib/highlight-layer/HighlightLayer.js +31 -11
  20. package/lib/highlight-layer/HighlightLayer.js.map +1 -1
  21. package/lib/map/Popup.js +100 -24
  22. package/lib/map/Popup.js.map +1 -1
  23. package/lib/map/index.js +35 -9
  24. package/lib/map/index.js.map +1 -1
  25. package/lib/polygon/Polygon.js +0 -1
  26. package/lib/polygon/Polygon.js.map +1 -1
  27. package/lib/renderer/index.js +4 -3
  28. package/lib/renderer/index.js.map +1 -1
  29. package/lib/tools/dimension-switch/index.js +1 -0
  30. package/lib/tools/dimension-switch/index.js.map +1 -1
  31. package/lib/tools/index.js +2 -1
  32. package/lib/tools/index.js.map +1 -1
  33. package/lib/tools/style/index.css +1 -1
  34. package/lib/tools/style/index.less +1 -1
  35. package/package.json +1 -1
@@ -30,8 +30,9 @@ var handleData = function handleData(data, map) {
30
30
  var _data = [];
31
31
  var datas = Array.isArray(data) ? data : [data];
32
32
  datas.map(function (v) {
33
+ var _v$data;
33
34
  // 影像图层的数据
34
- if (v instanceof _cesium.ImageryLayerFeatureInfo) {
35
+ if (v instanceof _cesium.ImageryLayerFeatureInfo || v !== null && v !== void 0 && (_v$data = v.data) !== null && _v$data !== void 0 && (_v$data = _v$data.geometry) !== null && _v$data !== void 0 && _v$data.coordinates) {
35
36
  var item = v.data || {};
36
37
  var geometry = item.geometry;
37
38
  var _ref = geometry || {},
@@ -43,7 +44,7 @@ var handleData = function handleData(data, map) {
43
44
  })
44
45
  }));
45
46
  } else {
46
- var _v$position, _v$_polyline;
47
+ var _v$position, _v$_polyline, _v$_polygon;
47
48
  if (v !== null && v !== void 0 && (_v$position = v.position) !== null && _v$position !== void 0 && _v$position._value) {
48
49
  var _v$position2;
49
50
  handlePositionData({
@@ -61,6 +62,15 @@ var handleData = function handleData(data, map) {
61
62
  feature: v,
62
63
  type: 'Polyline'
63
64
  });
65
+ } else if (v !== null && v !== void 0 && (_v$_polygon = v._polygon) !== null && _v$_polygon !== void 0 && (_v$_polygon = _v$_polygon._hierarchy) !== null && _v$_polygon !== void 0 && (_v$_polygon = _v$_polygon._value) !== null && _v$_polygon !== void 0 && _v$_polygon.positions) {
66
+ var _v$_polygon2;
67
+ handlePositionData({
68
+ data: _data,
69
+ position: v === null || v === void 0 || (_v$_polygon2 = v._polygon) === null || _v$_polygon2 === void 0 || (_v$_polygon2 = _v$_polygon2._hierarchy) === null || _v$_polygon2 === void 0 || (_v$_polygon2 = _v$_polygon2._value) === null || _v$_polygon2 === void 0 ? void 0 : _v$_polygon2.positions,
70
+ map: map,
71
+ feature: v,
72
+ type: 'Polygon'
73
+ });
64
74
  }
65
75
  }
66
76
  });
@@ -98,6 +108,20 @@ var getLngLats = function getLngLats(position) {
98
108
  lngLats.push(lat);
99
109
  return lngLats;
100
110
  };
111
+ var polygonStyle = {
112
+ type: 'Polygon',
113
+ style: {
114
+ stroke: {
115
+ color: '#f7ff01',
116
+ opacity: 1,
117
+ width: 2
118
+ },
119
+ fill: {
120
+ color: '#f7ff01',
121
+ opacity: 0.35
122
+ }
123
+ }
124
+ };
101
125
  var lineStyle = {
102
126
  type: 'Polyline',
103
127
  style: {
@@ -133,27 +157,27 @@ var HighlightLayer = /*#__PURE__*/function () {
133
157
  // 高亮图层增加feature
134
158
  _defineProperty(this, "addHighlightFeature", function (feature) {
135
159
  if (feature) {
136
- var _feature$data, _feature$_polyline;
160
+ var _feature$data, _feature$_polyline, _feature$_polygon;
137
161
  if (feature.primitive) {
138
162
  return _this.addHighlightPrimitive(feature);
139
163
  }
140
164
  var type = feature === null || feature === void 0 || (_feature$data = feature.data) === null || _feature$data === void 0 || (_feature$data = _feature$data.geometry) === null || _feature$data === void 0 ? void 0 : _feature$data.type;
141
165
  if (['LineString', 'MultiLineString'].includes(type)) {
142
166
  _this.layer.style = lineStyle;
167
+ } else if (['Polygon', 'MultiPolygon'].includes(type)) {
168
+ _this.layer.style = polygonStyle;
143
169
  } else if (['Point'].includes(type)) {
144
170
  _this.layer.style = pointStyle;
145
171
  } else if (feature !== null && feature !== void 0 && (_feature$_polyline = feature._polyline) !== null && _feature$_polyline !== void 0 && (_feature$_polyline = _feature$_polyline._positions) !== null && _feature$_polyline !== void 0 && _feature$_polyline._value) {
146
172
  _this.layer.style = lineStyle;
173
+ } else if (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 && _feature$_polygon.positions) {
174
+ _this.layer.style = polygonStyle;
147
175
  } else {
148
176
  _this.layer.style = pointStyle;
149
177
  }
150
178
  var data = handleData(feature, _this.map, _this.layer);
151
179
  _this.layer.data = data;
152
180
  _this.layer.loadData(data);
153
- _this.map.fitView({
154
- entity: _this.layer,
155
- height: 1000
156
- });
157
181
  }
158
182
  });
159
183
  _defineProperty(this, "addHighlightPrimitive", function (feature) {
@@ -168,10 +192,6 @@ var HighlightLayer = /*#__PURE__*/function () {
168
192
  _this.map.scene.primitives.raiseToTop(_this.primitiveLayer);
169
193
  _this.layer.data = data;
170
194
  _this.layer.loadData(data);
171
- _this.map.fitView({
172
- entity: _this.layer,
173
- height: 1000
174
- });
175
195
  }
176
196
  });
177
197
  var _options$isFit = options.isFit,
@@ -1 +1 @@
1
- {"version":3,"file":"HighlightLayer.js","names":["_FeatureLayer","_interopRequireDefault","require","_cesium","_CircleRippleMaterialProperty","_LineFlowLayer","_transformRgb","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","fromCssColorString","transformRgb","speed","count","gradient","HighlightLayer","options","_this","_feature$data","_feature$_polyline","primitive","addHighlightPrimitive","includes","layer","loadData","fitView","entity","height","LineFlowLayer","clearPrimitive","values_","primitiveLayer","fadeOutColor","scene","primitives","add","raiseToTop","_options$isFit","isFit","FeatureLayer","addLayer","remove","clearFeatures","entities","removeAll","destroy","dataSources","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';\nimport LineFlowLayer from '../line-flow-layer/LineFlowLayer';\nimport transformRgb from \"../_util/transformRgb\";\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: '#f7ff01',\n opacity: 1,\n width: 2,\n },\n },\n};\n\nconst pointStyle = {\n style: {\n type: 'PointIcon',\n color: '#f7ff01',\n size: 10,\n pixelOffset: new Cartesian2(0, 10),\n ellipse: {\n semiMinorAxis: 50.0,\n semiMajorAxis: 50.0,\n material: new CircleRippleMaterialProperty({\n color: Color.fromCssColorString(transformRgb('#f7ff01', 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 this.primitiveLayer = null;\n }\n\n // 高亮图层增加feature\n addHighlightFeature = feature => {\n if (feature) {\n if (feature.primitive) {\n return this.addHighlightPrimitive(feature);\n }\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 addHighlightPrimitive = feature => {\n if (feature.primitive instanceof LineFlowLayer) {\n this.clearPrimitive();\n const data = [feature.values_];\n this.primitiveLayer = new LineFlowLayer({\n fadeOutColor: '#f7ff01',\n data: [feature.values_],\n });\n this.map.scene.primitives.add(this.primitiveLayer);\n this.map.scene.primitives.raiseToTop(this.primitiveLayer);\n this.layer.data = data;\n this.layer.loadData(data);\n this.map.fitView({ entity: this.layer, height: 1000 });\n }\n };\n\n clearPrimitive() {\n if (this.primitiveLayer) {\n this.map.scene.primitives.remove(this.primitiveLayer);\n }\n }\n\n clearFeatures() {\n this.layer.entities.removeAll();\n this.clearPrimitive();\n }\n\n destroy() {\n this.map.dataSources.remove(this.layer);\n this.clearPrimitive();\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"HighlightLayer.js","names":["_FeatureLayer","_interopRequireDefault","require","_cesium","_CircleRippleMaterialProperty","_LineFlowLayer","_transformRgb","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","_v$data","ImageryLayerFeatureInfo","geometry","coordinates","item","_ref","_ref$coordinates","geometryInfo","lngLats","_v$position","_v$_polyline","_v$_polygon","position","_value","_v$position2","handlePositionData","feature","_polyline","_positions","_v$_polyline2","type","_polygon","_hierarchy","positions","_v$_polygon2","_ref2","_ref2$type","getLngLats","getProperties","cartographic","Cartographic","fromCartesian","lng","Math","toDegrees","longitude","lat","latitude","polygonStyle","style","stroke","color","opacity","width","fill","lineStyle","pointStyle","size","pixelOffset","Cartesian2","ellipse","semiMinorAxis","semiMajorAxis","material","CircleRippleMaterialProperty","Color","fromCssColorString","transformRgb","speed","count","gradient","HighlightLayer","options","_this","_feature$data","_feature$_polyline","_feature$_polygon","primitive","addHighlightPrimitive","includes","layer","loadData","LineFlowLayer","clearPrimitive","values_","primitiveLayer","fadeOutColor","scene","primitives","add","raiseToTop","_options$isFit","isFit","FeatureLayer","addLayer","remove","clearFeatures","entities","removeAll","destroy","dataSources","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';\nimport LineFlowLayer from '../line-flow-layer/LineFlowLayer';\nimport transformRgb from \"../_util/transformRgb\";\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 || v?.data?.geometry?.coordinates) {\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 } else if (v?._polygon?._hierarchy?._value?.positions) {\n handlePositionData({\n data: _data,\n position: v?._polygon?._hierarchy?._value?.positions,\n map,\n feature: v,\n type: 'Polygon',\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 polygonStyle = {\n type: 'Polygon',\n style: {\n stroke: {\n color: '#f7ff01',\n opacity: 1,\n width: 2,\n },\n fill: {\n color: '#f7ff01',\n opacity: 0.35,\n },\n },\n};\n\nconst lineStyle = {\n type: 'Polyline',\n style: {\n stroke: {\n color: '#f7ff01',\n opacity: 1,\n width: 2,\n },\n },\n};\n\nconst pointStyle = {\n style: {\n type: 'PointIcon',\n color: '#f7ff01',\n size: 10,\n pixelOffset: new Cartesian2(0, 10),\n ellipse: {\n semiMinorAxis: 50.0,\n semiMajorAxis: 50.0,\n material: new CircleRippleMaterialProperty({\n color: Color.fromCssColorString(transformRgb('#f7ff01', 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 this.primitiveLayer = null;\n }\n\n // 高亮图层增加feature\n addHighlightFeature = feature => {\n if (feature) {\n if (feature.primitive) {\n return this.addHighlightPrimitive(feature);\n }\n let type = feature?.data?.geometry?.type;\n if (['LineString', 'MultiLineString'].includes(type)) {\n this.layer.style = lineStyle;\n } else if (['Polygon', 'MultiPolygon'].includes(type)) {\n this.layer.style = polygonStyle;\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 if (feature?._polygon?._hierarchy?._value?.positions) {\n this.layer.style = polygonStyle;\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 }\n };\n\n addHighlightPrimitive = feature => {\n if (feature.primitive instanceof LineFlowLayer) {\n this.clearPrimitive();\n const data = [feature.values_];\n this.primitiveLayer = new LineFlowLayer({\n fadeOutColor: '#f7ff01',\n data: [feature.values_],\n });\n this.map.scene.primitives.add(this.primitiveLayer);\n this.map.scene.primitives.raiseToTop(this.primitiveLayer);\n this.layer.data = data;\n this.layer.loadData(data);\n }\n };\n\n clearPrimitive() {\n if (this.primitiveLayer) {\n this.map.scene.primitives.remove(this.primitiveLayer);\n }\n }\n\n clearFeatures() {\n this.layer.entities.removeAll();\n this.clearPrimitive();\n }\n\n destroy() {\n this.map.dataSources.remove(this.layer);\n this.clearPrimitive();\n }\n}\n"],"mappings":"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"}
package/lib/map/Popup.js CHANGED
@@ -11,7 +11,8 @@ var _icons = require("@ant-design/icons");
11
11
  var _InfoTool = _interopRequireDefault(require("./InfoTool"));
12
12
  var _classnames = _interopRequireDefault(require("classnames"));
13
13
  var _turf = require("@turf/turf");
14
- var _useProps = _interopRequireDefault(require("../_util/useProps"));
14
+ var _Polygon = _interopRequireDefault(require("../polygon/Polygon"));
15
+ var _Polyline = _interopRequireDefault(require("../polyline/Polyline"));
15
16
  var _createFeatureCollection = require("../feature-layer/createFeatureCollection");
16
17
  var _HighlightLayer = _interopRequireDefault(require("../highlight-layer/HighlightLayer"));
17
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
@@ -88,6 +89,7 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
88
89
  map: map
89
90
  }));
90
91
  var highlightLayer = (0, _react.useRef)();
92
+ var viewRef = (0, _react.useRef)();
91
93
  (0, _react.useEffect)(function () {
92
94
  highlightLayer.current = new _HighlightLayer["default"]({
93
95
  map: map
@@ -105,7 +107,7 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
105
107
  };
106
108
  });
107
109
  var showTemplate = function showTemplate(feature) {
108
- var _feature$_polyline, _feature$_position, _feature$position;
110
+ var _feature$_position;
109
111
  var layer = map.getLayerByFeature(feature);
110
112
  if (!(layer !== null && layer !== void 0 && layer.template)) {
111
113
  return;
@@ -116,26 +118,58 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
116
118
  if (layer) {
117
119
  var template = layer.template;
118
120
  var labelField = layer.labelField;
119
- if (labelField) {
120
- setTitle(properties[labelField]);
121
- }
122
- if (template) {
123
- setContent(template(feature));
124
- }
121
+ setTitle(labelField && properties[labelField]);
122
+ setContent(feature && template(feature));
125
123
  }
126
- var geometryType = 'point';
127
- var _positions = (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) || [];
128
- var position = (feature === null || feature === void 0 || (_feature$_position = feature._position) === null || _feature$_position === void 0 ? void 0 : _feature$_position._value) || _positions[(_positions === null || _positions === void 0 ? void 0 : _positions.length) - 1];
124
+ var position = feature === null || feature === void 0 || (_feature$_position = feature._position) === null || _feature$_position === void 0 ? void 0 : _feature$_position._value;
129
125
  // 偏移量
130
126
  var offset = {
131
127
  x: 5,
132
128
  y: 76
133
129
  };
134
- if (!(feature !== null && feature !== void 0 && (_feature$position = feature.position) !== null && _feature$position !== void 0 && _feature$position._value)) {
135
- offset = {
136
- x: 0,
137
- y: 10
138
- };
130
+ var height = 1000;
131
+ if (feature instanceof _Polygon["default"]) {
132
+ var _feature$_polygon;
133
+ 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) {
134
+ var cartographic = _cesium.Cartographic.fromCartesian(v); // 经纬高对象
135
+ var lng = _cesium.Math.toDegrees(cartographic.longitude);
136
+ var lat = _cesium.Math.toDegrees(cartographic.latitude);
137
+ return [lng, lat];
138
+ })];
139
+ var _handelGeometry = handelGeometry({
140
+ data: {
141
+ geometry: {
142
+ type: 'Polygon',
143
+ coordinates: coordinates
144
+ }
145
+ }
146
+ }),
147
+ _position = _handelGeometry.position,
148
+ _offset = _handelGeometry._offset;
149
+ position = _position;
150
+ offset = _offset;
151
+ height = null;
152
+ } else if (feature instanceof _Polyline["default"]) {
153
+ var _feature$_polyline;
154
+ var _coordinates = ((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) {
155
+ var cartographic = _cesium.Cartographic.fromCartesian(v); // 经纬高对象
156
+ var lng = _cesium.Math.toDegrees(cartographic.longitude);
157
+ var lat = _cesium.Math.toDegrees(cartographic.latitude);
158
+ return [lng, lat];
159
+ });
160
+ var _handelGeometry2 = handelGeometry({
161
+ data: {
162
+ geometry: {
163
+ type: 'LineString',
164
+ coordinates: _coordinates
165
+ }
166
+ }
167
+ }),
168
+ _position2 = _handelGeometry2.position,
169
+ _offset2 = _handelGeometry2._offset;
170
+ position = _position2;
171
+ offset = _offset2;
172
+ height = null;
139
173
  }
140
174
  if (feature.primitive) {
141
175
  var _midpoint$geometry;
@@ -155,13 +189,11 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
155
189
 
156
190
  // 影像图层的数据
157
191
  if (feature instanceof _cesium.ImageryLayerFeatureInfo) {
158
- var _handelGeometry = handelGeometry(feature),
159
- _position = _handelGeometry.position,
160
- _geometryType = _handelGeometry.geometryType,
161
- _offset = _handelGeometry._offset;
162
- position = _position;
163
- geometryType = _geometryType;
164
- offset = _offset;
192
+ var _handelGeometry3 = handelGeometry(feature),
193
+ _position3 = _handelGeometry3.position,
194
+ _offset3 = _handelGeometry3._offset;
195
+ position = _position3;
196
+ offset = _offset3;
165
197
  }
166
198
  infoToolRef.current.add({
167
199
  position: position,
@@ -173,6 +205,13 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
173
205
  });
174
206
  map.popupRef = feature;
175
207
  highlightLayer.current.addHighlightFeature(feature);
208
+ if (!viewRef.current) {
209
+ getView();
210
+ }
211
+ map.fitView({
212
+ entity: feature,
213
+ height: height
214
+ });
176
215
  };
177
216
  var hideTemplate = function hideTemplate(_layer) {
178
217
  if (_layer) {
@@ -210,8 +249,45 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
210
249
  highlightLayer.current.clearFeatures();
211
250
 
212
251
  // map.fitView();
213
- };
214
252
 
253
+ setView();
254
+ };
255
+ var getView = function getView() {
256
+ //获取当前视角的pitch
257
+ var pitch = map.camera.pitch;
258
+ //获取当前视角的heading
259
+ var heading = map.camera.heading;
260
+ //获取当前视角的postion(位置)
261
+ var position = map.camera.position;
262
+ viewRef.current = {
263
+ "x": position.x,
264
+ "y": position.y,
265
+ "z": position.z,
266
+ "pitch": pitch,
267
+ "heading": heading
268
+ };
269
+ };
270
+ var setView = function setView() {
271
+ if (viewRef.current) {
272
+ map.camera.flyTo({
273
+ //定位到范围中心点
274
+ destination: {
275
+ x: viewRef.current.x,
276
+ y: viewRef.current.y,
277
+ z: viewRef.current.z
278
+ },
279
+ orientation: {
280
+ heading: viewRef.current.heading,
281
+ //左右方向
282
+ pitch: viewRef.current.pitch,
283
+ //上下方向
284
+ roll: 0.0
285
+ },
286
+ duration: 2
287
+ });
288
+ viewRef.current = null;
289
+ }
290
+ };
215
291
  return /*#__PURE__*/_react["default"].createElement("div", {
216
292
  ref: popupRef,
217
293
  className: (0, _classnames["default"])('cesium-popup', {
@@ -1 +1 @@
1
- {"version":3,"file":"Popup.js","names":["_react","_interopRequireWildcard","require","_cesium","_icons","_InfoTool","_interopRequireDefault","_classnames","_turf","_useProps","_createFeatureCollection","_HighlightLayer","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","r","l","t","Symbol","iterator","e","n","u","a","f","o","next","done","push","value","length","Array","isArray","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","minLen","_arrayLikeToArray","toString","slice","constructor","name","from","test","iter","len","arr2","handelGeometry","entity","_entity$data","_midpoint","geometry","data","type","coordinates","midpoint","position","offset","x","y","includes","point1","point2","point","lngLatArr","Midpoint","polygon","Polygon","centerOfMass","Cartesian3","fromDegrees","apply","geometryType","_offset","exports","Popup","forwardRef","props","ref","map","_useState","useState","_useState2","content","setContent","_useState3","_useState4","title","setTitle","popupRef","useRef","featureRef","infoToolRef","InfoTool","highlightLayer","useEffect","current","HighlightLayer","destroy","useImperativeHandle","showTemplate","hideTemplate","feature","_feature$_polyline","_feature$_position","_feature$position","layer","getLayerByFeature","template","properties","getProperties","values_","labelField","_positions","_polyline","_value","_position","primitive","_midpoint$geometry","transformGeometry","geometryInfo","_geometry$coordinates","ImageryLayerFeatureInfo","_handelGeometry","_geometryType","add","element","inputFeature","addHighlightFeature","_layer","getLayerByKey","_highlightLayer","onClose","judgeAbnormal","_ref","status","_infoToolRef$current","onCloseTemplateBefore","remove","entities","getById","clearFeatures","createElement","className","classnames","CloseOutlined","width","height","onClick","id","_default"],"sources":["map/Popup.jsx"],"sourcesContent":["import React, { useRef, useState, useImperativeHandle, forwardRef, useEffect } from 'react';\nimport { ImageryLayerFeatureInfo, Cartesian3 } from 'cesium';\nimport { CloseOutlined } from '@ant-design/icons';\nimport InfoTool from './InfoTool';\nimport classnames from 'classnames';\nimport { point, midpoint as Midpoint, polygon as Polygon, centerOfMass } from '@turf/turf';\nimport useProps from '../_util/useProps';\nimport { transformGeometry } from '../feature-layer/createFeatureCollection';\nimport HighlightLayer from '../highlight-layer/HighlightLayer';\n\nexport const handelGeometry = entity => {\n let geometry = entity?.data?.geometry;\n let type = geometry?.type;\n let coordinates = geometry?.coordinates;\n\n let midpoint = entity?.data; // 默认点\n let position = null;\n let offset = {\n x: 0,\n y: 20,\n };\n\n if (['MultiLineString', 'LineString'].includes(type) && coordinates?.length) {\n let point1 = null;\n let point2 = null;\n // 线\n if (coordinates.length > 1) {\n point1 = point(coordinates[0]);\n point2 = point(coordinates[1]);\n } else {\n let lngLatArr = coordinates[0];\n point1 = point(lngLatArr[0]);\n point2 = point(lngLatArr[1]);\n }\n midpoint = Midpoint(point1, point2);\n } else if (['Polygon', 'MultiPolygon'].includes(type)) {\n // 面\n // 注意:polygon首尾坐标要一致\n let polygon = Polygon(coordinates);\n midpoint = centerOfMass(polygon);\n } else if (['Point'].includes(type)) {\n offset = {\n x: 5,\n y: 20,\n };\n }\n if (midpoint?.geometry?.coordinates) {\n position = Cartesian3.fromDegrees(...midpoint.geometry.coordinates);\n }\n\n return {\n position,\n geometryType: type,\n _offset: offset,\n };\n};\n\nconst Popup = forwardRef((props, ref) => {\n const { map } = props;\n\n const [content, setContent] = useState(null);\n const [title, setTitle] = useState(null);\n const popupRef = useRef();\n\n const featureRef = useRef();\n const infoToolRef = useRef(new InfoTool({ map }));\n const highlightLayer = useRef();\n\n useEffect(() => {\n highlightLayer.current = new HighlightLayer({ map });\n map.highlightLayer = highlightLayer.current;\n\n return () => {\n highlightLayer.current.destroy();\n map.highlightLayer = null;\n };\n }, []);\n\n useImperativeHandle(ref, () => {\n return {\n showTemplate,\n hideTemplate,\n };\n });\n\n const showTemplate = feature => {\n let layer = map.getLayerByFeature(feature);\n if (!layer?.template) {\n return;\n }\n\n let properties = map.getProperties(feature);\n feature.values_ = properties;\n featureRef.current = feature;\n if (layer) {\n let template = layer.template;\n let labelField = layer.labelField;\n\n if (labelField) {\n setTitle(properties[labelField]);\n }\n\n if (template) {\n setContent(template(feature));\n }\n }\n\n let geometryType = 'point';\n let _positions = feature?._polyline?._positions?._value || [];\n let position = feature?._position?._value || _positions[_positions?.length - 1];\n // 偏移量\n let offset = {\n x: 5,\n y: 76,\n };\n\n if (!feature?.position?._value) {\n offset = {\n x: 0,\n y: 10,\n };\n }\n\n if (feature.primitive) {\n offset = {\n x: 0,\n y: 20,\n };\n const geometry = transformGeometry(properties.geometryInfo);\n const [point1, point2] = geometry.coordinates[0];\n const midpoint = Midpoint(point1, point2);\n if (midpoint?.geometry?.coordinates) {\n position = Cartesian3.fromDegrees(...midpoint.geometry.coordinates);\n }\n }\n\n // 影像图层的数据\n if (feature instanceof ImageryLayerFeatureInfo) {\n let { position: _position, geometryType: _geometryType, _offset } = handelGeometry(\n feature,\n );\n position = _position;\n geometryType = _geometryType;\n offset = _offset;\n }\n infoToolRef.current.add({\n position: position,\n content: '',\n element: popupRef.current,\n inputFeature: feature,\n type: '',\n offset,\n });\n\n map.popupRef = feature;\n highlightLayer.current.addHighlightFeature(feature);\n };\n\n const hideTemplate = _layer => {\n if (_layer) {\n let layer = typeof _layer === 'string' ? map.getLayerByKey(_layer) : _layer;\n\n if (layer && layer.key && map.popupRef) {\n let _highlightLayer = map.getLayerByFeature(map.popupRef);\n if (_highlightLayer.key === layer.key) {\n onClose();\n }\n }\n } else {\n onClose();\n }\n };\n\n // 判断点位异常-点位异常展示红色\n function judgeAbnormal() {\n const { status } = map.getProperties(featureRef.current) || {};\n\n return status && [1, 2, 4].includes(status);\n }\n\n // 关闭气泡\n const onClose = () => {\n map.onCloseTemplateBefore && map.onCloseTemplateBefore(featureRef.current);\n map.popupRef = null;\n featureRef.current = null;\n infoToolRef?.current?.remove();\n\n if (map.entities.getById('highlight-1')) {\n map.entities.remove(map.entities.getById('highlight-1'));\n }\n\n // 清除高亮\n highlightLayer.current.clearFeatures();\n\n // map.fitView();\n };\n return (\n <div\n ref={popupRef}\n className={classnames('cesium-popup', { 'cesium-popup-abnormal': judgeAbnormal() })}\n >\n <CloseOutlined\n className={classnames('cesium-popup-close')}\n width={16}\n height={16}\n onClick={onClose}\n />\n <div className={classnames('cesium-popup-title', { 'cesium-popup-no-title': !title })}>\n {title}\n </div>\n <div className={classnames('cesium-popup-content')} id=\"content\">\n {content}\n </div>\n </div>\n );\n});\n\nexport default Popup;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Popup.js","names":["_react","_interopRequireWildcard","require","_cesium","_icons","_InfoTool","_interopRequireDefault","_classnames","_turf","_Polygon","_Polyline","_createFeatureCollection","_HighlightLayer","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","r","l","t","Symbol","iterator","e","n","u","a","f","o","next","done","push","value","length","Array","isArray","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","minLen","_arrayLikeToArray","toString","slice","constructor","name","from","test","iter","len","arr2","handelGeometry","entity","_entity$data","_midpoint","geometry","data","type","coordinates","midpoint","position","offset","x","y","includes","point1","point2","point","lngLatArr","Midpoint","polygon","Polygon","centerOfMass","Cartesian3","fromDegrees","apply","geometryType","_offset","exports","Popup","forwardRef","props","ref","map","_useState","useState","_useState2","content","setContent","_useState3","_useState4","title","setTitle","popupRef","useRef","featureRef","infoToolRef","InfoTool","highlightLayer","viewRef","useEffect","current","HighlightLayer","destroy","useImperativeHandle","showTemplate","hideTemplate","feature","_feature$_position","layer","getLayerByFeature","template","properties","getProperties","values_","labelField","_position","_value","height","PolygonGeo","_feature$_polygon","_polygon","_hierarchy","positions","v","cartographic","Cartographic","fromCartesian","lng","CesiumMath","toDegrees","longitude","lat","latitude","_handelGeometry","PolylineGeo","_feature$_polyline","_polyline","_positions","_handelGeometry2","primitive","_midpoint$geometry","transformGeometry","geometryInfo","_geometry$coordinates","ImageryLayerFeatureInfo","_handelGeometry3","add","element","inputFeature","addHighlightFeature","getView","fitView","_layer","getLayerByKey","_highlightLayer","onClose","judgeAbnormal","_ref","status","_infoToolRef$current","onCloseTemplateBefore","remove","entities","getById","clearFeatures","setView","pitch","camera","heading","z","flyTo","destination","orientation","roll","duration","createElement","className","classnames","CloseOutlined","width","onClick","id","_default"],"sources":["map/Popup.jsx"],"sourcesContent":["import React, { useRef, useState, useImperativeHandle, forwardRef, useEffect } from 'react';\nimport { ImageryLayerFeatureInfo, Cartesian3, Cartographic, Math as CesiumMath } from 'cesium';\nimport { CloseOutlined } from '@ant-design/icons';\nimport InfoTool from './InfoTool';\nimport classnames from 'classnames';\nimport { point, midpoint as Midpoint, polygon as Polygon, centerOfMass } from '@turf/turf';\nimport PolygonGeo from '../polygon/Polygon';\nimport PolylineGeo from '../polyline/Polyline';\nimport { transformGeometry } from '../feature-layer/createFeatureCollection';\nimport HighlightLayer from '../highlight-layer/HighlightLayer';\n\nexport const handelGeometry = entity => {\n let geometry = entity?.data?.geometry;\n let type = geometry?.type;\n let coordinates = geometry?.coordinates;\n\n let midpoint = entity?.data; // 默认点\n let position = null;\n let offset = {\n x: 0,\n y: 20,\n };\n\n if (['MultiLineString', 'LineString'].includes(type) && coordinates?.length) {\n let point1 = null;\n let point2 = null;\n // 线\n if (coordinates.length > 1) {\n point1 = point(coordinates[0]);\n point2 = point(coordinates[1]);\n } else {\n let lngLatArr = coordinates[0];\n point1 = point(lngLatArr[0]);\n point2 = point(lngLatArr[1]);\n }\n midpoint = Midpoint(point1, point2);\n } else if (['Polygon', 'MultiPolygon'].includes(type)) {\n // 面\n // 注意:polygon首尾坐标要一致\n let polygon = Polygon(coordinates);\n midpoint = centerOfMass(polygon);\n } else if (['Point'].includes(type)) {\n offset = {\n x: 5,\n y: 20,\n };\n }\n if (midpoint?.geometry?.coordinates) {\n position = Cartesian3.fromDegrees(...midpoint.geometry.coordinates);\n }\n\n return {\n position,\n geometryType: type,\n _offset: offset,\n };\n};\n\nconst Popup = forwardRef((props, ref) => {\n const { map } = props;\n\n const [content, setContent] = useState(null);\n const [title, setTitle] = useState(null);\n const popupRef = useRef();\n\n const featureRef = useRef();\n const infoToolRef = useRef(new InfoTool({ map }));\n const highlightLayer = useRef();\n const viewRef = useRef();\n\n useEffect(() => {\n highlightLayer.current = new HighlightLayer({ map });\n map.highlightLayer = highlightLayer.current;\n\n return () => {\n highlightLayer.current.destroy();\n map.highlightLayer = null;\n };\n }, []);\n\n useImperativeHandle(ref, () => {\n return {\n showTemplate,\n hideTemplate,\n };\n });\n\n const showTemplate = feature => {\n let layer = map.getLayerByFeature(feature);\n if (!layer?.template) {\n return;\n }\n\n let properties = map.getProperties(feature);\n feature.values_ = properties;\n featureRef.current = feature;\n if (layer) {\n let template = layer.template;\n let labelField = layer.labelField;\n\n setTitle(labelField && properties[labelField]);\n setContent(feature && template(feature));\n }\n\n\n let position = feature?._position?._value;\n // 偏移量\n let offset = {\n x: 5,\n y: 76,\n };\n\n let height = 1000;\n if (feature instanceof PolygonGeo) {\n let coordinates = [(feature?._polygon?._hierarchy?._value?.positions || []).map(v => {\n const cartographic = Cartographic.fromCartesian(v); // 经纬高对象\n const lng = CesiumMath.toDegrees(cartographic.longitude);\n const lat = CesiumMath.toDegrees(cartographic.latitude);\n return [lng, lat]\n })];\n let { position: _position, _offset } = handelGeometry({data: {geometry: {type: 'Polygon', coordinates}}});\n position = _position;\n offset = _offset;\n height = null;\n } else if (feature instanceof PolylineGeo) {\n let coordinates = (feature?._polyline?._positions?._value || []).map(v => {\n const cartographic = Cartographic.fromCartesian(v); // 经纬高对象\n const lng = CesiumMath.toDegrees(cartographic.longitude);\n const lat = CesiumMath.toDegrees(cartographic.latitude);\n return [lng, lat]\n });\n let { position: _position, _offset } = handelGeometry({data: {geometry: {type: 'LineString', coordinates}}});\n position = _position;\n offset = _offset;\n height = null;\n }\n\n\n if (feature.primitive) {\n offset = {\n x: 0,\n y: 20,\n };\n const geometry = transformGeometry(properties.geometryInfo);\n const [point1, point2] = geometry.coordinates[0];\n const midpoint = Midpoint(point1, point2);\n if (midpoint?.geometry?.coordinates) {\n position = Cartesian3.fromDegrees(...midpoint.geometry.coordinates);\n }\n }\n\n // 影像图层的数据\n if (feature instanceof ImageryLayerFeatureInfo) {\n let { position: _position, _offset } = handelGeometry(feature);\n position = _position;\n offset = _offset;\n }\n\n infoToolRef.current.add({\n position: position,\n content: '',\n element: popupRef.current,\n inputFeature: feature,\n type: '',\n offset,\n });\n\n map.popupRef = feature;\n highlightLayer.current.addHighlightFeature(feature);\n\n if (!viewRef.current) {\n getView();\n }\n\n map.fitView({ entity: feature, height });\n };\n\n const hideTemplate = _layer => {\n if (_layer) {\n let layer = typeof _layer === 'string' ? map.getLayerByKey(_layer) : _layer;\n\n if (layer && layer.key && map.popupRef) {\n let _highlightLayer = map.getLayerByFeature(map.popupRef);\n if (_highlightLayer.key === layer.key) {\n onClose();\n }\n }\n } else {\n onClose();\n }\n };\n\n // 判断点位异常-点位异常展示红色\n function judgeAbnormal() {\n const { status } = map.getProperties(featureRef.current) || {};\n\n return status && [1, 2, 4].includes(status);\n }\n\n // 关闭气泡\n const onClose = () => {\n map.onCloseTemplateBefore && map.onCloseTemplateBefore(featureRef.current);\n map.popupRef = null;\n featureRef.current = null;\n infoToolRef?.current?.remove();\n\n if (map.entities.getById('highlight-1')) {\n map.entities.remove(map.entities.getById('highlight-1'));\n }\n\n // 清除高亮\n highlightLayer.current.clearFeatures();\n\n // map.fitView();\n\n setView();\n };\n\n const getView = () => {\n //获取当前视角的pitch\n let pitch = map.camera.pitch;\n //获取当前视角的heading\n let heading = map.camera.heading;\n //获取当前视角的postion(位置)\n let position = map.camera.position;\n\n viewRef.current = {\n \"x\": position.x,\n \"y\":position.y,\n \"z\": position.z,\n \"pitch\": pitch,\n \"heading\": heading\n }\n }\n\n const setView = () => {\n if (viewRef.current) {\n map.camera.flyTo({ //定位到范围中心点\n destination: {\n x: viewRef.current.x,\n y: viewRef.current.y,\n z: viewRef.current.z\n },\n orientation: {\n heading: viewRef.current.heading, //左右方向\n pitch: viewRef.current.pitch, //上下方向\n roll: 0.0\n },\n duration: 2\n })\n\n viewRef.current = null\n }\n }\n return (\n <div\n ref={popupRef}\n className={classnames('cesium-popup', { 'cesium-popup-abnormal': judgeAbnormal() })}\n >\n <CloseOutlined\n className={classnames('cesium-popup-close')}\n width={16}\n height={16}\n onClick={onClose}\n />\n <div className={classnames('cesium-popup-title', { 'cesium-popup-no-title': !title })}>\n {title}\n </div>\n <div className={classnames('cesium-popup-content')} id=\"content\">\n {content}\n </div>\n </div>\n );\n});\n\nexport default Popup;\n"],"mappings":"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"}
package/lib/map/index.js CHANGED
@@ -60,7 +60,12 @@ function Map(props) {
60
60
  onEvents = _props$onEvents === void 0 ? {} : _props$onEvents,
61
61
  baseMapUrl = props.baseMapUrl,
62
62
  _props$duration = props.duration,
63
- duration = _props$duration === void 0 ? 3 : _props$duration;
63
+ duration = _props$duration === void 0 ? 3 : _props$duration,
64
+ _props$baseMapStyle = props.baseMapStyle,
65
+ baseMapStyle = _props$baseMapStyle === void 0 ? {
66
+ imageryProvider: 'GeoQImageryProvider',
67
+ style: 'Blue'
68
+ } : _props$baseMapStyle;
64
69
  var _useState = (0, _react.useState)(false),
65
70
  _useState2 = _slicedToArray(_useState, 2),
66
71
  mapLoaded = _useState2[0],
@@ -156,8 +161,8 @@ function Map(props) {
156
161
  maxZoom: maxZoom && Number(maxZoom) || 20
157
162
  };
158
163
  _cesium.Ion.defaultAccessToken = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJhZjc0ZDQ1ZS0wNWNhLTRhMDQtODJmYy03NTcyNDcxYzgzMDUiLCJpZCI6NzE4MTQsImlhdCI6MTYzNTQ3NzgyNX0.4TrdZWPWc9_6jLeGe90bRmBPB14XptwinSewVMu1iCE';
159
- var imageryProvider = new _base.Imagery.GeoQImageryProvider({
160
- style: 'Blue',
164
+ var imageryProvider = new _base.Imagery[baseMapStyle.imageryProvider]({
165
+ style: baseMapStyle.style,
161
166
  url: baseMapUrl,
162
167
  crs: 'WGS84'
163
168
  });
@@ -206,8 +211,8 @@ function Map(props) {
206
211
  // 底图服务
207
212
  map.baseMap = new _base.BaseMap({
208
213
  map: map,
209
- imageryProvider: 'GeoQImageryProvider',
210
- style: 'Blue',
214
+ imageryProvider: baseMapStyle.imageryProvider,
215
+ style: baseMapStyle.style,
211
216
  layer: imageryProvider
212
217
  });
213
218
 
@@ -426,6 +431,17 @@ function Map(props) {
426
431
  setTip(null);
427
432
  };
428
433
 
434
+ // 根据图层条件设置图层选中
435
+ map.showTemplateByFilter = function (key, field, value) {
436
+ var layer = map.getLayerByKey(key);
437
+ if (layer !== null && layer !== void 0 && layer.show) {
438
+ var feature = layer.getFeatureByFieldValue(field, value);
439
+ if (feature) {
440
+ map.showTemplate(feature);
441
+ }
442
+ }
443
+ };
444
+
429
445
  // 展示看板
430
446
  map.showTemplate = function (feature) {
431
447
  popupRef.current.showTemplate(feature);
@@ -546,7 +562,7 @@ function Map(props) {
546
562
  return feature._id;
547
563
  };
548
564
 
549
- // 鼠标移入移除
565
+ // 鼠标移入移出
550
566
  handlePoint.setInputAction(function (event) {
551
567
  event.lonLat = map.getPositionLonLat({
552
568
  position: event.endPosition
@@ -556,6 +572,14 @@ function Map(props) {
556
572
  position: event.endPosition
557
573
  });
558
574
  if (feature) {
575
+ var _map$getLayerByFeatur;
576
+ var labelField = (_map$getLayerByFeatur = map.getLayerByFeature(feature)) === null || _map$getLayerByFeatur === void 0 ? void 0 : _map$getLayerByFeatur.labelField;
577
+ if (labelField) {
578
+ var label = feature.properties[labelField]._value;
579
+ if (label) {
580
+ map.showTip(label);
581
+ }
582
+ }
559
583
  registerEvent(feature, 'onMouseMove');
560
584
 
561
585
  // 判断是否在图形内移动
@@ -579,6 +603,7 @@ function Map(props) {
579
603
  registerEvent(hoverFeature, 'onMouseLeave');
580
604
  }
581
605
  hoverFeature = null;
606
+ map.hideTip();
582
607
  }
583
608
  }, _cesium.ScreenSpaceEventType.MOUSE_MOVE);
584
609
 
@@ -651,7 +676,7 @@ function Map(props) {
651
676
  pitch: _cesium.Math.toRadians(-35),
652
677
  roll: 0.0
653
678
  },
654
- duration: 3
679
+ duration: 2
655
680
  }, options));
656
681
  } else {
657
682
  map.camera.flyTo({
@@ -660,7 +685,7 @@ function Map(props) {
660
685
  pitch: _cesium.Math.toRadians(defaultPitch),
661
686
  roll: 0.0
662
687
  },
663
- duration: 3
688
+ duration: 2
664
689
  });
665
690
  }
666
691
  }
@@ -752,6 +777,7 @@ Map.propTypes = {
752
777
  tk: _propTypes["default"].string.isRequired,
753
778
  onEvents: _propTypes["default"].object,
754
779
  baseMapUrl: _propTypes["default"].string,
755
- duration: _propTypes["default"].number
780
+ duration: _propTypes["default"].number,
781
+ baseMapStyle: _propTypes["default"].object
756
782
  };
757
783
  //# sourceMappingURL=index.js.map