@vtx/cs-map 1.0.7 → 1.0.9
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/EventEmitter.js +80 -0
- package/lib/_util/EventEmitter.js.map +1 -0
- package/lib/_util/getDefaultMapInfo.js +2 -2
- package/lib/_util/getDefaultMapInfo.js.map +1 -1
- package/lib/assets/colors.png +0 -0
- package/lib/assets/colors1.png +0 -0
- package/lib/cesium-tiles-layer/CesiumTilesLayer.js +57 -0
- package/lib/cesium-tiles-layer/CesiumTilesLayer.js.map +1 -0
- package/lib/cesium-tiles-layer/index.js +55 -0
- package/lib/cesium-tiles-layer/index.js.map +1 -0
- package/lib/cesium-tiles-layer/style/css.js +4 -0
- package/lib/cesium-tiles-layer/style/css.js.map +1 -0
- package/lib/cesium-tiles-layer/style/index.css +0 -0
- package/lib/cesium-tiles-layer/style/index.js +4 -0
- package/lib/cesium-tiles-layer/style/index.js.map +1 -0
- package/lib/cesium-tiles-layer/style/index.less +0 -0
- package/lib/feature-layer/FeatureLayer.js +112 -20
- package/lib/feature-layer/FeatureLayer.js.map +1 -1
- package/lib/feature-layer/createFeatureCollection.js +4 -0
- package/lib/feature-layer/createFeatureCollection.js.map +1 -1
- package/lib/feature-layer/index.js +29 -5
- package/lib/feature-layer/index.js.map +1 -1
- package/lib/group-layer/GroupLayer.js +79 -0
- package/lib/group-layer/GroupLayer.js.map +1 -0
- package/lib/group-layer/index.js +68 -0
- package/lib/group-layer/index.js.map +1 -0
- package/lib/group-layer/style/css.js +4 -0
- package/lib/group-layer/style/css.js.map +1 -0
- package/lib/group-layer/style/index.css +0 -0
- package/lib/group-layer/style/index.js +4 -0
- package/lib/group-layer/style/index.js.map +1 -0
- package/lib/group-layer/style/index.less +0 -0
- package/lib/highlight-layer/HighlightLayer.js +177 -0
- package/lib/highlight-layer/HighlightLayer.js.map +1 -0
- package/lib/highlight-layer/index.js +25 -0
- package/lib/highlight-layer/index.js.map +1 -0
- package/lib/highlight-layer/style/css.js +4 -0
- package/lib/highlight-layer/style/css.js.map +1 -0
- package/lib/highlight-layer/style/index.css +0 -0
- package/lib/highlight-layer/style/index.js +4 -0
- package/lib/highlight-layer/style/index.js.map +1 -0
- package/lib/highlight-layer/style/index.less +0 -0
- package/lib/image-layer/ImageLayer.js +59 -16
- package/lib/image-layer/ImageLayer.js.map +1 -1
- package/lib/image-layer/index.js +39 -21
- package/lib/image-layer/index.js.map +1 -1
- package/lib/index.js +37 -2
- package/lib/index.js.map +1 -1
- package/lib/line-flow-layer/LineFlowLayer.js +106 -0
- package/lib/line-flow-layer/LineFlowLayer.js.map +1 -0
- package/lib/line-flow-layer/index.js +30 -0
- package/lib/line-flow-layer/index.js.map +1 -0
- package/lib/line-flow-layer/style/css.js +4 -0
- package/lib/line-flow-layer/style/css.js.map +1 -0
- package/lib/line-flow-layer/style/index.css +0 -0
- package/lib/line-flow-layer/style/index.js +4 -0
- package/lib/line-flow-layer/style/index.js.map +1 -0
- package/lib/line-flow-layer/style/index.less +0 -0
- package/lib/map/InfoTool/index.js.map +1 -1
- package/lib/map/Layers.js +278 -0
- package/lib/map/Layers.js.map +1 -0
- package/lib/map/Popup.js +78 -27
- package/lib/map/Popup.js.map +1 -1
- package/lib/map/hooks/useGetMapFeatureInfoByText.js +211 -0
- package/lib/map/hooks/useGetMapFeatureInfoByText.js.map +1 -0
- package/lib/map/index.js +296 -87
- package/lib/map/index.js.map +1 -1
- package/lib/map/material/CircleRippleMaterialProperty.js +89 -0
- package/lib/map/material/CircleRippleMaterialProperty.js.map +1 -0
- package/lib/map/style/index.css +19 -4
- package/lib/map/style/index.less +20 -4
- package/lib/marker/Marker.js.map +1 -1
- package/lib/material/TrailPolylineMaterial.js +31 -0
- package/lib/material/TrailPolylineMaterial.js.map +1 -0
- package/lib/renderer/index.js +18 -5
- package/lib/renderer/index.js.map +1 -1
- package/lib/tools/assets/footer.png +0 -0
- package/lib/tools/assets/layer.png +0 -0
- package/lib/tools/assets/search.png +0 -0
- package/lib/tools/index.js +37 -0
- package/lib/tools/index.js.map +1 -0
- package/lib/tools/layer/index.js +130 -0
- package/lib/tools/layer/index.js.map +1 -0
- package/lib/tools/search/Select/index.js +56 -0
- package/lib/tools/search/Select/index.js.map +1 -0
- package/lib/tools/search/Select/style/css.js +4 -0
- package/lib/tools/search/Select/style/css.js.map +1 -0
- package/lib/tools/search/Select/style/index.css +45 -0
- package/lib/tools/search/Select/style/index.js +4 -0
- package/lib/tools/search/Select/style/index.js.map +1 -0
- package/lib/tools/search/Select/style/index.less +47 -0
- package/lib/tools/search/index.js +203 -0
- package/lib/tools/search/index.js.map +1 -0
- package/lib/tools/style/css.js +8 -0
- package/lib/tools/style/css.js.map +1 -0
- package/lib/tools/style/index.css +130 -0
- package/lib/tools/style/index.js +8 -0
- package/lib/tools/style/index.js.map +1 -0
- package/lib/tools/style/index.less +129 -0
- package/lib/tools/tools-item/index.js +50 -0
- package/lib/tools/tools-item/index.js.map +1 -0
- package/lib/trail-polyline-layer/TrailPolylineLayer.js +84 -0
- package/lib/trail-polyline-layer/TrailPolylineLayer.js.map +1 -0
- package/lib/trail-polyline-layer/index.js +28 -0
- package/lib/trail-polyline-layer/index.js.map +1 -0
- package/lib/trail-polyline-layer/style/css.js +4 -0
- package/lib/trail-polyline-layer/style/css.js.map +1 -0
- package/lib/trail-polyline-layer/style/index.css +0 -0
- package/lib/trail-polyline-layer/style/index.js +4 -0
- package/lib/trail-polyline-layer/style/index.js.map +1 -0
- package/lib/trail-polyline-layer/style/index.less +0 -0
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_cesium","require","_util","_interopRequireDefault","_class","obj","__esModule","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","prototype","_defineProperty","value","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","Number","_classPrivateFieldInitSpec","privateMap","_checkPrivateRedeclaration","set","privateCollection","has","_classPrivateFieldGet","receiver","_classExtractFieldDescriptor","_classApplyDescriptorGet","get","_classPrivateFieldSet","_classApplyDescriptorSet","action","_classStaticPrivateMethodGet","classConstructor","method","_classCheckPrivateStaticAccess","_element","WeakMap","InfoTool","options","viewer","map","document","createElement","add","callback","arguments","element","position","cartesian2d","cartesian3d","inputFeature","Cesium3DTileFeature","Cartesian2","Cartesian3","scene","pickPositionSupported","defined","pick","pickPosition","camera","pickEllipsoid","globe","ellipsoid","SceneTransforms","wgs84ToWindowCoordinates","that","info","type","feature","remove","propertyNames","getPropertyNames","propertyName","getProperty","properties","_propertyNames","_value","content","_createInfoTool","util","setInnerText","entityId","setCss","cartographic","Cartographic","fromCartesian","lon","CesiumMath","toDegrees","longitude","lat","latitude","setTimeout","_popup","height","offset","divPosition","fromDegrees","x","y","_hookToGlobe","parseInt","getCss","requestRender","hideOnBehindGlobe","cartesian2","preRender","addEventListener","canvasPosition","cartesianToCanvasCoordinates","cameraPosition","cartesianToCartographic","maximumRadius","distance","_default","exports"],"sources":["map/InfoTool/index.js"],"sourcesContent":["import {\n Math as CesiumMath,\n Cesium3DTileFeature,\n Cartesian2,\n Cartesian3,\n Cartographic,\n SceneTransforms,\n defined\n} from 'cesium';\nimport './index.less';\nimport util from './util';\n\n/**\n * 信息工具。\n *\n * @alias InfoTool\n * @constructor\n * @param {viewer} viewer Cesium视窗。\n */\nclass InfoTool {\n /**\n * 创建一个动态实体弹窗。\n *\n * @param {viewer} viewer Cesium视窗。\n * @param {Number} options 选项。\n * @param {Cartesian3} options.position 弹出位置。\n * @param {HTMLElement} options.element 弹出窗元素容器。\n * @param {Function} callback 回调函数。\n * @ignore\n */\n static #createInfoTool(viewer, options, callback = undefined) {\n const cartographic = Cartographic.fromCartesian(options.position);\n const lon = CesiumMath.toDegrees(cartographic.longitude); //.toFixed(5);\n const lat = CesiumMath.toDegrees(cartographic.latitude); //.toFixed(5);\n\n // 回调\n callback();\n\n // 添加div弹窗\n setTimeout(function () {\n InfoTool.#popup(\n viewer,\n options.element,\n lon,\n lat,\n cartographic.height,\n // options.geometryType,\n options.offset,\n );\n }, 100);\n }\n\n /**\n * 弹出HTML元素弹窗。\n * @param {viewer} viewer Cesium视窗。\n * @param {Element|HTMLElement} element 弹窗元素。\n * @param {Number} lon 经度。\n * @param {Number} lat 纬度。\n * @param {Number} height 高度。\n * @ignore\n */\n static #popup(viewer, element, lon, lat, height, offset) {\n setTimeout(function () {\n // 设置元素效果\n util.setCss(element, 'opacity', '1');\n util.setCss(element, 'z-index', '0');\n }, 100);\n const divPosition = Cartesian3.fromDegrees(lon, lat, height);\n\n let x = offset?.x || 0;\n let y = offset?.y || 0;\n\n InfoTool.#hookToGlobe(\n viewer,\n element,\n divPosition,\n [-4 + x, -parseInt(util.getCss(element, 'offsetHeight') + y)],\n true,\n );\n viewer.scene.requestRender();\n }\n\n /**\n * 将HTML弹窗挂接到地球上。\n *\n * @param {viewer} viewer Cesium视窗。\n * @param {Element} element 弹窗元素。\n * @param {Cartesian3} position 地图坐标点。\n * @param {Array} offset 偏移。\n * @param {Boolean} hideOnBehindGlobe 当元素在地球背面会自动隐藏,以减轻判断计算压力。\n * @ignore\n */\n static #hookToGlobe(viewer, element, position, offset, hideOnBehindGlobe) {\n const scene = viewer.scene,\n camera = viewer.camera;\n const cartesian2 = new Cartesian2();\n scene.preRender.addEventListener(function () {\n const canvasPosition = scene.cartesianToCanvasCoordinates(position, cartesian2); // 笛卡尔坐标到画布坐标\n if (defined(canvasPosition)) {\n util.setCss(element, 'left', parseInt(canvasPosition.x + offset[0]) + 'px');\n util.setCss(element, 'top', parseInt(canvasPosition.y + offset[1]) + 'px');\n\n // 是否在地球背面隐藏\n if (hideOnBehindGlobe) {\n const cameraPosition = camera.position;\n let height = scene.globe.ellipsoid.cartesianToCartographic(cameraPosition)\n .height;\n height += scene.globe.ellipsoid.maximumRadius;\n if (!(Cartesian3.distance(cameraPosition, position) > height)) {\n // util.setCss(element, 'display', 'flex');\n } else {\n util.setCss(element, 'display', 'none');\n }\n }\n }\n });\n }\n\n #element;\n viewer;\n\n constructor(options) {\n this.viewer = options.map;\n // 在Cesium容器中添加元素\n this.#element = document.createElement('div');\n }\n\n /**\n * 添加。\n * @param {Object} options 选项。\n * @param {Element} options.element 弹窗元素。\n * @param {Cartesian2|Cartesian3} options.position 点击位置。\n * @param {Cesium3DTileFeature} [options.inputFeature] 模型要素。\n * @param {String} options.type 类型(默认值为default,即任意点击模式;如果设置为info,即信息模式,只有点击Feature才会响应)。\n * @param {String} options.content 内容(只有类型为default时才起作用)。\n * @param {Function} callback 回调函数。\n */\n add(options, callback = undefined) {\n this.element = options.element;\n // 判断参数为空返回\n if (!options) {\n return;\n }\n // 点\n let position, cartesian2d, cartesian3d, inputFeature;\n if (options instanceof Cesium3DTileFeature) {\n inputFeature = options;\n options = {};\n } else {\n if (options instanceof Cartesian2 || options instanceof Cartesian3) {\n position = options;\n options = {};\n } else {\n position = options.position;\n inputFeature = options.inputFeature;\n }\n // 判断点位为空返回\n if (!position) {\n return;\n }\n if (position instanceof Cartesian2) {\n // 二维转三维\n // 如果支持拾取模型则取模型值\n cartesian3d =\n this.viewer.scene.pickPositionSupported &&\n defined(this.viewer.scene.pick(options.position))\n ? this.viewer.scene.pickPosition(position)\n : this.viewer.camera.pickEllipsoid(\n position,\n this.viewer.scene.globe.ellipsoid,\n );\n cartesian2d = position;\n } else {\n cartesian3d = position;\n cartesian2d = SceneTransforms.wgs84ToWindowCoordinates(\n this.viewer.scene,\n cartesian3d,\n );\n }\n // 判断点位为空返回\n if (!cartesian3d) {\n return;\n }\n }\n\n const that = this;\n\n // 1.组织信息\n let info = '';\n if (options.type === 'info') {\n // 拾取要素\n const feature = inputFeature || this.viewer.scene.pick(cartesian2d);\n // 判断拾取要素为空返回\n if (!defined(feature)) {\n this.remove();\n return;\n }\n\n if (feature instanceof Cesium3DTileFeature) {\n // 3dtiles\n let propertyNames = feature.getPropertyNames();\n let length = propertyNames.length;\n for (let i = 0; i < length; ++i) {\n let propertyName = propertyNames[i];\n info +=\n '\"' + (propertyName + '\": \"' + feature.getProperty(propertyName)) + '\",\\n';\n }\n } else if (feature) {\n // Entity\n const properties = feature.properties;\n if (properties) {\n let propertyNames = properties._propertyNames;\n let length = propertyNames.length;\n for (let i = 0; i < length; ++i) {\n let propertyName = propertyNames[i];\n info +=\n '\"' +\n (propertyName + '\": \"' + properties[propertyName]._value) +\n '\",\\n';\n }\n }\n }\n } else {\n options.content && (info = options.content);\n }\n\n // 2.生成特效\n // 添加之前先移除\n this.remove();\n // if (!info) {\n // return;\n // }\n options.position = cartesian3d;\n options.element = options.element || this.#element;\n\n InfoTool.#createInfoTool(this.viewer, options, function () {\n util.setInnerText(options.element, info);\n typeof callback === 'function' && callback();\n });\n }\n\n /**\n * 移除。\n */\n remove(entityId = undefined) {\n util.setCss(this.element, 'opacity', '0');\n util.setCss(this.element, 'z-index', '-1');\n util.setCss(this.#element, 'opacity', '0');\n }\n}\n\nexport default InfoTool;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_cesium","require","_util","_interopRequireDefault","_class","obj","__esModule","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","prototype","_defineProperty","value","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","Number","_classPrivateFieldInitSpec","privateMap","_checkPrivateRedeclaration","set","privateCollection","has","_classPrivateFieldGet","receiver","_classExtractFieldDescriptor","_classApplyDescriptorGet","get","_classPrivateFieldSet","_classApplyDescriptorSet","action","_classStaticPrivateMethodGet","classConstructor","method","_classCheckPrivateStaticAccess","_element","WeakMap","InfoTool","options","viewer","map","document","createElement","add","callback","arguments","element","position","cartesian2d","cartesian3d","inputFeature","Cesium3DTileFeature","Cartesian2","Cartesian3","scene","pickPositionSupported","defined","pick","pickPosition","camera","pickEllipsoid","globe","ellipsoid","SceneTransforms","wgs84ToWindowCoordinates","that","info","type","feature","remove","propertyNames","getPropertyNames","propertyName","getProperty","properties","_propertyNames","_value","content","_createInfoTool","util","setInnerText","entityId","setCss","cartographic","Cartographic","fromCartesian","lon","CesiumMath","toDegrees","longitude","lat","latitude","setTimeout","_popup","height","offset","divPosition","fromDegrees","x","y","_hookToGlobe","parseInt","getCss","requestRender","hideOnBehindGlobe","cartesian2","preRender","addEventListener","canvasPosition","cartesianToCanvasCoordinates","cameraPosition","cartesianToCartographic","maximumRadius","distance","_default","exports"],"sources":["map/InfoTool/index.js"],"sourcesContent":["import {\n Math as CesiumMath,\n Cesium3DTileFeature,\n Cartesian2,\n Cartesian3,\n Cartographic,\n SceneTransforms,\n defined,\n} from 'cesium';\nimport './index.less';\nimport util from './util';\n\n/**\n * 信息工具。\n *\n * @alias InfoTool\n * @constructor\n * @param {viewer} viewer Cesium视窗。\n */\nclass InfoTool {\n /**\n * 创建一个动态实体弹窗。\n *\n * @param {viewer} viewer Cesium视窗。\n * @param {Number} options 选项。\n * @param {Cartesian3} options.position 弹出位置。\n * @param {HTMLElement} options.element 弹出窗元素容器。\n * @param {Function} callback 回调函数。\n * @ignore\n */\n static #createInfoTool(viewer, options, callback = undefined) {\n const cartographic = Cartographic.fromCartesian(options.position);\n const lon = CesiumMath.toDegrees(cartographic.longitude); //.toFixed(5);\n const lat = CesiumMath.toDegrees(cartographic.latitude); //.toFixed(5);\n\n // 回调\n callback();\n\n // 添加div弹窗\n setTimeout(function() {\n InfoTool.#popup(\n viewer,\n options.element,\n lon,\n lat,\n cartographic.height,\n // options.geometryType,\n options.offset,\n );\n }, 100);\n }\n\n /**\n * 弹出HTML元素弹窗。\n * @param {viewer} viewer Cesium视窗。\n * @param {Element|HTMLElement} element 弹窗元素。\n * @param {Number} lon 经度。\n * @param {Number} lat 纬度。\n * @param {Number} height 高度。\n * @ignore\n */\n static #popup(viewer, element, lon, lat, height, offset) {\n setTimeout(function() {\n // 设置元素效果\n util.setCss(element, 'opacity', '1');\n util.setCss(element, 'z-index', '0');\n }, 100);\n const divPosition = Cartesian3.fromDegrees(lon, lat, height);\n\n let x = offset?.x || 0;\n let y = offset?.y || 0;\n\n InfoTool.#hookToGlobe(\n viewer,\n element,\n divPosition,\n [-4 + x, -parseInt(util.getCss(element, 'offsetHeight') + y)],\n true,\n );\n viewer.scene.requestRender();\n }\n\n /**\n * 将HTML弹窗挂接到地球上。\n *\n * @param {viewer} viewer Cesium视窗。\n * @param {Element} element 弹窗元素。\n * @param {Cartesian3} position 地图坐标点。\n * @param {Array} offset 偏移。\n * @param {Boolean} hideOnBehindGlobe 当元素在地球背面会自动隐藏,以减轻判断计算压力。\n * @ignore\n */\n static #hookToGlobe(viewer, element, position, offset, hideOnBehindGlobe) {\n const scene = viewer.scene,\n camera = viewer.camera;\n const cartesian2 = new Cartesian2();\n scene.preRender.addEventListener(function() {\n const canvasPosition = scene.cartesianToCanvasCoordinates(position, cartesian2); // 笛卡尔坐标到画布坐标\n if (defined(canvasPosition)) {\n util.setCss(element, 'left', parseInt(canvasPosition.x + offset[0]) + 'px');\n util.setCss(element, 'top', parseInt(canvasPosition.y + offset[1]) + 'px');\n\n // 是否在地球背面隐藏\n if (hideOnBehindGlobe) {\n const cameraPosition = camera.position;\n let height = scene.globe.ellipsoid.cartesianToCartographic(cameraPosition)\n .height;\n height += scene.globe.ellipsoid.maximumRadius;\n if (!(Cartesian3.distance(cameraPosition, position) > height)) {\n // util.setCss(element, 'display', 'flex');\n } else {\n util.setCss(element, 'display', 'none');\n }\n }\n }\n });\n }\n\n #element;\n viewer;\n\n constructor(options) {\n this.viewer = options.map;\n // 在Cesium容器中添加元素\n this.#element = document.createElement('div');\n }\n\n /**\n * 添加。\n * @param {Object} options 选项。\n * @param {Element} options.element 弹窗元素。\n * @param {Cartesian2|Cartesian3} options.position 点击位置。\n * @param {Cesium3DTileFeature} [options.inputFeature] 模型要素。\n * @param {String} options.type 类型(默认值为default,即任意点击模式;如果设置为info,即信息模式,只有点击Feature才会响应)。\n * @param {String} options.content 内容(只有类型为default时才起作用)。\n * @param {Function} callback 回调函数。\n */\n add(options, callback = undefined) {\n this.element = options.element;\n // 判断参数为空返回\n if (!options) {\n return;\n }\n // 点\n let position, cartesian2d, cartesian3d, inputFeature;\n if (options instanceof Cesium3DTileFeature) {\n inputFeature = options;\n options = {};\n } else {\n if (options instanceof Cartesian2 || options instanceof Cartesian3) {\n position = options;\n options = {};\n } else {\n position = options.position;\n inputFeature = options.inputFeature;\n }\n // 判断点位为空返回\n if (!position) {\n return;\n }\n if (position instanceof Cartesian2) {\n // 二维转三维\n // 如果支持拾取模型则取模型值\n cartesian3d =\n this.viewer.scene.pickPositionSupported &&\n defined(this.viewer.scene.pick(options.position))\n ? this.viewer.scene.pickPosition(position)\n : this.viewer.camera.pickEllipsoid(\n position,\n this.viewer.scene.globe.ellipsoid,\n );\n cartesian2d = position;\n } else {\n cartesian3d = position;\n cartesian2d = SceneTransforms.wgs84ToWindowCoordinates(\n this.viewer.scene,\n cartesian3d,\n );\n }\n // 判断点位为空返回\n if (!cartesian3d) {\n return;\n }\n }\n\n const that = this;\n\n // 1.组织信息\n let info = '';\n if (options.type === 'info') {\n // 拾取要素\n const feature = inputFeature || this.viewer.scene.pick(cartesian2d);\n // 判断拾取要素为空返回\n if (!defined(feature)) {\n this.remove();\n return;\n }\n\n if (feature instanceof Cesium3DTileFeature) {\n // 3dtiles\n let propertyNames = feature.getPropertyNames();\n let length = propertyNames.length;\n for (let i = 0; i < length; ++i) {\n let propertyName = propertyNames[i];\n info +=\n '\"' + (propertyName + '\": \"' + feature.getProperty(propertyName)) + '\",\\n';\n }\n } else if (feature) {\n // Entity\n const properties = feature.properties;\n if (properties) {\n let propertyNames = properties._propertyNames;\n let length = propertyNames.length;\n for (let i = 0; i < length; ++i) {\n let propertyName = propertyNames[i];\n info +=\n '\"' +\n (propertyName + '\": \"' + properties[propertyName]._value) +\n '\",\\n';\n }\n }\n }\n } else {\n options.content && (info = options.content);\n }\n\n // 2.生成特效\n // 添加之前先移除\n this.remove();\n // if (!info) {\n // return;\n // }\n options.position = cartesian3d;\n options.element = options.element || this.#element;\n\n InfoTool.#createInfoTool(this.viewer, options, function() {\n util.setInnerText(options.element, info);\n typeof callback === 'function' && callback();\n });\n }\n\n /**\n * 移除。\n */\n remove(entityId = undefined) {\n util.setCss(this.element, 'opacity', '0');\n util.setCss(this.element, 'z-index', '-1');\n util.setCss(this.#element, 'opacity', '0');\n }\n}\n\nexport default InfoTool;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _EventEmitter2 = _interopRequireDefault(require("../_util/EventEmitter"));
|
|
9
|
+
var _ImageLayer = _interopRequireDefault(require("../image-layer/ImageLayer"));
|
|
10
|
+
var _FeatureLayer = _interopRequireDefault(require("../feature-layer/FeatureLayer"));
|
|
11
|
+
var _GroupLayer = _interopRequireDefault(require("../group-layer/GroupLayer"));
|
|
12
|
+
var _cesium = require("cesium");
|
|
13
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
14
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
15
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
16
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
17
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
18
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
19
|
+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
20
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
21
|
+
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
22
|
+
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
|
23
|
+
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
24
|
+
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
25
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
26
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
27
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
28
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
29
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
30
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
31
|
+
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; }
|
|
32
|
+
// 获取所有keys
|
|
33
|
+
var _getAllKeys = function getAllKeys(data) {
|
|
34
|
+
var keys = [];
|
|
35
|
+
data.map(function (v) {
|
|
36
|
+
var _v$layers;
|
|
37
|
+
if ((_v$layers = v.layers) !== null && _v$layers !== void 0 && _v$layers.length) {
|
|
38
|
+
keys.push.apply(keys, _toConsumableArray(_getAllKeys(v.layers)));
|
|
39
|
+
} else {
|
|
40
|
+
keys.push(v.key);
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
return keys;
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
// 获取显示或隐藏的keys
|
|
47
|
+
var getLayersVisibleKeys = function getLayersVisibleKeys(data, map) {
|
|
48
|
+
var visible = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
|
|
49
|
+
var keys = [];
|
|
50
|
+
data.map(function (v) {
|
|
51
|
+
var _v$layers2;
|
|
52
|
+
if (v.key) {
|
|
53
|
+
var layer = map.getLayerByKey(v.key);
|
|
54
|
+
if (layer) {
|
|
55
|
+
var _layer$filters;
|
|
56
|
+
if ((_layer$filters = layer.filters) !== null && _layer$filters !== void 0 && _layer$filters.length) {
|
|
57
|
+
if (visible) {
|
|
58
|
+
layer.filters.map(function (f) {
|
|
59
|
+
if (!f.hasOwnProperty('show') || f.show) {
|
|
60
|
+
keys.push(f.key);
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
} else {
|
|
64
|
+
layer.filters.map(function (f) {
|
|
65
|
+
if (!f.show) {
|
|
66
|
+
keys.push(f.key);
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
} else if (layer.show === visible) {
|
|
71
|
+
keys.push(v.key);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
if ((_v$layers2 = v.layers) !== null && _v$layers2 !== void 0 && _v$layers2.length) {
|
|
76
|
+
var _keys = getLayersVisibleKeys(v.layers, map, visible);
|
|
77
|
+
if (_keys !== null && _keys !== void 0 && _keys.length) {
|
|
78
|
+
keys.push.apply(keys, _toConsumableArray(_keys));
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
return keys;
|
|
83
|
+
};
|
|
84
|
+
|
|
85
|
+
// 获取图层
|
|
86
|
+
var getLayers = function getLayers(data, layer, _keys) {
|
|
87
|
+
var layers = [];
|
|
88
|
+
data.map(function (v) {
|
|
89
|
+
var _v$layers3;
|
|
90
|
+
if (v.key && v instanceof layer) {
|
|
91
|
+
if (_keys) {
|
|
92
|
+
var keys = Array.isArray(_keys) ? _keys : [_keys];
|
|
93
|
+
if (keys.includes(v.key)) {
|
|
94
|
+
layers.push(v.key);
|
|
95
|
+
}
|
|
96
|
+
} else {
|
|
97
|
+
layers.push(v.key);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
if ((_v$layers3 = v.layers) !== null && _v$layers3 !== void 0 && _v$layers3.length) {
|
|
101
|
+
var _keys2 = getLayers(v.layers, layer);
|
|
102
|
+
if (_keys2 !== null && _keys2 !== void 0 && _keys2.length) {
|
|
103
|
+
layers.push.apply(layers, _toConsumableArray(_keys2));
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
return layers;
|
|
108
|
+
};
|
|
109
|
+
var Layers = /*#__PURE__*/function (_EventEmitter) {
|
|
110
|
+
_inherits(Layers, _EventEmitter);
|
|
111
|
+
var _super = _createSuper(Layers);
|
|
112
|
+
function Layers(options) {
|
|
113
|
+
var _this;
|
|
114
|
+
_classCallCheck(this, Layers);
|
|
115
|
+
_this = _super.call(this);
|
|
116
|
+
_this.map = options.map;
|
|
117
|
+
_this.layers = [];
|
|
118
|
+
return _this;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
// 图层改变的时候
|
|
122
|
+
_createClass(Layers, [{
|
|
123
|
+
key: "onChange",
|
|
124
|
+
value: function onChange() {
|
|
125
|
+
this.emit('change', this.layers);
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
// 图层新增
|
|
129
|
+
}, {
|
|
130
|
+
key: "addLayer",
|
|
131
|
+
value: function addLayer(layer) {
|
|
132
|
+
var map = this.map;
|
|
133
|
+
if (layer instanceof _cesium.CustomDataSource) {
|
|
134
|
+
map.dataSources.add(layer);
|
|
135
|
+
} else if (layer instanceof _cesium.ImageryLayer) {
|
|
136
|
+
map.scene.imageryLayers.add(layer);
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
// 图层是否含有name字段,作为加入到图层树的判断依据
|
|
140
|
+
if (layer.name) {
|
|
141
|
+
this.layers.push(layer);
|
|
142
|
+
this.onChange();
|
|
143
|
+
this.emit('add', layer);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
// 图层移除
|
|
148
|
+
}, {
|
|
149
|
+
key: "removeLayer",
|
|
150
|
+
value: function removeLayer(layer) {
|
|
151
|
+
var map = this.map;
|
|
152
|
+
if (layer instanceof _cesium.CustomDataSource) {
|
|
153
|
+
map.dataSources.remove(layer);
|
|
154
|
+
} else if (layer instanceof _cesium.ImageryLayer) {
|
|
155
|
+
map.scene.imageryLayers.remove(layer);
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
// 图层是否含有name字段,作为加入到图层树的判断依据
|
|
159
|
+
if (layer.name) {
|
|
160
|
+
this.layers = this.layers.filter(function (v) {
|
|
161
|
+
return v !== layer;
|
|
162
|
+
});
|
|
163
|
+
this.emit('remove', layer);
|
|
164
|
+
this.onChange();
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
}, {
|
|
168
|
+
key: "clearLayers",
|
|
169
|
+
value:
|
|
170
|
+
// 图层清空
|
|
171
|
+
function clearLayers() {
|
|
172
|
+
var map = this.map;
|
|
173
|
+
var imageryLayers = map.getImageryLayers() || [];
|
|
174
|
+
map.dataSources.removeAll();
|
|
175
|
+
imageryLayers.map(function (layer) {
|
|
176
|
+
if (layer !== null && layer !== void 0 && layer.key) {
|
|
177
|
+
map.imageryLayers.remove(layer);
|
|
178
|
+
}
|
|
179
|
+
});
|
|
180
|
+
map.entities.removeAll();
|
|
181
|
+
this.layers = [];
|
|
182
|
+
this.emit('clear');
|
|
183
|
+
this.onChange();
|
|
184
|
+
}
|
|
185
|
+
}, {
|
|
186
|
+
key: "getAllKeys",
|
|
187
|
+
value:
|
|
188
|
+
// 获取 layers 里面的 key 集合
|
|
189
|
+
function getAllKeys() {
|
|
190
|
+
return _getAllKeys(this.layers);
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
// 获取当前展示的 keys
|
|
194
|
+
}, {
|
|
195
|
+
key: "getShowKeys",
|
|
196
|
+
value: function getShowKeys() {
|
|
197
|
+
return getLayersVisibleKeys(this.layers, this.map, true);
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
// 获取当前隐藏的 keys
|
|
201
|
+
}, {
|
|
202
|
+
key: "getHiddenKeys",
|
|
203
|
+
value: function getHiddenKeys() {
|
|
204
|
+
return getLayersVisibleKeys(this.layers, this.map, false);
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
// 获取 ImageLayer 图层
|
|
208
|
+
}, {
|
|
209
|
+
key: "getImageLayers",
|
|
210
|
+
value: function getImageLayers(_keys) {
|
|
211
|
+
return getLayers(this.layers, _ImageLayer["default"], _keys);
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
// 获取 FeatureLayer 图层
|
|
215
|
+
}, {
|
|
216
|
+
key: "getFeatureLayers",
|
|
217
|
+
value: function getFeatureLayers(_keys) {
|
|
218
|
+
return getLayers(this.layers, _FeatureLayer["default"], _keys);
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
// 根据key查找imageryLayers图层
|
|
222
|
+
}, {
|
|
223
|
+
key: "getImageryLayers",
|
|
224
|
+
value: function getImageryLayers(_keys) {
|
|
225
|
+
var _map$imageryLayers;
|
|
226
|
+
var map = this.map;
|
|
227
|
+
var layers = (map === null || map === void 0 || (_map$imageryLayers = map.imageryLayers) === null || _map$imageryLayers === void 0 ? void 0 : _map$imageryLayers._layers) || [];
|
|
228
|
+
if (_keys && layers.length) {
|
|
229
|
+
var keys = Array.isArray(_keys) ? _keys : [_keys];
|
|
230
|
+
return layers.filter(function (layer) {
|
|
231
|
+
return layer.key && keys.includes(layer.key);
|
|
232
|
+
});
|
|
233
|
+
}
|
|
234
|
+
return layers;
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
// 根据 keys 设置图层的显示,其他的隐藏
|
|
238
|
+
}, {
|
|
239
|
+
key: "setShowByKeys",
|
|
240
|
+
value: function setShowByKeys(_keys) {
|
|
241
|
+
var map = this.map;
|
|
242
|
+
var keys = Array.isArray(_keys) ? _keys : [_keys];
|
|
243
|
+
this.getAllKeys().map(function (a) {
|
|
244
|
+
var layer = map.getLayerByKey(a);
|
|
245
|
+
if (layer) {
|
|
246
|
+
var _layer$filters2;
|
|
247
|
+
if ((_layer$filters2 = layer.filters) !== null && _layer$filters2 !== void 0 && _layer$filters2.length) {
|
|
248
|
+
layer.filters.map(function (v) {
|
|
249
|
+
v.show = _keys.includes(v.key);
|
|
250
|
+
});
|
|
251
|
+
layer.setFilters(layer.filters);
|
|
252
|
+
} else {
|
|
253
|
+
var show = keys.includes(a);
|
|
254
|
+
layer.setVisible(show);
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
});
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
// 根据 keys 设置图层的隐藏,其他的显示
|
|
261
|
+
}, {
|
|
262
|
+
key: "setHideByKeys",
|
|
263
|
+
value: function setHideByKeys(_keys) {
|
|
264
|
+
var map = this.map;
|
|
265
|
+
var keys = Array.isArray(_keys) ? _keys : [_keys];
|
|
266
|
+
this.getAllKeys().map(function (a) {
|
|
267
|
+
var layer = map.getLayerByKey(a);
|
|
268
|
+
if (layer) {
|
|
269
|
+
layer.show = !keys.includes(a);
|
|
270
|
+
}
|
|
271
|
+
});
|
|
272
|
+
}
|
|
273
|
+
}]);
|
|
274
|
+
return Layers;
|
|
275
|
+
}(_EventEmitter2["default"]);
|
|
276
|
+
var _default = Layers;
|
|
277
|
+
exports["default"] = _default;
|
|
278
|
+
//# sourceMappingURL=Layers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Layers.js","names":["_EventEmitter2","_interopRequireDefault","require","_ImageLayer","_FeatureLayer","_GroupLayer","_cesium","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$filters","filters","f","hasOwnProperty","show","_keys","getLayers","_v$layers3","includes","Layers","_EventEmitter","_super","options","_this","onChange","emit","addLayer","CustomDataSource","dataSources","add","ImageryLayer","scene","imageryLayers","removeLayer","remove","filter","clearLayers","getImageryLayers","removeAll","entities","getShowKeys","getHiddenKeys","getImageLayers","ImageLayer","getFeatureLayers","FeatureLayer","_map$imageryLayers","_layers","setShowByKeys","a","_layer$filters2","setFilters","setVisible","setHideByKeys","EventEmitter","_default","exports"],"sources":["map/Layers.js"],"sourcesContent":["import EventEmitter from '../_util/EventEmitter';\nimport ImageLayer from \"../image-layer/ImageLayer\";\nimport FeatureLayer from \"../feature-layer/FeatureLayer\";\nimport GroupLayer from \"../group-layer/GroupLayer\";\nimport {CustomDataSource, ImageryLayer} from 'cesium';\n\n// 获取所有keys\nconst getAllKeys = data => {\n let keys = [];\n data.map(v => {\n if (v.layers?.length) {\n keys.push(...getAllKeys(v.layers));\n } else {\n keys.push(v.key);\n }\n });\n\n return keys;\n};\n\n// 获取显示或隐藏的keys\nconst getLayersVisibleKeys = (data, map, visible = true) => {\n let keys = [];\n data.map(v => {\n if (v.key) {\n let layer = map.getLayerByKey(v.key);\n if (layer) {\n if (layer.filters?.length) {\n if (visible) {\n layer.filters.map(f => {\n if (!f.hasOwnProperty('show') || f.show) {\n keys.push(f.key)\n }\n })\n } else {\n layer.filters.map(f => {\n if (!f.show) {\n keys.push(f.key)\n }\n })\n }\n } else if (layer.show === visible) {\n keys.push(v.key);\n }\n }\n }\n if (v.layers?.length) {\n let _keys = getLayersVisibleKeys(v.layers, map, visible);\n if (_keys?.length) {\n keys.push(..._keys);\n }\n }\n });\n\n return keys;\n};\n\n// 获取图层\nconst getLayers = (data, layer, _keys) => {\n const layers = [];\n\n data.map(v => {\n if (v.key && v instanceof layer) {\n if (_keys) {\n const keys = Array.isArray(_keys) ? _keys : [_keys];\n if (keys.includes(v.key)) {\n layers.push(v.key);\n }\n } else {\n layers.push(v.key);\n }\n }\n\n if (v.layers?.length) {\n let _keys = getLayers(v.layers, layer);\n if (_keys?.length) {\n layers.push(..._keys);\n }\n }\n });\n\n return layers;\n};\n\nclass Layers extends EventEmitter{\n constructor(options) {\n super();\n\n this.map = options.map;\n\n this.layers = [];\n }\n\n // 图层改变的时候\n onChange() {\n this.emit('change', this.layers);\n }\n\n // 图层新增\n addLayer(layer) {\n const map = this.map;\n\n if (layer instanceof CustomDataSource) {\n map.dataSources.add(layer);\n } else if (layer instanceof ImageryLayer) {\n map.scene.imageryLayers.add(layer);\n }\n\n // 图层是否含有name字段,作为加入到图层树的判断依据\n if (layer.name) {\n this.layers.push(layer);\n this.onChange();\n this.emit('add', layer);\n }\n }\n\n // 图层移除\n removeLayer(layer) {\n const map = this.map;\n\n if (layer instanceof CustomDataSource) {\n map.dataSources.remove(layer);\n } else if (layer instanceof ImageryLayer) {\n map.scene.imageryLayers.remove(layer);\n }\n\n // 图层是否含有name字段,作为加入到图层树的判断依据\n if (layer.name) {\n this.layers = this.layers.filter(v => v !== layer);\n this.emit('remove', layer);\n this.onChange();\n }\n };\n\n // 图层清空\n clearLayers() {\n const map = this.map;\n const imageryLayers = map.getImageryLayers() || [];\n\n map.dataSources.removeAll();\n\n imageryLayers.map(layer => {\n if (layer?.key) {\n map.imageryLayers.remove(layer);\n }\n });\n\n map.entities.removeAll();\n\n this.layers = [];\n this.emit('clear');\n this.onChange();\n };\n\n // 获取 layers 里面的 key 集合\n getAllKeys() {\n return getAllKeys(this.layers)\n }\n\n // 获取当前展示的 keys\n getShowKeys() {\n return getLayersVisibleKeys(this.layers, this.map, true);\n }\n\n // 获取当前隐藏的 keys\n getHiddenKeys() {\n return getLayersVisibleKeys(this.layers, this.map, false);\n }\n\n // 获取 ImageLayer 图层\n getImageLayers(_keys) {\n return getLayers(this.layers, ImageLayer, _keys)\n }\n\n // 获取 FeatureLayer 图层\n getFeatureLayers(_keys) {\n return getLayers(this.layers, FeatureLayer, _keys)\n }\n\n // 根据key查找imageryLayers图层\n getImageryLayers(_keys) {\n const map = this.map;\n\n const layers = map?.imageryLayers?._layers || [];\n\n if (_keys && layers.length) {\n const keys = Array.isArray(_keys) ? _keys : [_keys];\n\n return layers.filter(layer => (layer.key && keys.includes(layer.key)));\n }\n\n return layers;\n }\n\n // 根据 keys 设置图层的显示,其他的隐藏\n setShowByKeys(_keys) {\n const map = this.map;\n\n const keys = Array.isArray(_keys) ? _keys : [_keys];\n\n this.getAllKeys().map(a => {\n let layer = map.getLayerByKey(a);\n if (layer) {\n if (layer.filters?.length) {\n layer.filters.map(v => {\n v.show = _keys.includes(v.key)\n })\n\n layer.setFilters(layer.filters);\n } else {\n let show = keys.includes(a);\n layer.setVisible(show);\n }\n }\n });\n }\n\n // 根据 keys 设置图层的隐藏,其他的显示\n setHideByKeys(_keys) {\n const map = this.map;\n\n const keys = Array.isArray(_keys) ? _keys : [_keys];\n\n this.getAllKeys().map(a => {\n let layer = map.getLayerByKey(a);\n if (layer) {\n layer.show = !keys.includes(a);\n }\n });\n }\n}\n\nexport default Layers;\n"],"mappings":"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"}
|
package/lib/map/Popup.js
CHANGED
|
@@ -11,7 +11,9 @@ 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
|
|
14
|
+
var _useProps = _interopRequireDefault(require("../_util/useProps"));
|
|
15
|
+
var _createFeatureCollection = require("../feature-layer/createFeatureCollection");
|
|
16
|
+
var _HighlightLayer = _interopRequireDefault(require("../highlight-layer/HighlightLayer"));
|
|
15
17
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
16
18
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
17
19
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -37,10 +39,17 @@ var handelGeometry = function handelGeometry(entity) {
|
|
|
37
39
|
y: 20
|
|
38
40
|
};
|
|
39
41
|
if (['MultiLineString', 'LineString'].includes(type) && coordinates !== null && coordinates !== void 0 && coordinates.length) {
|
|
42
|
+
var point1 = null;
|
|
43
|
+
var point2 = null;
|
|
40
44
|
// 线
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
45
|
+
if (coordinates.length > 1) {
|
|
46
|
+
point1 = (0, _turf.point)(coordinates[0]);
|
|
47
|
+
point2 = (0, _turf.point)(coordinates[1]);
|
|
48
|
+
} else {
|
|
49
|
+
var lngLatArr = coordinates[0];
|
|
50
|
+
point1 = (0, _turf.point)(lngLatArr[0]);
|
|
51
|
+
point2 = (0, _turf.point)(lngLatArr[1]);
|
|
52
|
+
}
|
|
44
53
|
midpoint = (0, _turf.midpoint)(point1, point2);
|
|
45
54
|
} else if (['Polygon', 'MultiPolygon'].includes(type)) {
|
|
46
55
|
// 面
|
|
@@ -64,8 +73,7 @@ var handelGeometry = function handelGeometry(entity) {
|
|
|
64
73
|
};
|
|
65
74
|
exports.handelGeometry = handelGeometry;
|
|
66
75
|
var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
67
|
-
var
|
|
68
|
-
map = _useProps.map;
|
|
76
|
+
var map = props.map;
|
|
69
77
|
var _useState = (0, _react.useState)(null),
|
|
70
78
|
_useState2 = _slicedToArray(_useState, 2),
|
|
71
79
|
content = _useState2[0],
|
|
@@ -79,6 +87,17 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
79
87
|
var infoToolRef = (0, _react.useRef)(new _InfoTool["default"]({
|
|
80
88
|
map: map
|
|
81
89
|
}));
|
|
90
|
+
var highlightLayer = (0, _react.useRef)();
|
|
91
|
+
(0, _react.useEffect)(function () {
|
|
92
|
+
highlightLayer.current = new _HighlightLayer["default"]({
|
|
93
|
+
map: map
|
|
94
|
+
});
|
|
95
|
+
map.highlightLayer = highlightLayer.current;
|
|
96
|
+
return function () {
|
|
97
|
+
highlightLayer.current.destroy();
|
|
98
|
+
map.highlightLayer = null;
|
|
99
|
+
};
|
|
100
|
+
}, []);
|
|
82
101
|
(0, _react.useImperativeHandle)(ref, function () {
|
|
83
102
|
return {
|
|
84
103
|
showTemplate: showTemplate,
|
|
@@ -86,7 +105,7 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
86
105
|
};
|
|
87
106
|
});
|
|
88
107
|
var showTemplate = function showTemplate(feature) {
|
|
89
|
-
var _feature$_polyline, _feature$_position;
|
|
108
|
+
var _feature$_polyline, _feature$_position, _feature$position;
|
|
90
109
|
var layer = map.getLayerByFeature(feature);
|
|
91
110
|
if (!(layer !== null && layer !== void 0 && layer.template)) {
|
|
92
111
|
return;
|
|
@@ -112,6 +131,27 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
112
131
|
x: 5,
|
|
113
132
|
y: 76
|
|
114
133
|
};
|
|
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
|
+
};
|
|
139
|
+
}
|
|
140
|
+
if (feature.primitive) {
|
|
141
|
+
var _midpoint$geometry;
|
|
142
|
+
offset = {
|
|
143
|
+
x: 0,
|
|
144
|
+
y: 20
|
|
145
|
+
};
|
|
146
|
+
var geometry = (0, _createFeatureCollection.transformGeometry)(properties.geometryInfo);
|
|
147
|
+
var _geometry$coordinates = _slicedToArray(geometry.coordinates[0], 2),
|
|
148
|
+
point1 = _geometry$coordinates[0],
|
|
149
|
+
point2 = _geometry$coordinates[1];
|
|
150
|
+
var midpoint = (0, _turf.midpoint)(point1, point2);
|
|
151
|
+
if (midpoint !== null && midpoint !== void 0 && (_midpoint$geometry = midpoint.geometry) !== null && _midpoint$geometry !== void 0 && _midpoint$geometry.coordinates) {
|
|
152
|
+
position = _cesium.Cartesian3.fromDegrees.apply(_cesium.Cartesian3, _toConsumableArray(midpoint.geometry.coordinates));
|
|
153
|
+
}
|
|
154
|
+
}
|
|
115
155
|
|
|
116
156
|
// 影像图层的数据
|
|
117
157
|
if (feature instanceof _cesium.ImageryLayerFeatureInfo) {
|
|
@@ -132,49 +172,60 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
132
172
|
offset: offset
|
|
133
173
|
});
|
|
134
174
|
map.popupRef = feature;
|
|
175
|
+
highlightLayer.current.addHighlightFeature(feature);
|
|
135
176
|
};
|
|
136
|
-
var hideTemplate = function hideTemplate() {
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
177
|
+
var hideTemplate = function hideTemplate(_layer) {
|
|
178
|
+
if (_layer) {
|
|
179
|
+
var layer = typeof _layer === 'string' ? map.getLayerByKey(_layer) : _layer;
|
|
180
|
+
if (layer && layer.key && map.popupRef) {
|
|
181
|
+
var _highlightLayer = map.getLayerByFeature(map.popupRef);
|
|
182
|
+
if (_highlightLayer.key === layer.key) {
|
|
183
|
+
onClose();
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
} else {
|
|
187
|
+
onClose();
|
|
146
188
|
}
|
|
189
|
+
map.fitView();
|
|
147
190
|
};
|
|
148
191
|
|
|
149
192
|
// 判断点位异常-点位异常展示红色
|
|
150
193
|
function judgeAbnormal() {
|
|
151
|
-
var _featureRef$current;
|
|
152
194
|
var _ref = map.getProperties(featureRef.current) || {},
|
|
153
195
|
status = _ref.status;
|
|
154
|
-
|
|
155
|
-
var abnormal = ['LLD', 'YLD', 'SZJCD'].includes(key) && [1, 2, 4].includes(status);
|
|
156
|
-
return abnormal;
|
|
196
|
+
return status && [1, 2, 4].includes(status);
|
|
157
197
|
}
|
|
198
|
+
|
|
199
|
+
// 关闭气泡
|
|
158
200
|
var onClose = function onClose() {
|
|
201
|
+
var _infoToolRef$current;
|
|
159
202
|
map.onCloseTemplateBefore && map.onCloseTemplateBefore(featureRef.current);
|
|
160
|
-
|
|
203
|
+
map.popupRef = null;
|
|
204
|
+
featureRef.current = null;
|
|
205
|
+
infoToolRef === null || infoToolRef === void 0 || (_infoToolRef$current = infoToolRef.current) === null || _infoToolRef$current === void 0 || _infoToolRef$current.remove();
|
|
206
|
+
if (map.entities.getById('highlight-1')) {
|
|
207
|
+
map.entities.remove(map.entities.getById('highlight-1'));
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
// 清除高亮
|
|
211
|
+
highlightLayer.current.clearFeatures();
|
|
161
212
|
};
|
|
162
213
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
163
214
|
ref: popupRef,
|
|
164
215
|
className: (0, _classnames["default"])('cesium-popup', {
|
|
165
|
-
abnormal: judgeAbnormal()
|
|
216
|
+
'cesium-popup-abnormal': judgeAbnormal()
|
|
166
217
|
})
|
|
167
218
|
}, /*#__PURE__*/_react["default"].createElement(_icons.CloseOutlined, {
|
|
168
|
-
className: (0, _classnames["default"])('close'),
|
|
219
|
+
className: (0, _classnames["default"])('cesium-popup-close'),
|
|
169
220
|
width: 16,
|
|
170
221
|
height: 16,
|
|
171
222
|
onClick: onClose
|
|
172
223
|
}), /*#__PURE__*/_react["default"].createElement("div", {
|
|
173
|
-
className: (0, _classnames["default"])('title', {
|
|
174
|
-
|
|
224
|
+
className: (0, _classnames["default"])('cesium-popup-title', {
|
|
225
|
+
'cesium-popup-no-title': !title
|
|
175
226
|
})
|
|
176
227
|
}, title), /*#__PURE__*/_react["default"].createElement("div", {
|
|
177
|
-
className: (0, _classnames["default"])('content'),
|
|
228
|
+
className: (0, _classnames["default"])('cesium-popup-content'),
|
|
178
229
|
id: "content"
|
|
179
230
|
}, content));
|
|
180
231
|
});
|