@vtx/cs-map 1.0.42 → 1.0.44
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.
- package/lib/_util/getDefaultMapInfo.js.map +1 -1
- package/lib/cesium-tiles-layer/CesiumTilesLayer.js.map +1 -1
- package/lib/cesium-tiles-layer/index.js.map +1 -1
- package/lib/demand-layer/DemandLayer.js +0 -1
- package/lib/demand-layer/DemandLayer.js.map +1 -1
- package/lib/feature-layer/FeatureLayer.js +61 -41
- package/lib/feature-layer/FeatureLayer.js.map +1 -1
- package/lib/feature-layer/index.js +7 -2
- package/lib/feature-layer/index.js.map +1 -1
- package/lib/fly-line-layer/FlyLineLayer.js +7 -7
- package/lib/fly-line-layer/FlyLineLayer.js.map +1 -1
- package/lib/fly-line-layer/index.js.map +1 -1
- package/lib/group-layer/GroupLayer.js +2 -2
- package/lib/group-layer/GroupLayer.js.map +1 -1
- package/lib/group-layer/index.js +2 -2
- package/lib/group-layer/index.js.map +1 -1
- package/lib/heatmap-layer/index.js.map +1 -1
- package/lib/line-flow-layer/LineFlowLayer.js.map +1 -1
- package/lib/line-flow-layer/index.js.map +1 -1
- package/lib/map/Layers.js +8 -4
- package/lib/map/Layers.js.map +1 -1
- package/lib/map/Popup.js +109 -12
- package/lib/map/Popup.js.map +1 -1
- package/lib/map/index.js +2 -2
- package/lib/map/index.js.map +1 -1
- package/lib/map/style/index.css +63 -0
- package/lib/map/style/index.less +86 -0
- package/lib/renderer/index.js +2 -1
- package/lib/renderer/index.js.map +1 -1
- package/lib/tools/index.js +2 -1
- package/lib/tools/index.js.map +1 -1
- package/lib/tools/layer-control/index.js +1 -2
- package/lib/tools/layer-control/index.js.map +1 -1
- package/lib/tools/layer-control-popover/LayersCheckService.js +90 -0
- package/lib/tools/layer-control-popover/LayersCheckService.js.map +1 -0
- package/lib/tools/layer-control-popover/index.js +230 -0
- package/lib/tools/layer-control-popover/index.js.map +1 -0
- package/lib/tools/style/index.css +57 -0
- package/lib/tools/style/index.less +51 -0
- package/lib/water-surface-layer/index.js +3 -3
- package/lib/water-surface-layer/index.js.map +1 -1
- package/package.json +122 -122
package/lib/map/Layers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Layers.js","names":["_EventEmitter2","_interopRequireDefault","require","_ImageLayer","_FeatureLayer","_cesium","_lodash","obj","__esModule","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","prototype","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","Number","_inherits","subClass","superClass","create","constructor","value","_setPrototypeOf","o","p","setPrototypeOf","bind","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","arguments","apply","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","e","getPrototypeOf","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","minLen","_arrayLikeToArray","n","toString","slice","name","Array","from","test","iter","iterator","isArray","len","arr2","getAllKeys","data","keys","map","v","_v$layers","layers","push","getLayersVisibleKeys","visible","_v$layers2","layer","getLayerByKey","_layer$group","group","f","hasOwnProperty","show","_keys","getLayers","_v$layers3","includes","Layers","_EventEmitter","_super","options","_this","onChange","emit","addLayer","index","CustomDataSource","dataSources","add","ImageryLayer","scene","imageryLayers","Primitive","primitives","layerControl","removeLayer","remove","filter","clearLayers","getImageryLayers","removeAll","entities","getShowKeys","getHiddenKeys","getImageLayers","ImageLayer","getFeatureLayers","FeatureLayer","_map$imageryLayers","_layers","setShowByKeys","a","_layer$group2","_","cloneDeep","isEqual","setGroup","setVisible","setHideByKeys","EventEmitter","_default","exports"],"sources":["map/Layers.js"],"sourcesContent":["import EventEmitter from '../_util/EventEmitter';\r\nimport ImageLayer from \"../image-layer/ImageLayer\";\r\nimport FeatureLayer from \"../feature-layer/FeatureLayer\";\r\nimport {CustomDataSource, ImageryLayer, Primitive} from 'cesium';\r\nimport _ from 'lodash';\r\n\r\n// 获取所有keys\r\nconst getAllKeys = data => {\r\n let keys = [];\r\n data.map(v => {\r\n if (v.layers?.length) {\r\n keys.push(...getAllKeys(v.layers));\r\n } else {\r\n keys.push(v.key);\r\n }\r\n });\r\n\r\n return keys;\r\n};\r\n\r\n// 获取显示或隐藏的keys\r\nconst getLayersVisibleKeys = (data, map, visible = true) => {\r\n let keys = [];\r\n data.map(v => {\r\n if (v.key) {\r\n let layer = map.getLayerByKey(v.key);\r\n if (layer) {\r\n if (layer.group?.length) {\r\n if (visible) {\r\n layer.group.map(f => {\r\n if (!f.hasOwnProperty('show') || f.show) {\r\n keys.push(f.key)\r\n }\r\n })\r\n } else {\r\n layer.group.map(f => {\r\n if (!f.show) {\r\n keys.push(f.key)\r\n }\r\n })\r\n }\r\n } else if (layer.show === visible) {\r\n keys.push(v.key);\r\n }\r\n }\r\n }\r\n if (v.layers?.length) {\r\n let _keys = getLayersVisibleKeys(v.layers, map, visible);\r\n if (_keys?.length) {\r\n keys.push(..._keys);\r\n }\r\n }\r\n });\r\n\r\n return keys;\r\n};\r\n\r\n// 获取图层\r\nconst getLayers = (data, layer, _keys) => {\r\n const layers = [];\r\n\r\n data.map(v => {\r\n if (v.key && v instanceof layer) {\r\n if (_keys) {\r\n const keys = Array.isArray(_keys) ? _keys : [_keys];\r\n if (keys.includes(v.key)) {\r\n layers.push(v.key);\r\n }\r\n } else {\r\n layers.push(v.key);\r\n }\r\n }\r\n\r\n if (v.layers?.length) {\r\n let _keys = getLayers(v.layers, layer);\r\n if (_keys?.length) {\r\n layers.push(..._keys);\r\n }\r\n }\r\n });\r\n\r\n return layers;\r\n};\r\n\r\nclass Layers extends EventEmitter{\r\n constructor(options) {\r\n super();\r\n\r\n this.map = options.map;\r\n\r\n this.layers = [];\r\n }\r\n\r\n // 图层改变的时候\r\n onChange() {\r\n this.emit('change', this.layers);\r\n }\r\n\r\n // 图层新增\r\n addLayer(layer, index) {\r\n const map = this.map;\r\n\r\n if (layer instanceof CustomDataSource) {\r\n map.dataSources.add(layer);\r\n } else if (layer instanceof ImageryLayer) {\r\n if (index) {\r\n map.scene.imageryLayers.add(layer, index);\r\n } else {\r\n map.scene.imageryLayers.add(layer);\r\n }\r\n } else if (layer instanceof Primitive) {\r\n if (index) {\r\n map.scene.primitives.add(layer, index);\r\n } else {\r\n map.scene.primitives.add(layer)\r\n }\r\n }\r\n\r\n // 图层是否含有name字段,作为加入到图层树的判断依据\r\n if (layer.name && layer.layerControl) {\r\n this.layers.push(layer);\r\n this.onChange();\r\n this.emit('add', layer);\r\n }\r\n }\r\n\r\n // 图层移除\r\n removeLayer(layer) {\r\n const map = this.map;\r\n\r\n if (layer instanceof CustomDataSource) {\r\n map.dataSources.remove(layer);\r\n } else if (layer instanceof ImageryLayer) {\r\n map.scene.imageryLayers.remove(layer);\r\n } else if (layer instanceof Primitive) {\r\n map.scene.primitives.remove(layer)\r\n }\r\n\r\n // 图层是否含有name字段,作为加入到图层树的判断依据\r\n if (layer.name && layer.layerControl) {\r\n this.layers = this.layers.filter(v => v !== layer);\r\n this.emit('remove', layer);\r\n this.onChange();\r\n }\r\n };\r\n\r\n // 图层清空\r\n clearLayers() {\r\n const map = this.map;\r\n const imageryLayers = map.getImageryLayers() || [];\r\n\r\n map.dataSources.removeAll();\r\n\r\n imageryLayers.map(layer => {\r\n if (layer?.key) {\r\n map.imageryLayers.remove(layer);\r\n }\r\n });\r\n\r\n map.entities.removeAll();\r\n\r\n this.layers = [];\r\n this.emit('clear');\r\n this.onChange();\r\n };\r\n\r\n // 获取 layers 里面的 key 集合\r\n getAllKeys() {\r\n return getAllKeys(this.layers)\r\n }\r\n\r\n // 获取当前展示的 keys\r\n getShowKeys() {\r\n return getLayersVisibleKeys(this.layers, this.map, true);\r\n }\r\n\r\n // 获取当前隐藏的 keys\r\n getHiddenKeys() {\r\n return getLayersVisibleKeys(this.layers, this.map, false);\r\n }\r\n\r\n // 获取 ImageLayer 图层\r\n getImageLayers(_keys) {\r\n return getLayers(this.layers, ImageLayer, _keys)\r\n }\r\n\r\n // 获取 FeatureLayer 图层\r\n getFeatureLayers(_keys) {\r\n return getLayers(this.layers, FeatureLayer, _keys)\r\n }\r\n\r\n // 根据key查找imageryLayers图层\r\n getImageryLayers(_keys) {\r\n const map = this.map;\r\n\r\n const layers = map?.imageryLayers?._layers || [];\r\n\r\n if (_keys && layers.length) {\r\n const keys = Array.isArray(_keys) ? _keys : [_keys];\r\n\r\n return layers.filter(layer => (layer.key && keys.includes(layer.key)));\r\n }\r\n\r\n return layers;\r\n }\r\n\r\n // 根据 keys 设置图层的显示,其他的隐藏\r\n setShowByKeys(_keys) {\r\n const map = this.map;\r\n\r\n const keys = Array.isArray(_keys) ? _keys : [_keys];\r\n\r\n this.getAllKeys().map(a => {\r\n let layer = map.getLayerByKey(a);\r\n if (layer) {\r\n if (layer.group?.length) {\r\n let group = _.cloneDeep(layer.group);\r\n group.map(v => {\r\n v.show = _keys.includes(v.key)\r\n })\r\n\r\n if (!_.isEqual(group, layer.group)) {\r\n layer.setGroup(group);\r\n }\r\n } else {\r\n let show = keys.includes(a);\r\n if (show !== layer.show) {\r\n layer.setVisible(show);\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n // 根据 keys 设置图层的隐藏,其他的显示\r\n setHideByKeys(_keys) {\r\n const map = this.map;\r\n\r\n const keys = Array.isArray(_keys) ? _keys : [_keys];\r\n\r\n this.getAllKeys().map(a => {\r\n let layer = map.getLayerByKey(a);\r\n if (layer) {\r\n layer.show = !keys.includes(a);\r\n }\r\n });\r\n }\r\n}\r\n\r\nexport default Layers;\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Layers.js","names":["_EventEmitter2","_interopRequireDefault","require","_ImageLayer","_FeatureLayer","_cesium","_lodash","obj","__esModule","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","prototype","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","Number","_inherits","subClass","superClass","create","constructor","value","_setPrototypeOf","o","p","setPrototypeOf","bind","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","arguments","apply","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","e","getPrototypeOf","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","minLen","_arrayLikeToArray","n","toString","slice","name","Array","from","test","iter","iterator","isArray","len","arr2","getAllKeys","data","keys","map","v","_v$layers","layers","push","getLayersVisibleKeys","visible","_v$layers2","layer","getLayerByKey","_layer$group","group","f","hasOwnProperty","show","_keys","getLayers","_v$layers3","includes","Layers","_EventEmitter","_super","options","_this","onChange","emit","addLayer","index","CustomDataSource","dataSources","add","ImageryLayer","scene","imageryLayers","Primitive","primitives","layerControl","isNumber","splice","removeLayer","remove","filter","clearLayers","getImageryLayers","removeAll","entities","getShowKeys","getHiddenKeys","getImageLayers","ImageLayer","getFeatureLayers","FeatureLayer","_map$imageryLayers","_layers","setShowByKeys","a","_layer$group2","cloneDeep","isEqual","setGroup","setVisible","setHideByKeys","EventEmitter","_default","exports"],"sources":["map/Layers.js"],"sourcesContent":["import EventEmitter from '../_util/EventEmitter';\r\nimport ImageLayer from \"../image-layer/ImageLayer\";\r\nimport FeatureLayer from \"../feature-layer/FeatureLayer\";\r\nimport {CustomDataSource, ImageryLayer, Primitive} from 'cesium';\r\nimport {cloneDeep, isEqual, isNumber} from 'lodash';\r\n\r\n// 获取所有keys\r\nconst getAllKeys = data => {\r\n let keys = [];\r\n data.map(v => {\r\n if (v.layers?.length) {\r\n keys.push(...getAllKeys(v.layers));\r\n } else {\r\n keys.push(v.key);\r\n }\r\n });\r\n\r\n return keys;\r\n};\r\n\r\n// 获取显示或隐藏的keys\r\nconst getLayersVisibleKeys = (data, map, visible = true) => {\r\n let keys = [];\r\n data.map(v => {\r\n if (v.key) {\r\n let layer = map.getLayerByKey(v.key);\r\n if (layer) {\r\n if (layer.group?.length) {\r\n if (visible) {\r\n layer.group.map(f => {\r\n if (!f.hasOwnProperty('show') || f.show) {\r\n keys.push(f.key)\r\n }\r\n })\r\n } else {\r\n layer.group.map(f => {\r\n if (!f.show) {\r\n keys.push(f.key)\r\n }\r\n })\r\n }\r\n } else if (layer.show === visible) {\r\n keys.push(v.key);\r\n }\r\n }\r\n }\r\n if (v.layers?.length) {\r\n let _keys = getLayersVisibleKeys(v.layers, map, visible);\r\n if (_keys?.length) {\r\n keys.push(..._keys);\r\n }\r\n }\r\n });\r\n\r\n return keys;\r\n};\r\n\r\n// 获取图层\r\nconst getLayers = (data, layer, _keys) => {\r\n const layers = [];\r\n\r\n data.map(v => {\r\n if (v.key && v instanceof layer) {\r\n if (_keys) {\r\n const keys = Array.isArray(_keys) ? _keys : [_keys];\r\n if (keys.includes(v.key)) {\r\n layers.push(v.key);\r\n }\r\n } else {\r\n layers.push(v.key);\r\n }\r\n }\r\n\r\n if (v.layers?.length) {\r\n let _keys = getLayers(v.layers, layer);\r\n if (_keys?.length) {\r\n layers.push(..._keys);\r\n }\r\n }\r\n });\r\n\r\n return layers;\r\n};\r\n\r\nclass Layers extends EventEmitter{\r\n constructor(options) {\r\n super();\r\n\r\n this.map = options.map;\r\n\r\n this.layers = [];\r\n }\r\n\r\n // 图层改变的时候\r\n onChange() {\r\n this.emit('change', this.layers);\r\n }\r\n\r\n // 图层新增\r\n addLayer(layer, index) {\r\n const map = this.map;\r\n\r\n if (layer instanceof CustomDataSource) {\r\n map.dataSources.add(layer);\r\n } else if (layer instanceof ImageryLayer) {\r\n if (index) {\r\n map.scene.imageryLayers.add(layer, index);\r\n } else {\r\n map.scene.imageryLayers.add(layer);\r\n }\r\n } else if (layer instanceof Primitive) {\r\n if (index) {\r\n map.scene.primitives.add(layer, index);\r\n } else {\r\n map.scene.primitives.add(layer)\r\n }\r\n }\r\n\r\n // 图层是否含有name字段,作为加入到图层树的判断依据\r\n if (layer.name && layer.layerControl) {\r\n if (isNumber(index)) {\r\n this.layers.splice(index, 0, layer)\r\n } else {\r\n this.layers.push(layer);\r\n }\r\n this.onChange();\r\n this.emit('add', layer);\r\n }\r\n }\r\n\r\n // 图层移除\r\n removeLayer(layer) {\r\n const map = this.map;\r\n\r\n if (layer instanceof CustomDataSource) {\r\n map.dataSources.remove(layer);\r\n } else if (layer instanceof ImageryLayer) {\r\n map.scene.imageryLayers.remove(layer);\r\n } else if (layer instanceof Primitive) {\r\n map.scene.primitives.remove(layer)\r\n }\r\n\r\n // 图层是否含有name字段,作为加入到图层树的判断依据\r\n if (layer.name && layer.layerControl) {\r\n this.layers = this.layers.filter(v => v !== layer);\r\n this.emit('remove', layer);\r\n this.onChange();\r\n }\r\n };\r\n\r\n // 图层清空\r\n clearLayers() {\r\n const map = this.map;\r\n const imageryLayers = map.getImageryLayers() || [];\r\n\r\n map.dataSources.removeAll();\r\n\r\n imageryLayers.map(layer => {\r\n if (layer?.key) {\r\n map.imageryLayers.remove(layer);\r\n }\r\n });\r\n\r\n map.entities.removeAll();\r\n\r\n this.layers = [];\r\n this.emit('clear');\r\n this.onChange();\r\n };\r\n\r\n // 获取 layers 里面的 key 集合\r\n getAllKeys() {\r\n return getAllKeys(this.layers)\r\n }\r\n\r\n // 获取当前展示的 keys\r\n getShowKeys() {\r\n return getLayersVisibleKeys(this.layers, this.map, true);\r\n }\r\n\r\n // 获取当前隐藏的 keys\r\n getHiddenKeys() {\r\n return getLayersVisibleKeys(this.layers, this.map, false);\r\n }\r\n\r\n // 获取 ImageLayer 图层\r\n getImageLayers(_keys) {\r\n return getLayers(this.layers, ImageLayer, _keys)\r\n }\r\n\r\n // 获取 FeatureLayer 图层\r\n getFeatureLayers(_keys) {\r\n return getLayers(this.layers, FeatureLayer, _keys)\r\n }\r\n\r\n // 根据key查找imageryLayers图层\r\n getImageryLayers(_keys) {\r\n const map = this.map;\r\n\r\n const layers = map?.imageryLayers?._layers || [];\r\n\r\n if (_keys && layers.length) {\r\n const keys = Array.isArray(_keys) ? _keys : [_keys];\r\n\r\n return layers.filter(layer => (layer.key && keys.includes(layer.key)));\r\n }\r\n\r\n return layers;\r\n }\r\n\r\n // 根据 keys 设置图层的显示,其他的隐藏\r\n setShowByKeys(_keys) {\r\n const map = this.map;\r\n\r\n const keys = Array.isArray(_keys) ? _keys : [_keys];\r\n\r\n this.getAllKeys().map(a => {\r\n let layer = map.getLayerByKey(a);\r\n if (layer) {\r\n if (layer.group?.length) {\r\n let group = cloneDeep(layer.group);\r\n group.map(v => {\r\n v.show = _keys.includes(v.key)\r\n })\r\n\r\n if (!isEqual(group, layer.group)) {\r\n layer.setGroup(group);\r\n }\r\n } else {\r\n let show = keys.includes(a);\r\n if (show !== layer.show) {\r\n layer.setVisible(show);\r\n }\r\n }\r\n }\r\n });\r\n }\r\n\r\n // 根据 keys 设置图层的隐藏,其他的显示\r\n setHideByKeys(_keys) {\r\n const map = this.map;\r\n\r\n const keys = Array.isArray(_keys) ? _keys : [_keys];\r\n\r\n this.getAllKeys().map(a => {\r\n let layer = map.getLayerByKey(a);\r\n if (layer) {\r\n layer.show = !keys.includes(a);\r\n }\r\n });\r\n }\r\n}\r\n\r\nexport default Layers;\r\n"],"mappings":"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"}
|
package/lib/map/Popup.js
CHANGED
|
@@ -8,6 +8,7 @@ exports.handelGeometry = exports["default"] = void 0;
|
|
|
8
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
9
|
var _cesium = require("cesium");
|
|
10
10
|
var _icons = require("@ant-design/icons");
|
|
11
|
+
var _antd = require("antd");
|
|
11
12
|
var _InfoTool = _interopRequireDefault(require("./InfoTool"));
|
|
12
13
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
13
14
|
var _turf = require("@turf/turf");
|
|
@@ -27,6 +28,50 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
|
|
|
27
28
|
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
28
29
|
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
29
30
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
31
|
+
var Cluster = function Cluster(props) {
|
|
32
|
+
var layer = props.layer,
|
|
33
|
+
features = props.features,
|
|
34
|
+
onFeatureClick = props.onFeatureClick,
|
|
35
|
+
onFitView = props.onFitView;
|
|
36
|
+
var labelField = layer.labelField;
|
|
37
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
38
|
+
className: (0, _classnames["default"])('cs-map-popup-cluster')
|
|
39
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
40
|
+
className: (0, _classnames["default"])('cs-map-popup-cluster-header')
|
|
41
|
+
}, "\u5171 ", features.length, " \u4E2A\u70B9\u4F4D", /*#__PURE__*/_react["default"].createElement("a", {
|
|
42
|
+
onClick: onFitView
|
|
43
|
+
}, "\u7F29\u653E\u81F3")), /*#__PURE__*/_react["default"].createElement(_antd.Table, {
|
|
44
|
+
pagination: false,
|
|
45
|
+
size: "small",
|
|
46
|
+
dataSource: features,
|
|
47
|
+
scroll: {
|
|
48
|
+
y: 120
|
|
49
|
+
},
|
|
50
|
+
columns: [{
|
|
51
|
+
title: '名称',
|
|
52
|
+
dataIndex: '名称',
|
|
53
|
+
width: 60,
|
|
54
|
+
render: function render(text, record) {
|
|
55
|
+
return /*#__PURE__*/_react["default"].createElement("a", {
|
|
56
|
+
onClick: function onClick() {
|
|
57
|
+
return onFeatureClick(record);
|
|
58
|
+
}
|
|
59
|
+
}, record.values_[labelField]);
|
|
60
|
+
}
|
|
61
|
+
}, {
|
|
62
|
+
title: '操作',
|
|
63
|
+
dataIndex: '操作',
|
|
64
|
+
width: 30,
|
|
65
|
+
render: function render(text, record) {
|
|
66
|
+
return /*#__PURE__*/_react["default"].createElement("a", {
|
|
67
|
+
onClick: function onClick() {
|
|
68
|
+
return onFeatureClick(record);
|
|
69
|
+
}
|
|
70
|
+
}, "\u5B9A\u4F4D");
|
|
71
|
+
}
|
|
72
|
+
}]
|
|
73
|
+
}));
|
|
74
|
+
};
|
|
30
75
|
var handelGeometry = exports.handelGeometry = function handelGeometry(entity) {
|
|
31
76
|
var _entity$data, _midpoint;
|
|
32
77
|
var geometry = entity === null || entity === void 0 || (_entity$data = entity.data) === null || _entity$data === void 0 ? void 0 : _entity$data.geometry;
|
|
@@ -95,6 +140,59 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
95
140
|
});
|
|
96
141
|
var showTemplate = function showTemplate(feature, highlightLayer) {
|
|
97
142
|
var _feature$_position, _feature$data, _highlightLayer2;
|
|
143
|
+
// 判断是否为聚合点击
|
|
144
|
+
if (feature && feature.length >= 2) {
|
|
145
|
+
var _layer2$_options;
|
|
146
|
+
var points = [];
|
|
147
|
+
var features = feature.map(function (f) {
|
|
148
|
+
var properties = map.getProperties(f);
|
|
149
|
+
points.push((0, _turf.point)(f.geometry));
|
|
150
|
+
return {
|
|
151
|
+
feature: f,
|
|
152
|
+
geometryInfo: (properties === null || properties === void 0 ? void 0 : properties.geometryInfo) || {
|
|
153
|
+
type: 'point',
|
|
154
|
+
lngLats: f.geometry.join(','),
|
|
155
|
+
coordType: 'wgs84'
|
|
156
|
+
},
|
|
157
|
+
values_: properties,
|
|
158
|
+
properties: properties
|
|
159
|
+
};
|
|
160
|
+
});
|
|
161
|
+
var center = (0, _turf.centerOfMass)((0, _turf.featureCollection)(points));
|
|
162
|
+
var _handelGeometry = handelGeometry({
|
|
163
|
+
data: center
|
|
164
|
+
}),
|
|
165
|
+
_position2 = _handelGeometry.position;
|
|
166
|
+
var _layer2 = map.getLayerByFeature(feature[0]);
|
|
167
|
+
infoToolRef.current.add({
|
|
168
|
+
position: _position2,
|
|
169
|
+
content: '',
|
|
170
|
+
element: popupRef.current,
|
|
171
|
+
inputFeature: feature,
|
|
172
|
+
type: '',
|
|
173
|
+
offset: {
|
|
174
|
+
x: 0,
|
|
175
|
+
y: 50
|
|
176
|
+
}
|
|
177
|
+
});
|
|
178
|
+
|
|
179
|
+
// 判断是否有自定义聚合列表模版
|
|
180
|
+
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;
|
|
181
|
+
setContent( /*#__PURE__*/_react["default"].createElement(Template, {
|
|
182
|
+
layer: _layer2,
|
|
183
|
+
features: features,
|
|
184
|
+
onFitView: function onFitView() {
|
|
185
|
+
map.fitView({
|
|
186
|
+
data: features
|
|
187
|
+
});
|
|
188
|
+
hideTemplate();
|
|
189
|
+
},
|
|
190
|
+
onFeatureClick: function onFeatureClick(f) {
|
|
191
|
+
showTemplate(f.feature, highlightLayer);
|
|
192
|
+
}
|
|
193
|
+
}));
|
|
194
|
+
return;
|
|
195
|
+
}
|
|
98
196
|
var layer = map.getLayerByFeature(feature);
|
|
99
197
|
if (!(layer !== null && layer !== void 0 && layer.template)) {
|
|
100
198
|
return;
|
|
@@ -123,7 +221,7 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
123
221
|
var lat = _cesium.Math.toDegrees(cartographic.latitude);
|
|
124
222
|
return [lng, lat];
|
|
125
223
|
})];
|
|
126
|
-
var
|
|
224
|
+
var _handelGeometry2 = handelGeometry({
|
|
127
225
|
data: {
|
|
128
226
|
geometry: {
|
|
129
227
|
type: 'Polygon',
|
|
@@ -131,8 +229,8 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
131
229
|
}
|
|
132
230
|
}
|
|
133
231
|
}),
|
|
134
|
-
_position =
|
|
135
|
-
_offset =
|
|
232
|
+
_position = _handelGeometry2.position,
|
|
233
|
+
_offset = _handelGeometry2._offset;
|
|
136
234
|
position = _position;
|
|
137
235
|
offset = _offset;
|
|
138
236
|
height = null;
|
|
@@ -144,7 +242,7 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
144
242
|
var lat = _cesium.Math.toDegrees(cartographic.latitude);
|
|
145
243
|
return [lng, lat];
|
|
146
244
|
});
|
|
147
|
-
var
|
|
245
|
+
var _handelGeometry3 = handelGeometry({
|
|
148
246
|
data: {
|
|
149
247
|
geometry: {
|
|
150
248
|
type: 'LineString',
|
|
@@ -152,13 +250,12 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
152
250
|
}
|
|
153
251
|
}
|
|
154
252
|
}),
|
|
155
|
-
|
|
156
|
-
_offset2 =
|
|
157
|
-
position =
|
|
253
|
+
_position3 = _handelGeometry3.position,
|
|
254
|
+
_offset2 = _handelGeometry3._offset;
|
|
255
|
+
position = _position3;
|
|
158
256
|
offset = _offset2;
|
|
159
257
|
height = null;
|
|
160
258
|
}
|
|
161
|
-
console.log("feature:", feature);
|
|
162
259
|
if (feature.primitive) {
|
|
163
260
|
var _midpoint$geometry;
|
|
164
261
|
offset = {
|
|
@@ -177,10 +274,10 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
177
274
|
|
|
178
275
|
// 影像图层的数据
|
|
179
276
|
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) {
|
|
180
|
-
var
|
|
181
|
-
|
|
182
|
-
_offset3 =
|
|
183
|
-
position =
|
|
277
|
+
var _handelGeometry4 = handelGeometry(feature),
|
|
278
|
+
_position4 = _handelGeometry4.position,
|
|
279
|
+
_offset3 = _handelGeometry4._offset;
|
|
280
|
+
position = _position4;
|
|
184
281
|
offset = _offset3;
|
|
185
282
|
}
|
|
186
283
|
infoToolRef.current.add({
|
package/lib/map/Popup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Popup.js","names":["_react","_interopRequireWildcard","require","_cesium","_icons","_InfoTool","_interopRequireDefault","_classnames","_turf","_Polygon","_Polyline","_createFeatureCollection","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","exports","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","Popup","forwardRef","props","ref","map","_useState","useState","_useState2","content","setContent","_useState3","_useState4","title","setTitle","popupRef","useRef","featureRef","infoToolRef","InfoTool","viewRef","useImperativeHandle","showTemplate","hideTemplate","feature","highlightLayer","_feature$_position","_feature$data","_highlightLayer2","layer","getLayerByFeature","template","properties","getProperties","values_","current","labelField","_position","_value","height","PolygonGeo","_feature$_polygon","_polygon","_hierarchy","positions","v","cartographic","Cartographic","fromCartesian","lng","CesiumMath","toDegrees","longitude","lat","latitude","_handelGeometry","PolylineGeo","_polyline","_feature$_polyline","_positions","_handelGeometry2","console","log","primitive","_midpoint$geometry","transformGeometry","geometryInfo","_geometry$coordinates","ImageryLayerFeatureInfo","_handelGeometry3","add","element","inputFeature","autoView","getView","addHighlightFeature","fitView","_layer","getLayerByKey","_highlightLayer","onClose","judgeAbnormal","_ref","status","_infoToolRef$current","onCloseTemplateBefore","remove","entities","getById","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';\r\nimport { ImageryLayerFeatureInfo, Cartesian3, Cartographic, Math as CesiumMath } from 'cesium';\r\nimport { CloseOutlined } from '@ant-design/icons';\r\nimport InfoTool from './InfoTool';\r\nimport classnames from 'classnames';\r\nimport { point, midpoint as Midpoint, polygon as Polygon, centerOfMass } from '@turf/turf';\r\nimport PolygonGeo from '../polygon/Polygon';\r\nimport PolylineGeo from '../polyline/Polyline';\r\nimport { transformGeometry } from '../feature-layer/createFeatureCollection';\r\n\r\nexport const handelGeometry = entity => {\r\n let geometry = entity?.data?.geometry;\r\n let type = geometry?.type;\r\n let coordinates = geometry?.coordinates;\r\n\r\n let midpoint = entity?.data; // 默认点\r\n let position = null;\r\n let offset = {\r\n x: 0,\r\n y: 20,\r\n };\r\n\r\n if (['MultiLineString', 'LineString'].includes(type) && coordinates?.length) {\r\n let point1 = null;\r\n let point2 = null;\r\n // 线\r\n if (coordinates.length > 1) {\r\n point1 = point(coordinates[0]);\r\n point2 = point(coordinates[1]);\r\n } else {\r\n let lngLatArr = coordinates[0];\r\n point1 = point(lngLatArr[0]);\r\n point2 = point(lngLatArr[1]);\r\n }\r\n midpoint = Midpoint(point1, point2);\r\n } else if (['Polygon', 'MultiPolygon'].includes(type)) {\r\n // 面\r\n // 注意:polygon首尾坐标要一致\r\n let polygon = Polygon(coordinates);\r\n midpoint = centerOfMass(polygon);\r\n } else if (['Point'].includes(type)) {\r\n offset = {\r\n x: 5,\r\n y: 20,\r\n };\r\n }\r\n if (midpoint?.geometry?.coordinates) {\r\n position = Cartesian3.fromDegrees(...midpoint.geometry.coordinates);\r\n }\r\n\r\n return {\r\n position,\r\n geometryType: type,\r\n _offset: offset,\r\n };\r\n};\r\n\r\nconst Popup = forwardRef((props, ref) => {\r\n const { map } = props;\r\n\r\n const [content, setContent] = useState(null);\r\n const [title, setTitle] = useState(null);\r\n const popupRef = useRef();\r\n\r\n const featureRef = useRef();\r\n const infoToolRef = useRef(new InfoTool({ map }));\r\n const viewRef = useRef();\r\n\r\n useImperativeHandle(ref, () => {\r\n return {\r\n showTemplate,\r\n hideTemplate,\r\n };\r\n });\r\n\r\n const showTemplate = (feature, highlightLayer) => {\r\n let layer = map.getLayerByFeature(feature);\r\n if (!layer?.template) {\r\n return;\r\n }\r\n\r\n let properties = map.getProperties(feature);\r\n feature.values_ = properties;\r\n featureRef.current = feature;\r\n if (layer) {\r\n let template = layer.template;\r\n let labelField = layer.labelField;\r\n\r\n setTitle(labelField && properties[labelField]);\r\n setContent(feature && template(feature));\r\n }\r\n\r\n let position = feature?._position?._value;\r\n // 偏移量\r\n let offset = {\r\n x: 5,\r\n y: 76,\r\n };\r\n\r\n let height = 5000;\r\n if (feature instanceof PolygonGeo) {\r\n let coordinates = [\r\n (feature?._polygon?._hierarchy?._value?.positions || []).map(v => {\r\n const cartographic = Cartographic.fromCartesian(v); // 经纬高对象\r\n const lng = CesiumMath.toDegrees(cartographic.longitude);\r\n const lat = CesiumMath.toDegrees(cartographic.latitude);\r\n return [lng, lat];\r\n }),\r\n ];\r\n let { position: _position, _offset } = handelGeometry({\r\n data: { geometry: { type: 'Polygon', coordinates } },\r\n });\r\n position = _position;\r\n offset = _offset;\r\n height = null;\r\n } else if (feature instanceof PolylineGeo || feature?._polyline) {\r\n let coordinates = (feature?._polyline?._positions?._value || []).map(v => {\r\n const cartographic = Cartographic.fromCartesian(v); // 经纬高对象\r\n const lng = CesiumMath.toDegrees(cartographic.longitude);\r\n const lat = CesiumMath.toDegrees(cartographic.latitude);\r\n return [lng, lat];\r\n });\r\n let { position: _position, _offset } = handelGeometry({\r\n data: { geometry: { type: 'LineString', coordinates } },\r\n });\r\n position = _position;\r\n offset = _offset;\r\n height = null;\r\n }\r\n\r\n console.log(\"feature:\", feature);\r\n\r\n if (feature.primitive) {\r\n offset = {\r\n x: 0,\r\n y: 20,\r\n };\r\n const geometry = transformGeometry(properties.geometryInfo);\r\n const [point1, point2] = geometry.coordinates[0];\r\n const midpoint = Midpoint(point1, point2);\r\n if (midpoint?.geometry?.coordinates) {\r\n position = Cartesian3.fromDegrees(...midpoint.geometry.coordinates);\r\n }\r\n }\r\n\r\n // 影像图层的数据\r\n if (feature instanceof ImageryLayerFeatureInfo || feature?.data?.geometry?.coordinates) {\r\n let { position: _position, _offset } = handelGeometry(feature);\r\n position = _position;\r\n offset = _offset;\r\n }\r\n\r\n infoToolRef.current.add({\r\n position: position,\r\n content: '',\r\n element: popupRef.current,\r\n inputFeature: feature,\r\n type: '',\r\n offset,\r\n });\r\n\r\n map.popupRef = feature;\r\n\r\n if (!viewRef.current && map.autoView) {\r\n getView();\r\n }\r\n\r\n highlightLayer = highlightLayer || map.highlightLayer;\r\n highlightLayer.addHighlightFeature(feature);\r\n if (highlightLayer?.layer && map.autoView) {\r\n map.fitView({ entity: highlightLayer.layer, height });\r\n }\r\n };\r\n\r\n const hideTemplate = _layer => {\r\n if (_layer) {\r\n let layer = typeof _layer === 'string' ? map.getLayerByKey(_layer) : _layer;\r\n\r\n if (layer && layer.key && map.popupRef) {\r\n let _highlightLayer = map.getLayerByFeature(map.popupRef);\r\n if (_highlightLayer.key === layer.key) {\r\n onClose();\r\n }\r\n }\r\n } else {\r\n onClose();\r\n }\r\n };\r\n\r\n // 判断点位异常-点位异常展示红色\r\n function judgeAbnormal() {\r\n const { status } = map.getProperties(featureRef.current) || {};\r\n\r\n return status && [1, 2, 4].includes(status);\r\n }\r\n\r\n // 关闭气泡\r\n const onClose = () => {\r\n map.onCloseTemplateBefore && map.onCloseTemplateBefore(featureRef.current);\r\n map.popupRef = null;\r\n featureRef.current = null;\r\n infoToolRef?.current?.remove();\r\n\r\n if (map.entities.getById('highlight-1')) {\r\n map.entities.remove(map.entities.getById('highlight-1'));\r\n }\r\n\r\n // 清除高亮\r\n // highlightLayer.current.clearFeatures();\r\n\r\n // map.fitView();\r\n\r\n if (map.autoView) {\r\n setView();\r\n }\r\n };\r\n\r\n const getView = () => {\r\n //获取当前视角的pitch\r\n let pitch = map.camera.pitch;\r\n //获取当前视角的heading\r\n let heading = map.camera.heading;\r\n //获取当前视角的postion(位置)\r\n let position = map.camera.position;\r\n\r\n viewRef.current = {\r\n x: position.x,\r\n y: position.y,\r\n z: position.z,\r\n pitch: pitch,\r\n heading: heading,\r\n };\r\n };\r\n\r\n const setView = () => {\r\n if (viewRef.current) {\r\n map.camera.flyTo({\r\n //定位到范围中心点\r\n destination: {\r\n x: viewRef.current.x,\r\n y: viewRef.current.y,\r\n z: viewRef.current.z,\r\n },\r\n orientation: {\r\n heading: viewRef.current.heading, //左右方向\r\n pitch: viewRef.current.pitch, //上下方向\r\n roll: 0.0,\r\n },\r\n duration: 2,\r\n });\r\n\r\n viewRef.current = null;\r\n }\r\n };\r\n return (\r\n <div\r\n ref={popupRef}\r\n className={classnames('cesium-popup', { 'cesium-popup-abnormal': judgeAbnormal() })}\r\n >\r\n <CloseOutlined\r\n className={classnames('cesium-popup-close')}\r\n width={16}\r\n height={16}\r\n onClick={onClose}\r\n />\r\n <div className={classnames('cesium-popup-title', { 'cesium-popup-no-title': !title })}>\r\n {title}\r\n </div>\r\n <div className={classnames('cesium-popup-content')} id=\"content\">\r\n {content}\r\n </div>\r\n </div>\r\n );\r\n});\r\n\r\nexport default Popup;\r\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Popup.js","names":["_react","_interopRequireWildcard","require","_cesium","_icons","_antd","_InfoTool","_interopRequireDefault","_classnames","_turf","_Polygon","_Polyline","_createFeatureCollection","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","Cluster","props","layer","features","onFeatureClick","onFitView","labelField","createElement","className","classnames","onClick","Table","pagination","size","dataSource","scroll","y","columns","title","dataIndex","width","render","text","record","values_","handelGeometry","exports","entity","_entity$data","_midpoint","geometry","data","type","coordinates","midpoint","position","offset","x","includes","point1","point2","point","lngLatArr","Midpoint","polygon","Polygon","centerOfMass","Cartesian3","fromDegrees","apply","geometryType","_offset","Popup","forwardRef","ref","map","_useState","useState","_useState2","content","setContent","_useState3","_useState4","setTitle","popupRef","useRef","featureRef","infoToolRef","InfoTool","viewRef","useImperativeHandle","showTemplate","hideTemplate","feature","highlightLayer","_feature$_position","_feature$data","_highlightLayer2","_layer2$_options","points","properties","getProperties","TurfPoint","geometryInfo","lngLats","join","coordType","center","TureCenterOfMass","TurfFeatureCollection","_handelGeometry","getLayerByFeature","current","add","element","inputFeature","Template","_options","cluster","template","fitView","_position","_value","height","PolygonGeo","_feature$_polygon","_polygon","_hierarchy","positions","v","cartographic","Cartographic","fromCartesian","lng","CesiumMath","toDegrees","longitude","lat","latitude","_handelGeometry2","PolylineGeo","_polyline","_feature$_polyline","_positions","_handelGeometry3","primitive","_midpoint$geometry","transformGeometry","_geometry$coordinates","ImageryLayerFeatureInfo","_handelGeometry4","autoView","getView","addHighlightFeature","_layer","getLayerByKey","_highlightLayer","onClose","judgeAbnormal","_ref","status","_infoToolRef$current","onCloseTemplateBefore","remove","entities","getById","setView","pitch","camera","heading","z","flyTo","destination","orientation","roll","duration","CloseOutlined","id","_default"],"sources":["map/Popup.jsx"],"sourcesContent":["import React, { useRef, useState, useImperativeHandle, forwardRef } from 'react';\r\nimport { ImageryLayerFeatureInfo, Cartesian3, Cartographic, Math as CesiumMath } from 'cesium';\r\nimport { CloseOutlined } from '@ant-design/icons';\r\nimport { Table } from 'antd';\r\nimport InfoTool from './InfoTool';\r\nimport classnames from 'classnames';\r\nimport { point, midpoint as Midpoint, polygon as Polygon, centerOfMass } from '@turf/turf';\r\nimport PolygonGeo from '../polygon/Polygon';\r\nimport PolylineGeo from '../polyline/Polyline';\r\nimport { transformGeometry } from '../feature-layer/createFeatureCollection';\r\nimport { featureCollection as TurfFeatureCollection, point as TurfPoint, centerOfMass as TureCenterOfMass } from '@turf/turf';\r\n\r\nconst Cluster = props => {\r\n const { layer, features, onFeatureClick, onFitView } = props;\r\n let { labelField } = layer;\r\n\r\n return (\r\n <div className={classnames('cs-map-popup-cluster')}>\r\n <div className={classnames('cs-map-popup-cluster-header')}>\r\n 共 {features.length} 个点位\r\n <a onClick={onFitView}>缩放至</a>\r\n </div>\r\n <Table\r\n pagination={false}\r\n size=\"small\"\r\n dataSource={features}\r\n scroll={{ y: 120 }}\r\n columns={[\r\n {\r\n title: '名称',\r\n dataIndex: '名称',\r\n width: 60,\r\n render: (text, record) => {\r\n return (\r\n <a onClick={() => onFeatureClick(record)}>\r\n {record.values_[labelField]}\r\n </a>\r\n );\r\n },\r\n },\r\n {\r\n title: '操作',\r\n dataIndex: '操作',\r\n width: 30,\r\n render: (text, record) => {\r\n return <a onClick={() => onFeatureClick(record)}>定位</a>;\r\n },\r\n },\r\n ]}\r\n />\r\n </div>\r\n );\r\n};\r\n\r\n\r\nexport const handelGeometry = entity => {\r\n let geometry = entity?.data?.geometry;\r\n let type = geometry?.type;\r\n let coordinates = geometry?.coordinates;\r\n\r\n let midpoint = entity?.data; // 默认点\r\n let position = null;\r\n let offset = {\r\n x: 0,\r\n y: 20,\r\n };\r\n\r\n if (['MultiLineString', 'LineString'].includes(type) && coordinates?.length) {\r\n let point1 = null;\r\n let point2 = null;\r\n // 线\r\n if (coordinates.length > 1) {\r\n point1 = point(coordinates[0]);\r\n point2 = point(coordinates[1]);\r\n } else {\r\n let lngLatArr = coordinates[0];\r\n point1 = point(lngLatArr[0]);\r\n point2 = point(lngLatArr[1]);\r\n }\r\n midpoint = Midpoint(point1, point2);\r\n } else if (['Polygon', 'MultiPolygon'].includes(type)) {\r\n // 面\r\n // 注意:polygon首尾坐标要一致\r\n let polygon = Polygon(coordinates);\r\n midpoint = centerOfMass(polygon);\r\n } else if (['Point'].includes(type)) {\r\n offset = {\r\n x: 5,\r\n y: 20,\r\n };\r\n }\r\n if (midpoint?.geometry?.coordinates) {\r\n position = Cartesian3.fromDegrees(...midpoint.geometry.coordinates);\r\n }\r\n\r\n return {\r\n position,\r\n geometryType: type,\r\n _offset: offset,\r\n };\r\n};\r\n\r\nconst Popup = forwardRef((props, ref) => {\r\n const { map } = props;\r\n\r\n const [content, setContent] = useState(null);\r\n const [title, setTitle] = useState(null);\r\n const popupRef = useRef();\r\n\r\n const featureRef = useRef();\r\n const infoToolRef = useRef(new InfoTool({ map }));\r\n const viewRef = useRef();\r\n\r\n useImperativeHandle(ref, () => {\r\n return {\r\n showTemplate,\r\n hideTemplate,\r\n };\r\n });\r\n\r\n const showTemplate = (feature, highlightLayer) => {\r\n\r\n // 判断是否为聚合点击\r\n if (feature && feature.length >= 2) {\r\n const points = [];\r\n const features = feature.map(f => {\r\n let properties = map.getProperties(f);\r\n\r\n points.push(TurfPoint(f.geometry))\r\n return ({\r\n feature: f,\r\n geometryInfo: properties?.geometryInfo || {\r\n type: 'point',\r\n lngLats: f.geometry.join(','),\r\n coordType: 'wgs84'\r\n },\r\n values_: properties,\r\n properties: properties,\r\n })\r\n });\r\n\r\n const center = TureCenterOfMass(TurfFeatureCollection(points));\r\n let { position } = handelGeometry({\r\n data: center,\r\n });\r\n\r\n let layer = map.getLayerByFeature(feature[0]);\r\n infoToolRef.current.add({\r\n position,\r\n content: '',\r\n element: popupRef.current,\r\n inputFeature: feature,\r\n type: '',\r\n offset: {\r\n x: 0,\r\n y: 50,\r\n },\r\n })\r\n\r\n // 判断是否有自定义聚合列表模版\r\n let Template = layer?._options?.cluster?.template || Cluster;\r\n setContent(\r\n <Template\r\n layer={layer}\r\n features={features}\r\n onFitView={() => {\r\n map.fitView({data: features});\r\n hideTemplate();\r\n }}\r\n onFeatureClick={f => {\r\n showTemplate(f.feature, highlightLayer);\r\n }}\r\n />,\r\n );\r\n return;\r\n }\r\n\r\n let layer = map.getLayerByFeature(feature);\r\n if (!layer?.template) {\r\n return;\r\n }\r\n\r\n let properties = map.getProperties(feature);\r\n feature.values_ = properties;\r\n featureRef.current = feature;\r\n if (layer) {\r\n let template = layer.template;\r\n let labelField = layer.labelField;\r\n\r\n setTitle(labelField && properties[labelField]);\r\n setContent(feature && template(feature));\r\n }\r\n\r\n let position = feature?._position?._value;\r\n // 偏移量\r\n let offset = {\r\n x: 5,\r\n y: 76,\r\n };\r\n\r\n let height = 5000;\r\n if (feature instanceof PolygonGeo) {\r\n let coordinates = [\r\n (feature?._polygon?._hierarchy?._value?.positions || []).map(v => {\r\n const cartographic = Cartographic.fromCartesian(v); // 经纬高对象\r\n const lng = CesiumMath.toDegrees(cartographic.longitude);\r\n const lat = CesiumMath.toDegrees(cartographic.latitude);\r\n return [lng, lat];\r\n }),\r\n ];\r\n let { position: _position, _offset } = handelGeometry({\r\n data: { geometry: { type: 'Polygon', coordinates } },\r\n });\r\n position = _position;\r\n offset = _offset;\r\n height = null;\r\n } else if (feature instanceof PolylineGeo || feature?._polyline) {\r\n let coordinates = (feature?._polyline?._positions?._value || []).map(v => {\r\n const cartographic = Cartographic.fromCartesian(v); // 经纬高对象\r\n const lng = CesiumMath.toDegrees(cartographic.longitude);\r\n const lat = CesiumMath.toDegrees(cartographic.latitude);\r\n return [lng, lat];\r\n });\r\n let { position: _position, _offset } = handelGeometry({\r\n data: { geometry: { type: 'LineString', coordinates } },\r\n });\r\n position = _position;\r\n offset = _offset;\r\n height = null;\r\n }\r\n\r\n if (feature.primitive) {\r\n offset = {\r\n x: 0,\r\n y: 20,\r\n };\r\n const geometry = transformGeometry(properties.geometryInfo);\r\n const [point1, point2] = geometry.coordinates[0];\r\n const midpoint = Midpoint(point1, point2);\r\n if (midpoint?.geometry?.coordinates) {\r\n position = Cartesian3.fromDegrees(...midpoint.geometry.coordinates);\r\n }\r\n }\r\n\r\n // 影像图层的数据\r\n if (feature instanceof ImageryLayerFeatureInfo || feature?.data?.geometry?.coordinates) {\r\n let { position: _position, _offset } = handelGeometry(feature);\r\n position = _position;\r\n offset = _offset;\r\n }\r\n\r\n infoToolRef.current.add({\r\n position: position,\r\n content: '',\r\n element: popupRef.current,\r\n inputFeature: feature,\r\n type: '',\r\n offset,\r\n });\r\n\r\n map.popupRef = feature;\r\n\r\n if (!viewRef.current && map.autoView) {\r\n getView();\r\n }\r\n\r\n highlightLayer = highlightLayer || map.highlightLayer;\r\n highlightLayer.addHighlightFeature(feature);\r\n if (highlightLayer?.layer && map.autoView) {\r\n map.fitView({ entity: highlightLayer.layer, height });\r\n }\r\n };\r\n\r\n const hideTemplate = _layer => {\r\n if (_layer) {\r\n let layer = typeof _layer === 'string' ? map.getLayerByKey(_layer) : _layer;\r\n\r\n if (layer && layer.key && map.popupRef) {\r\n let _highlightLayer = map.getLayerByFeature(map.popupRef);\r\n if (_highlightLayer.key === layer.key) {\r\n onClose();\r\n }\r\n }\r\n } else {\r\n onClose();\r\n }\r\n };\r\n\r\n // 判断点位异常-点位异常展示红色\r\n function judgeAbnormal() {\r\n const { status } = map.getProperties(featureRef.current) || {};\r\n\r\n return status && [1, 2, 4].includes(status);\r\n }\r\n\r\n // 关闭气泡\r\n const onClose = () => {\r\n map.onCloseTemplateBefore && map.onCloseTemplateBefore(featureRef.current);\r\n map.popupRef = null;\r\n featureRef.current = null;\r\n infoToolRef?.current?.remove();\r\n\r\n if (map.entities.getById('highlight-1')) {\r\n map.entities.remove(map.entities.getById('highlight-1'));\r\n }\r\n\r\n // 清除高亮\r\n // highlightLayer.current.clearFeatures();\r\n\r\n // map.fitView();\r\n\r\n if (map.autoView) {\r\n setView();\r\n }\r\n };\r\n\r\n const getView = () => {\r\n //获取当前视角的pitch\r\n let pitch = map.camera.pitch;\r\n //获取当前视角的heading\r\n let heading = map.camera.heading;\r\n //获取当前视角的postion(位置)\r\n let position = map.camera.position;\r\n\r\n viewRef.current = {\r\n x: position.x,\r\n y: position.y,\r\n z: position.z,\r\n pitch: pitch,\r\n heading: heading,\r\n };\r\n };\r\n\r\n const setView = () => {\r\n if (viewRef.current) {\r\n map.camera.flyTo({\r\n //定位到范围中心点\r\n destination: {\r\n x: viewRef.current.x,\r\n y: viewRef.current.y,\r\n z: viewRef.current.z,\r\n },\r\n orientation: {\r\n heading: viewRef.current.heading, //左右方向\r\n pitch: viewRef.current.pitch, //上下方向\r\n roll: 0.0,\r\n },\r\n duration: 2,\r\n });\r\n\r\n viewRef.current = null;\r\n }\r\n };\r\n return (\r\n <div\r\n ref={popupRef}\r\n className={classnames('cesium-popup', { 'cesium-popup-abnormal': judgeAbnormal() })}\r\n >\r\n <CloseOutlined\r\n className={classnames('cesium-popup-close')}\r\n width={16}\r\n height={16}\r\n onClick={onClose}\r\n />\r\n <div className={classnames('cesium-popup-title', { 'cesium-popup-no-title': !title })}>\r\n {title}\r\n </div>\r\n <div className={classnames('cesium-popup-content')} id=\"content\">\r\n {content}\r\n </div>\r\n </div>\r\n );\r\n});\r\n\r\nexport default Popup;\r\n"],"mappings":"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"}
|
package/lib/map/index.js
CHANGED
|
@@ -198,7 +198,7 @@ function Map(props) {
|
|
|
198
198
|
scene3DOnly: true,
|
|
199
199
|
// 每个几何实例仅以3D渲染以节省GPU内存
|
|
200
200
|
navigationInstructionsInitiallyVisible: false,
|
|
201
|
-
showRenderLoopErrors:
|
|
201
|
+
showRenderLoopErrors: process.env.NODE_ENV === 'development',
|
|
202
202
|
//是否显示渲染错误
|
|
203
203
|
orderIndependentTranslucency: false,
|
|
204
204
|
//设置背景透明
|
|
@@ -802,7 +802,7 @@ function Map(props) {
|
|
|
802
802
|
createdMap && createdMap(map);
|
|
803
803
|
onEvents.createdMap && onEvents.createdMap(map);
|
|
804
804
|
setMapLoaded(true);
|
|
805
|
-
}, duration
|
|
805
|
+
}, (duration - 1) * 1000);
|
|
806
806
|
} else {
|
|
807
807
|
var _viewDefault$center2 = _slicedToArray(viewDefault.center, 3),
|
|
808
808
|
x = _viewDefault$center2[0],
|