@vtx/cs-map 1.0.38 → 1.0.39
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 +79 -0
- package/lib/_util/EventEmitter.js.map +1 -0
- package/lib/_util/Provider.js +12 -0
- package/lib/_util/Provider.js.map +1 -0
- package/lib/_util/filterSpecialCharacters.js +90 -0
- package/lib/_util/filterSpecialCharacters.js.map +1 -0
- package/lib/_util/generateRandomPosition.js +24 -0
- package/lib/_util/generateRandomPosition.js.map +1 -0
- package/lib/_util/getBBoxFromGeojson.js +65 -0
- package/lib/_util/getBBoxFromGeojson.js.map +1 -0
- package/lib/_util/getComponentProps.js +14 -0
- package/lib/_util/getComponentProps.js.map +1 -0
- package/lib/_util/getCookie.js +24 -0
- package/lib/_util/getCookie.js.map +1 -0
- package/lib/_util/getDefaultMapInfo.js +33 -0
- package/lib/_util/getDefaultMapInfo.js.map +1 -0
- package/lib/_util/getSystemInfo.js +26 -0
- package/lib/_util/getSystemInfo.js.map +1 -0
- package/lib/_util/getToken.js +13 -0
- package/lib/_util/getToken.js.map +1 -0
- package/lib/_util/getUrlParam.js +15 -0
- package/lib/_util/getUrlParam.js.map +1 -0
- package/lib/_util/http.js +186 -0
- package/lib/_util/http.js.map +1 -0
- package/lib/_util/isFunction.js +10 -0
- package/lib/_util/isFunction.js.map +1 -0
- package/lib/_util/isObject.js +10 -0
- package/lib/_util/isObject.js.map +1 -0
- package/lib/_util/layer.js +134 -0
- package/lib/_util/layer.js.map +1 -0
- package/lib/_util/mapTool.js +187 -0
- package/lib/_util/mapTool.js.map +1 -0
- package/lib/_util/setCookie.js +15 -0
- package/lib/_util/setCookie.js.map +1 -0
- package/lib/_util/transformRgb.js +33 -0
- package/lib/_util/transformRgb.js.map +1 -0
- package/lib/_util/useColSize.js +28 -0
- package/lib/_util/useColSize.js.map +1 -0
- package/lib/_util/useInterval.js +19 -0
- package/lib/_util/useInterval.js.map +1 -0
- package/lib/_util/useProps.js +14 -0
- package/lib/_util/useProps.js.map +1 -0
- package/lib/_util/useSet.js +44 -0
- package/lib/_util/useSet.js.map +1 -0
- package/lib/assets/base-img-1.png +0 -0
- package/lib/assets/base-img-2.png +0 -0
- package/lib/assets/base-img-3.png +0 -0
- package/lib/assets/base-img-4.png +0 -0
- package/lib/assets/base-img-5.png +0 -0
- package/lib/assets/base-img.png +0 -0
- package/lib/assets/bz.png +0 -0
- package/lib/assets/colors.png +0 -0
- package/lib/assets/colors1.png +0 -0
- package/lib/assets/ll.png +0 -0
- package/lib/assets/people.gif +0 -0
- package/lib/assets/sw.png +0 -0
- package/lib/assets/water.png +0 -0
- package/lib/assets/yl.png +0 -0
- package/lib/cesium-tiles-layer/CesiumTilesLayer.js +56 -0
- package/lib/cesium-tiles-layer/CesiumTilesLayer.js.map +1 -0
- package/lib/cesium-tiles-layer/index.js +73 -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/circle/circle.js +67 -0
- package/lib/circle/circle.js.map +1 -0
- package/lib/circle/index.js +49 -0
- package/lib/circle/index.js.map +1 -0
- package/lib/circle/style/css.js +2 -0
- package/lib/circle/style/css.js.map +1 -0
- package/lib/circle/style/index.js +2 -0
- package/lib/circle/style/index.js.map +1 -0
- package/lib/config.js +12 -0
- package/lib/config.js.map +1 -0
- package/lib/demand-layer/DemandLayer.js +409 -0
- package/lib/demand-layer/DemandLayer.js.map +1 -0
- package/lib/demand-layer/index.js +104 -0
- package/lib/demand-layer/index.js.map +1 -0
- package/lib/demand-layer/style/css.js +4 -0
- package/lib/demand-layer/style/css.js.map +1 -0
- package/lib/demand-layer/style/index.css +0 -0
- package/lib/demand-layer/style/index.js +4 -0
- package/lib/demand-layer/style/index.js.map +1 -0
- package/lib/demand-layer/style/index.less +0 -0
- package/lib/events/index.js +27 -0
- package/lib/events/index.js.map +1 -0
- package/lib/feature-layer/FeatureLayer.js +458 -0
- package/lib/feature-layer/FeatureLayer.js.map +1 -0
- package/lib/feature-layer/createFeatureCollection.js +127 -0
- package/lib/feature-layer/createFeatureCollection.js.map +1 -0
- package/lib/feature-layer/index.js +115 -0
- package/lib/feature-layer/index.js.map +1 -0
- package/lib/feature-layer/style/css.js +4 -0
- package/lib/feature-layer/style/css.js.map +1 -0
- package/lib/feature-layer/style/index.css +0 -0
- package/lib/feature-layer/style/index.js +4 -0
- package/lib/feature-layer/style/index.js.map +1 -0
- package/lib/feature-layer/style/index.less +0 -0
- package/lib/fly-line-layer/FlyLineLayer.js +259 -0
- package/lib/fly-line-layer/FlyLineLayer.js.map +1 -0
- package/lib/fly-line-layer/index.js +90 -0
- package/lib/fly-line-layer/index.js.map +1 -0
- package/lib/fly-line-layer/lineFlowMaterialProperty.js +89 -0
- package/lib/fly-line-layer/lineFlowMaterialProperty.js.map +1 -0
- package/lib/fly-line-layer/style/css.js +4 -0
- package/lib/fly-line-layer/style/css.js.map +1 -0
- package/lib/fly-line-layer/style/index.css +0 -0
- package/lib/fly-line-layer/style/index.js +4 -0
- package/lib/fly-line-layer/style/index.js.map +1 -0
- package/lib/fly-line-layer/style/index.less +0 -0
- package/lib/gif-dom-layer/GifDomLayer.js +104 -0
- package/lib/gif-dom-layer/GifDomLayer.js.map +1 -0
- package/lib/gif-dom-layer/index.js +44 -0
- package/lib/gif-dom-layer/index.js.map +1 -0
- package/lib/gif-dom-layer/style/css.js +4 -0
- package/lib/gif-dom-layer/style/css.js.map +1 -0
- package/lib/gif-dom-layer/style/index.css +0 -0
- package/lib/gif-dom-layer/style/index.js +4 -0
- package/lib/gif-dom-layer/style/index.js.map +1 -0
- package/lib/gif-dom-layer/style/index.less +0 -0
- package/lib/gradation-line-layer/GradationLineLayer.js +103 -0
- package/lib/gradation-line-layer/GradationLineLayer.js.map +1 -0
- package/lib/gradation-line-layer/index.js +83 -0
- package/lib/gradation-line-layer/index.js.map +1 -0
- package/lib/gradation-line-layer/style/css.js +4 -0
- package/lib/gradation-line-layer/style/css.js.map +1 -0
- package/lib/gradation-line-layer/style/index.css +0 -0
- package/lib/gradation-line-layer/style/index.js +4 -0
- package/lib/gradation-line-layer/style/index.js.map +1 -0
- package/lib/gradation-line-layer/style/index.less +0 -0
- package/lib/group-layer/GroupLayer.js +131 -0
- package/lib/group-layer/GroupLayer.js.map +1 -0
- package/lib/group-layer/index.js +71 -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/heatmap-layer/CesiumHeatmap.js +445 -0
- package/lib/heatmap-layer/CesiumHeatmap.js.map +1 -0
- package/lib/heatmap-layer/HeatmapLayer.js +157 -0
- package/lib/heatmap-layer/HeatmapLayer.js.map +1 -0
- package/lib/heatmap-layer/heatmap.js +610 -0
- package/lib/heatmap-layer/heatmap.js.map +1 -0
- package/lib/heatmap-layer/index.js +90 -0
- package/lib/heatmap-layer/index.js.map +1 -0
- package/lib/heatmap-layer/style/css.js +4 -0
- package/lib/heatmap-layer/style/css.js.map +1 -0
- package/lib/heatmap-layer/style/index.css +0 -0
- package/lib/heatmap-layer/style/index.js +4 -0
- package/lib/heatmap-layer/style/index.js.map +1 -0
- package/lib/heatmap-layer/style/index.less +0 -0
- package/lib/highlight-layer/HighlightLayer.js +261 -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 +244 -0
- package/lib/image-layer/ImageLayer.js.map +1 -0
- package/lib/image-layer/index.js +134 -0
- package/lib/image-layer/index.js.map +1 -0
- package/lib/image-layer/style/css.js +4 -0
- package/lib/image-layer/style/css.js.map +1 -0
- package/lib/image-layer/style/index.css +0 -0
- package/lib/image-layer/style/index.js +4 -0
- package/lib/image-layer/style/index.js.map +1 -0
- package/lib/image-layer/style/index.less +0 -0
- package/lib/index.js +147 -0
- package/lib/index.js.map +1 -0
- package/lib/label/Label.js +74 -0
- package/lib/label/Label.js.map +1 -0
- package/lib/label/index.js +51 -0
- package/lib/label/index.js.map +1 -0
- package/lib/label/style/css.js +2 -0
- package/lib/label/style/css.js.map +1 -0
- package/lib/label/style/index.js +2 -0
- package/lib/label/style/index.js.map +1 -0
- package/lib/legend/index.js +208 -0
- package/lib/legend/index.js.map +1 -0
- package/lib/legend/style/css.js +8 -0
- package/lib/legend/style/css.js.map +1 -0
- package/lib/legend/style/index.css +60 -0
- package/lib/legend/style/index.js +8 -0
- package/lib/legend/style/index.js.map +1 -0
- package/lib/legend/style/index.less +63 -0
- package/lib/line-flow-layer/LineFlowLayer.js +104 -0
- package/lib/line-flow-layer/LineFlowLayer.js.map +1 -0
- package/lib/line-flow-layer/index.js +34 -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.css +55 -0
- package/lib/map/InfoTool/index.js +246 -0
- package/lib/map/InfoTool/index.js.map +1 -0
- package/lib/map/InfoTool/index.less +46 -0
- package/lib/map/InfoTool/util.js +112 -0
- package/lib/map/InfoTool/util.js.map +1 -0
- package/lib/map/InfoWindow.js +72 -0
- package/lib/map/InfoWindow.js.map +1 -0
- package/lib/map/Layers.js +286 -0
- package/lib/map/Layers.js.map +1 -0
- package/lib/map/Popup.js +301 -0
- package/lib/map/Popup.js.map +1 -0
- package/lib/map/base/imagery/amap/AmapImageryProvider.js +46 -0
- package/lib/map/base/imagery/amap/AmapImageryProvider.js.map +1 -0
- package/lib/map/base/imagery/amap/AmapMercatorTilingScheme.js +46 -0
- package/lib/map/base/imagery/amap/AmapMercatorTilingScheme.js.map +1 -0
- package/lib/map/base/imagery/baidu/BaiduImageryProvider.js +146 -0
- package/lib/map/base/imagery/baidu/BaiduImageryProvider.js.map +1 -0
- package/lib/map/base/imagery/baidu/BaiduMercatorProjection.js +377 -0
- package/lib/map/base/imagery/baidu/BaiduMercatorProjection.js.map +1 -0
- package/lib/map/base/imagery/baidu/BaiduMercatorTilingScheme.js +121 -0
- package/lib/map/base/imagery/baidu/BaiduMercatorTilingScheme.js.map +1 -0
- package/lib/map/base/imagery/geoq/GeoQImageryProvider.js +48 -0
- package/lib/map/base/imagery/geoq/GeoQImageryProvider.js.map +1 -0
- package/lib/map/base/imagery/google/GoogleImageryProvider.js +41 -0
- package/lib/map/base/imagery/google/GoogleImageryProvider.js.map +1 -0
- package/lib/map/base/imagery/tdt/TdtImageryProvider.js +38 -0
- package/lib/map/base/imagery/tdt/TdtImageryProvider.js.map +1 -0
- package/lib/map/base/imagery/tencent/TencentImageryProvider.js +59 -0
- package/lib/map/base/imagery/tencent/TencentImageryProvider.js.map +1 -0
- package/lib/map/base/imagery/transform/AmapMercatorTilingScheme.js +46 -0
- package/lib/map/base/imagery/transform/AmapMercatorTilingScheme.js.map +1 -0
- package/lib/map/base/imagery/transform/CoordTransform.js +173 -0
- package/lib/map/base/imagery/transform/CoordTransform.js.map +1 -0
- package/lib/map/base/index.js +204 -0
- package/lib/map/base/index.js.map +1 -0
- package/lib/map/hooks/useGetMapFeatureInfoByText.js +209 -0
- package/lib/map/hooks/useGetMapFeatureInfoByText.js.map +1 -0
- package/lib/map/index.js +843 -0
- package/lib/map/index.js.map +1 -0
- package/lib/map/material/AroundPoint.js +65 -0
- package/lib/map/material/AroundPoint.js.map +1 -0
- package/lib/map/material/CircleRippleMaterialProperty.js +87 -0
- package/lib/map/material/CircleRippleMaterialProperty.js.map +1 -0
- package/lib/map/material/ODLineLayer.js +91 -0
- package/lib/map/material/ODLineLayer.js.map +1 -0
- package/lib/map/material/PolylineTrailLinkMaterialProperty.js +100 -0
- package/lib/map/material/PolylineTrailLinkMaterialProperty.js.map +1 -0
- package/lib/map/material/PolylineTrailMaterialProperty.js +101 -0
- package/lib/map/material/PolylineTrailMaterialProperty.js.map +1 -0
- package/lib/map/material/TilesBuilding.js +207 -0
- package/lib/map/material/TilesBuilding.js.map +1 -0
- package/lib/map/material/assets/colors1.png +0 -0
- package/lib/map/material/assets/colors2.png +0 -0
- package/lib/map/material/index.js +16 -0
- package/lib/map/material/index.js.map +1 -0
- package/lib/map/style/css.js +4 -0
- package/lib/map/style/css.js.map +1 -0
- package/lib/map/style/index.css +155 -0
- package/lib/map/style/index.js +4 -0
- package/lib/map/style/index.js.map +1 -0
- package/lib/map/style/index.less +149 -0
- package/lib/marker/Marker.js +112 -0
- package/lib/marker/Marker.js.map +1 -0
- package/lib/marker/index.js +49 -0
- package/lib/marker/index.js.map +1 -0
- package/lib/marker/style/css.js +2 -0
- package/lib/marker/style/css.js.map +1 -0
- package/lib/marker/style/index.js +2 -0
- package/lib/marker/style/index.js.map +1 -0
- package/lib/point/Point.js +69 -0
- package/lib/point/Point.js.map +1 -0
- package/lib/point/index.js +49 -0
- package/lib/point/index.js.map +1 -0
- package/lib/point/style/css.js +2 -0
- package/lib/point/style/css.js.map +1 -0
- package/lib/point/style/index.js +2 -0
- package/lib/point/style/index.js.map +1 -0
- package/lib/polygon/Polygon.js +67 -0
- package/lib/polygon/Polygon.js.map +1 -0
- package/lib/polygon/index.js +49 -0
- package/lib/polygon/index.js.map +1 -0
- package/lib/polygon/style/css.js +2 -0
- package/lib/polygon/style/css.js.map +1 -0
- package/lib/polygon/style/index.js +2 -0
- package/lib/polygon/style/index.js.map +1 -0
- package/lib/polyline/Polyline.js +68 -0
- package/lib/polyline/Polyline.js.map +1 -0
- package/lib/polyline/index.js +49 -0
- package/lib/polyline/index.js.map +1 -0
- package/lib/polyline/style/css.js +2 -0
- package/lib/polyline/style/css.js.map +1 -0
- package/lib/polyline/style/index.js +2 -0
- package/lib/polyline/style/index.js.map +1 -0
- package/lib/renderer/index.js +268 -0
- package/lib/renderer/index.js.map +1 -0
- package/lib/renderer/style/css.js +4 -0
- package/lib/renderer/style/css.js.map +1 -0
- package/lib/renderer/style/index.css +0 -0
- package/lib/renderer/style/index.js +4 -0
- package/lib/renderer/style/index.js.map +1 -0
- package/lib/renderer/style/index.less +0 -0
- package/lib/style/index.css +0 -0
- package/lib/style/index.less +2 -0
- package/lib/style/themes/compact.css +0 -0
- package/lib/style/themes/compact.less +1 -0
- package/lib/style/themes/dark.css +0 -0
- package/lib/style/themes/dark.less +9 -0
- package/lib/style/themes/default.css +0 -0
- package/lib/style/themes/default.less +7 -0
- package/lib/style/themes/index.css +0 -0
- package/lib/style/themes/index.less +1 -0
- package/lib/style/themes/variable.css +0 -0
- package/lib/style/themes/variable.less +5 -0
- 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/base-map-switch/index.js +103 -0
- package/lib/tools/base-map-switch/index.js.map +1 -0
- package/lib/tools/dimension-switch/index.js +38 -0
- package/lib/tools/dimension-switch/index.js.map +1 -0
- package/lib/tools/index.js +49 -0
- package/lib/tools/index.js.map +1 -0
- package/lib/tools/layer-control/index.js +171 -0
- package/lib/tools/layer-control/index.js.map +1 -0
- package/lib/tools/map-search/Select/index.js +55 -0
- package/lib/tools/map-search/Select/index.js.map +1 -0
- package/lib/tools/map-search/Select/style/css.js +4 -0
- package/lib/tools/map-search/Select/style/css.js.map +1 -0
- package/lib/tools/map-search/Select/style/index.css +45 -0
- package/lib/tools/map-search/Select/style/index.js +4 -0
- package/lib/tools/map-search/Select/style/index.js.map +1 -0
- package/lib/tools/map-search/Select/style/index.less +47 -0
- package/lib/tools/map-search/index.js +204 -0
- package/lib/tools/map-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 +208 -0
- package/lib/tools/style/index.js +8 -0
- package/lib/tools/style/index.js.map +1 -0
- package/lib/tools/style/index.less +225 -0
- package/lib/tools/tools-item/index.js +66 -0
- package/lib/tools/tools-item/index.js.map +1 -0
- package/lib/trail-polyline-layer/TrailPolylineLayer.js +81 -0
- package/lib/trail-polyline-layer/TrailPolylineLayer.js.map +1 -0
- package/lib/trail-polyline-layer/TrailPolylineMaterial.js +30 -0
- package/lib/trail-polyline-layer/TrailPolylineMaterial.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/lib/use-props/style/css.js +2 -0
- package/lib/use-props/style/css.js.map +1 -0
- package/lib/use-props/style/index.js +2 -0
- package/lib/use-props/style/index.js.map +1 -0
- package/lib/water-surface-layer/WaterSurfaceLayer.js +86 -0
- package/lib/water-surface-layer/WaterSurfaceLayer.js.map +1 -0
- package/lib/water-surface-layer/index.js +28 -0
- package/lib/water-surface-layer/index.js.map +1 -0
- package/lib/water-surface-layer/style/css.js +4 -0
- package/lib/water-surface-layer/style/css.js.map +1 -0
- package/lib/water-surface-layer/style/index.css +0 -0
- package/lib/water-surface-layer/style/index.js +4 -0
- package/lib/water-surface-layer/style/index.js.map +1 -0
- package/lib/water-surface-layer/style/index.less +0 -0
- package/lib/weather/Weather.js +174 -0
- package/lib/weather/Weather.js.map +1 -0
- package/lib/weather/index.js +36 -0
- package/lib/weather/index.js.map +1 -0
- package/lib/weather/style/css.js +8 -0
- package/lib/weather/style/css.js.map +1 -0
- package/lib/weather/style/index.css +60 -0
- package/lib/weather/style/index.js +8 -0
- package/lib/weather/style/index.js.map +1 -0
- package/lib/weather/style/index.less +63 -0
- package/package.json +1 -1
package/lib/map/index.js
ADDED
|
@@ -0,0 +1,843 @@
|
|
|
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 _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
|
+
var _cesium = require("cesium");
|
|
11
|
+
var _HighlightLayer = _interopRequireDefault(require("../highlight-layer/HighlightLayer"));
|
|
12
|
+
var _base = require("./base");
|
|
13
|
+
require("./material");
|
|
14
|
+
var _getDefaultMapInfo2 = _interopRequireDefault(require("../_util/getDefaultMapInfo"));
|
|
15
|
+
require("cesium/Build/Cesium/Widgets/widgets.css");
|
|
16
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
17
|
+
var _events = require("../events");
|
|
18
|
+
var _Popup = _interopRequireDefault(require("./Popup"));
|
|
19
|
+
var _Provider = _interopRequireDefault(require("../_util/Provider"));
|
|
20
|
+
var _Layers = _interopRequireDefault(require("./Layers"));
|
|
21
|
+
var _EventEmitter = _interopRequireDefault(require("../_util/EventEmitter"));
|
|
22
|
+
var _useGetMapFeatureInfoByText = _interopRequireDefault(require("./hooks/useGetMapFeatureInfoByText"));
|
|
23
|
+
var _lodash = _interopRequireDefault(require("lodash"));
|
|
24
|
+
var _createFeatureCollection = require("../feature-layer/createFeatureCollection");
|
|
25
|
+
var _getBBoxFromGeojson = _interopRequireDefault(require("../_util/getBBoxFromGeojson.js"));
|
|
26
|
+
var _excluded = ["center", "dark", "zoom", "createdMap"],
|
|
27
|
+
_excluded2 = ["geoJson", "geometryInfo", "data", "entity", "lng", "lat", "height"];
|
|
28
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
29
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
30
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
31
|
+
function _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct.bind(); } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }
|
|
32
|
+
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; } }
|
|
33
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
34
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
35
|
+
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."); }
|
|
36
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
37
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
38
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
39
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
40
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
41
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
42
|
+
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); }
|
|
43
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
44
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
45
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
46
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
47
|
+
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); }
|
|
48
|
+
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; }
|
|
49
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
50
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
51
|
+
function Map(props) {
|
|
52
|
+
var _props$width = props.width,
|
|
53
|
+
width = _props$width === void 0 ? '100%' : _props$width,
|
|
54
|
+
_props$height = props.height,
|
|
55
|
+
height = _props$height === void 0 ? '100%' : _props$height,
|
|
56
|
+
_props$dark = props.dark,
|
|
57
|
+
dark = _props$dark === void 0 ? true : _props$dark,
|
|
58
|
+
_props$mapStyle = props.mapStyle,
|
|
59
|
+
mapStyle = _props$mapStyle === void 0 ? 'vec' : _props$mapStyle,
|
|
60
|
+
tk = props.tk,
|
|
61
|
+
children = props.children,
|
|
62
|
+
onCloseTemplateBefore = props.onCloseTemplateBefore,
|
|
63
|
+
onZoom = props.onZoom,
|
|
64
|
+
_props$defaultPitch = props.defaultPitch,
|
|
65
|
+
defaultPitch = _props$defaultPitch === void 0 ? -88.0 : _props$defaultPitch,
|
|
66
|
+
_props$onEvents = props.onEvents,
|
|
67
|
+
onEvents = _props$onEvents === void 0 ? {} : _props$onEvents,
|
|
68
|
+
baseMapUrl = props.baseMapUrl,
|
|
69
|
+
_props$duration = props.duration,
|
|
70
|
+
duration = _props$duration === void 0 ? 3 : _props$duration,
|
|
71
|
+
_props$baseMapStyle = props.baseMapStyle,
|
|
72
|
+
baseMapStyle = _props$baseMapStyle === void 0 ? {
|
|
73
|
+
imageryProvider: 'GeoQImageryProvider',
|
|
74
|
+
style: 'Blue'
|
|
75
|
+
} : _props$baseMapStyle,
|
|
76
|
+
_props$autoView = props.autoView,
|
|
77
|
+
autoView = _props$autoView === void 0 ? true : _props$autoView,
|
|
78
|
+
_props$highlightColor = props.highlightColor,
|
|
79
|
+
highlightColor = _props$highlightColor === void 0 ? '#f7ff01' : _props$highlightColor;
|
|
80
|
+
var _useState = (0, _react.useState)(false),
|
|
81
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
82
|
+
mapLoaded = _useState2[0],
|
|
83
|
+
setMapLoaded = _useState2[1];
|
|
84
|
+
var _useState3 = (0, _react.useState)(false),
|
|
85
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
86
|
+
tipVis = _useState4[0],
|
|
87
|
+
setTipVis = _useState4[1];
|
|
88
|
+
var _useState5 = (0, _react.useState)(null),
|
|
89
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
90
|
+
tip = _useState6[0],
|
|
91
|
+
setTip = _useState6[1];
|
|
92
|
+
var mapRef = (0, _react.useRef)(null);
|
|
93
|
+
var mapDomRef = (0, _react.useRef)(null);
|
|
94
|
+
var tipRef = (0, _react.useRef)(null);
|
|
95
|
+
var popupRef = (0, _react.useRef)();
|
|
96
|
+
var highlightLayer = (0, _react.useRef)();
|
|
97
|
+
var getMapFeatureInfoByText = (0, _useGetMapFeatureInfoByText["default"])(mapRef);
|
|
98
|
+
(0, _react.useEffect)(function () {
|
|
99
|
+
initMap();
|
|
100
|
+
}, []);
|
|
101
|
+
(0, _react.useEffect)(function () {
|
|
102
|
+
if (mapRef !== null && mapRef !== void 0 && mapRef.current) {
|
|
103
|
+
highlightLayer.current = new _HighlightLayer["default"]({
|
|
104
|
+
map: mapRef.current,
|
|
105
|
+
color: highlightColor
|
|
106
|
+
});
|
|
107
|
+
mapRef.current.highlightLayer = highlightLayer.current;
|
|
108
|
+
return function () {
|
|
109
|
+
highlightLayer.current.destroy();
|
|
110
|
+
mapRef.current.highlightLayer = null;
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
}, []);
|
|
114
|
+
var addImageryProvider = function addImageryProvider() {
|
|
115
|
+
var TDT_CIA_W = "https://{s}.tianditu.gov.cn/cia_w/wmts?service=wmts&request=GetTile&version=1.0.0&LAYER=cia&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}&style=default.jpg&tk=".concat(tk);
|
|
116
|
+
var cia = new _cesium.WebMapTileServiceImageryProvider({
|
|
117
|
+
// 调用影响中文注记服务
|
|
118
|
+
url: TDT_CIA_W,
|
|
119
|
+
layer: 'cia_w',
|
|
120
|
+
style: 'default',
|
|
121
|
+
format: 'tiles',
|
|
122
|
+
tileMatrixSetID: 'GoogleMapsCompatible',
|
|
123
|
+
subdomains: ['t0', 't1', 't2', 't3', 't4', 't5', 't6', 't7'],
|
|
124
|
+
// 天地图8个服务器
|
|
125
|
+
minimumLevel: 0,
|
|
126
|
+
maximumLevel: 18
|
|
127
|
+
});
|
|
128
|
+
mapRef.current.imageryLayers.addImageryProvider(cia); // 添加到cesium图层上
|
|
129
|
+
};
|
|
130
|
+
(0, _react.useEffect)(function () {
|
|
131
|
+
if (baseMapStyle.imageryProvider === 'TdtImageryProvider') {
|
|
132
|
+
addImageryProvider();
|
|
133
|
+
} else {
|
|
134
|
+
if (mapRef.current) {
|
|
135
|
+
var layers = mapRef.current.imageryLayers._layers || [];
|
|
136
|
+
var ciaLayer = layers.find(function (item) {
|
|
137
|
+
var _item$_imageryProvide;
|
|
138
|
+
return ((_item$_imageryProvide = item._imageryProvider) === null || _item$_imageryProvide === void 0 ? void 0 : _item$_imageryProvide._layer) === 'cia_w';
|
|
139
|
+
});
|
|
140
|
+
if (ciaLayer) {
|
|
141
|
+
mapRef.current.imageryLayers.remove(ciaLayer);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}, [baseMapStyle.imageryProvider]);
|
|
146
|
+
var initMap = function initMap() {
|
|
147
|
+
var center = props.center,
|
|
148
|
+
dark = props.dark,
|
|
149
|
+
zoom = props.zoom,
|
|
150
|
+
createdMap = props.createdMap,
|
|
151
|
+
options = _objectWithoutProperties(props, _excluded);
|
|
152
|
+
var _getDefaultMapInfo = (0, _getDefaultMapInfo2["default"])(),
|
|
153
|
+
minZoom = _getDefaultMapInfo.minZoom,
|
|
154
|
+
maxZoom = _getDefaultMapInfo.maxZoom,
|
|
155
|
+
defaultZoomLevel = _getDefaultMapInfo.defaultZoomLevel,
|
|
156
|
+
longitude = _getDefaultMapInfo.longitude,
|
|
157
|
+
latitude = _getDefaultMapInfo.latitude;
|
|
158
|
+
|
|
159
|
+
// 全屏
|
|
160
|
+
var viewDefault = {
|
|
161
|
+
center: center || longitude && latitude && [longitude, latitude] || [120.081627, 30.89638],
|
|
162
|
+
zoom: zoom || defaultZoomLevel && Number(defaultZoomLevel) || 0,
|
|
163
|
+
minZoom: minZoom && Number(minZoom) || 0,
|
|
164
|
+
maxZoom: maxZoom && Number(maxZoom) || 20
|
|
165
|
+
};
|
|
166
|
+
_cesium.Ion.defaultAccessToken = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJhZjc0ZDQ1ZS0wNWNhLTRhMDQtODJmYy03NTcyNDcxYzgzMDUiLCJpZCI6NzE4MTQsImlhdCI6MTYzNTQ3NzgyNX0.4TrdZWPWc9_6jLeGe90bRmBPB14XptwinSewVMu1iCE';
|
|
167
|
+
var imageryProvider = new _base.Imagery[baseMapStyle.imageryProvider]({
|
|
168
|
+
style: baseMapStyle.style,
|
|
169
|
+
url: baseMapUrl,
|
|
170
|
+
crs: 'WGS84'
|
|
171
|
+
});
|
|
172
|
+
var map = new _cesium.Viewer(mapDomRef.current, _objectSpread({
|
|
173
|
+
shouldAnimate: true,
|
|
174
|
+
animation: false,
|
|
175
|
+
// 控制场景动画的播放速度控件
|
|
176
|
+
baseLayerPicker: false,
|
|
177
|
+
// 底图切换控件
|
|
178
|
+
fullscreenButton: false,
|
|
179
|
+
// 全屏控件
|
|
180
|
+
geocoder: false,
|
|
181
|
+
// 地理位置查询定位控件
|
|
182
|
+
homeButton: false,
|
|
183
|
+
// 默认相机位置控件
|
|
184
|
+
timeline: false,
|
|
185
|
+
// 时间滚动条控件
|
|
186
|
+
infoBox: false,
|
|
187
|
+
//是否显示信息框
|
|
188
|
+
sceneModePicker: false,
|
|
189
|
+
//是否显示3D/2D选择器
|
|
190
|
+
selectionIndicator: false,
|
|
191
|
+
// 点击点绿色弹出 是否显示选取指示器组件
|
|
192
|
+
sceneMode: _cesium.SceneMode.SCENE3D,
|
|
193
|
+
//设定3维地图的默认场景模式: SceneMode.SCENE2D、SceneMode.SCENE3D、SceneMode.MORPHING
|
|
194
|
+
navigationHelpButton: false,
|
|
195
|
+
// 默认的相机控制提示控件
|
|
196
|
+
scene3DOnly: true,
|
|
197
|
+
// 每个几何实例仅以3D渲染以节省GPU内存
|
|
198
|
+
navigationInstructionsInitiallyVisible: false,
|
|
199
|
+
showRenderLoopErrors: true,
|
|
200
|
+
//是否显示渲染错误
|
|
201
|
+
orderIndependentTranslucency: false,
|
|
202
|
+
//设置背景透明
|
|
203
|
+
imageryProvider: imageryProvider
|
|
204
|
+
}, options));
|
|
205
|
+
map.autoView = autoView; // 自动调整视角
|
|
206
|
+
|
|
207
|
+
// 事件订阅
|
|
208
|
+
map.eventEmitter = new _EventEmitter["default"]();
|
|
209
|
+
|
|
210
|
+
// 去版权信息
|
|
211
|
+
map._cesiumWidget._creditContainer.style.display = 'none'; // 隐藏cesium ion
|
|
212
|
+
|
|
213
|
+
mapRef.current = map;
|
|
214
|
+
map.dark = dark;
|
|
215
|
+
// 底图服务
|
|
216
|
+
map.baseMap = new _base.BaseMap({
|
|
217
|
+
map: map,
|
|
218
|
+
imageryProvider: baseMapStyle.imageryProvider,
|
|
219
|
+
style: baseMapStyle.style,
|
|
220
|
+
layer: imageryProvider
|
|
221
|
+
});
|
|
222
|
+
|
|
223
|
+
// 添加 dataSource 和 imagery 图层
|
|
224
|
+
map.layers = new _Layers["default"]({
|
|
225
|
+
map: map
|
|
226
|
+
});
|
|
227
|
+
|
|
228
|
+
// 图层改变的时候
|
|
229
|
+
map.layers.on('change', function (layers) {
|
|
230
|
+
onEvents.layersChange && onEvents.layersChange(layers);
|
|
231
|
+
map.eventEmitter.emit('layersChange', layers);
|
|
232
|
+
});
|
|
233
|
+
|
|
234
|
+
// 图层新增
|
|
235
|
+
map.layers.on('add', function (layer) {
|
|
236
|
+
onEvents.layersAdd && onEvents.layersAdd(layer);
|
|
237
|
+
map.eventEmitter.emit('layersAdd', layer);
|
|
238
|
+
});
|
|
239
|
+
|
|
240
|
+
// 图层移除
|
|
241
|
+
map.layers.on('remove', function (layer) {
|
|
242
|
+
onEvents.layersRemove && onEvents.layersRemove(layer);
|
|
243
|
+
map.eventEmitter.emit('layersRemove', layer);
|
|
244
|
+
});
|
|
245
|
+
|
|
246
|
+
// 图层清空
|
|
247
|
+
map.layers.on('clear', function () {
|
|
248
|
+
onEvents.layersClear && onEvents.layersClear();
|
|
249
|
+
map.eventEmitter.emit('layersClear');
|
|
250
|
+
});
|
|
251
|
+
|
|
252
|
+
// 图层展示隐藏
|
|
253
|
+
map.layers.on('visible', function (layer, visible) {
|
|
254
|
+
map.layers.onChange(); // 触发图层改变
|
|
255
|
+
|
|
256
|
+
// 图层关闭时,隐藏自身的气泡
|
|
257
|
+
if (!visible && map.popupRef) {
|
|
258
|
+
map.hideTemplate(layer);
|
|
259
|
+
}
|
|
260
|
+
onEvents.layersVisible && onEvents.layersVisible(layer, visible);
|
|
261
|
+
map.eventEmitter.emit('layersVisible');
|
|
262
|
+
});
|
|
263
|
+
|
|
264
|
+
// 图层变化
|
|
265
|
+
map.layersChange = function () {
|
|
266
|
+
map.layers.onChange();
|
|
267
|
+
};
|
|
268
|
+
|
|
269
|
+
// 获取 layers 里面的 key 集合
|
|
270
|
+
map.getAllKeys = function () {
|
|
271
|
+
return map.layers.getAllKeys();
|
|
272
|
+
};
|
|
273
|
+
|
|
274
|
+
// 获取当前展示的 keys
|
|
275
|
+
map.getLayersShowKeys = function () {
|
|
276
|
+
return map.layers.getShowKeys();
|
|
277
|
+
};
|
|
278
|
+
|
|
279
|
+
// 获取当前隐藏的 keys
|
|
280
|
+
map.getLayersHiddenKeys = function () {
|
|
281
|
+
return map.layers.getHiddenKeys();
|
|
282
|
+
};
|
|
283
|
+
|
|
284
|
+
// 根据 keys 设置图层的显示,其他的隐藏
|
|
285
|
+
map.setLayersShowByKeys = function (_keys) {
|
|
286
|
+
return map.layers.setShowByKeys(_keys);
|
|
287
|
+
};
|
|
288
|
+
|
|
289
|
+
// 根据 keys 设置图层的隐藏,其他的显示
|
|
290
|
+
map.setLayersHideByKeys = function (_keys) {
|
|
291
|
+
return map.layers.setHideByKeys(_keys);
|
|
292
|
+
};
|
|
293
|
+
|
|
294
|
+
// 添加图层
|
|
295
|
+
map.addLayer = function (layer, index) {
|
|
296
|
+
return map.layers.addLayer(layer, index);
|
|
297
|
+
};
|
|
298
|
+
|
|
299
|
+
// 移除图层
|
|
300
|
+
map.removeLayer = function (layer) {
|
|
301
|
+
return map.layers.removeLayer(layer);
|
|
302
|
+
};
|
|
303
|
+
|
|
304
|
+
// 清除图层和entity
|
|
305
|
+
map.clearLayers = function () {
|
|
306
|
+
return map.layers.clearLayers();
|
|
307
|
+
};
|
|
308
|
+
|
|
309
|
+
// 获取 ImageLayer 图层
|
|
310
|
+
map.getImageLayers = function (keys) {
|
|
311
|
+
return map.layers.getImageLayers(keys);
|
|
312
|
+
};
|
|
313
|
+
|
|
314
|
+
// 获取 FeatureLayer 图层
|
|
315
|
+
map.getFeatureLayers = function (keys) {
|
|
316
|
+
return map.layers.getFeatureLayers(keys);
|
|
317
|
+
};
|
|
318
|
+
|
|
319
|
+
// 获取 Imagery 图层最后一个 index 值
|
|
320
|
+
map.getImageryLastIndex = function (_index) {
|
|
321
|
+
var index = 1;
|
|
322
|
+
var layers = map.getImageryLayers();
|
|
323
|
+
if (layers !== null && layers !== void 0 && layers.length) {
|
|
324
|
+
if (_index && layers.findIndex(function (v) {
|
|
325
|
+
return _index < v.zIndex;
|
|
326
|
+
}) !== -1) {
|
|
327
|
+
index = layers.findIndex(function (v) {
|
|
328
|
+
return _index < v.zIndex;
|
|
329
|
+
}) + 1;
|
|
330
|
+
} else {
|
|
331
|
+
index = layers.length;
|
|
332
|
+
}
|
|
333
|
+
}
|
|
334
|
+
return index;
|
|
335
|
+
};
|
|
336
|
+
|
|
337
|
+
// 查找所有dataSource和imagery图层
|
|
338
|
+
map.getAllLayers = function () {
|
|
339
|
+
var _map$dataSources, _map$imageryLayers, _map$scene;
|
|
340
|
+
var dataSources = (map === null || map === void 0 || (_map$dataSources = map.dataSources) === null || _map$dataSources === void 0 ? void 0 : _map$dataSources._dataSources) || [];
|
|
341
|
+
var imageryLayers = (map === null || map === void 0 || (_map$imageryLayers = map.imageryLayers) === null || _map$imageryLayers === void 0 ? void 0 : _map$imageryLayers._layers) || [];
|
|
342
|
+
var primitives = (map === null || map === void 0 || (_map$scene = map.scene) === null || _map$scene === void 0 || (_map$scene = _map$scene.primitives) === null || _map$scene === void 0 ? void 0 : _map$scene._primitives) || [];
|
|
343
|
+
return [].concat(_toConsumableArray(dataSources), _toConsumableArray(imageryLayers), _toConsumableArray(primitives));
|
|
344
|
+
};
|
|
345
|
+
|
|
346
|
+
// 根据key查找imageryLayers图层
|
|
347
|
+
map.getImageryLayers = function (_keys) {
|
|
348
|
+
var _map$imageryLayers2;
|
|
349
|
+
var layers = (map === null || map === void 0 || (_map$imageryLayers2 = map.imageryLayers) === null || _map$imageryLayers2 === void 0 ? void 0 : _map$imageryLayers2._layers) || [];
|
|
350
|
+
if (_keys && layers.length) {
|
|
351
|
+
var keys = Array.isArray(_keys) ? _keys : [_keys];
|
|
352
|
+
return layers.filter(function (layer) {
|
|
353
|
+
return layer.key && keys.includes(layer.key);
|
|
354
|
+
});
|
|
355
|
+
}
|
|
356
|
+
return layers;
|
|
357
|
+
};
|
|
358
|
+
|
|
359
|
+
// 通过图形查询所属图层
|
|
360
|
+
map.getLayerByFeature = function (entity) {
|
|
361
|
+
return map.getAllLayers().find(function (layer) {
|
|
362
|
+
if (entity instanceof _cesium.ImageryLayerFeatureInfo) {
|
|
363
|
+
var _entity$imageryLayer;
|
|
364
|
+
if (layer !== null && layer !== void 0 && layer.key && layer.key === (entity === null || entity === void 0 || (_entity$imageryLayer = entity.imageryLayer) === null || _entity$imageryLayer === void 0 ? void 0 : _entity$imageryLayer.key)) {
|
|
365
|
+
return layer;
|
|
366
|
+
}
|
|
367
|
+
} else if (layer instanceof _cesium.Primitive) {
|
|
368
|
+
var _entity$primitive;
|
|
369
|
+
if (layer !== null && layer !== void 0 && layer.key && layer.key === (entity === null || entity === void 0 || (_entity$primitive = entity.primitive) === null || _entity$primitive === void 0 ? void 0 : _entity$primitive.key)) {
|
|
370
|
+
return layer;
|
|
371
|
+
}
|
|
372
|
+
} else {
|
|
373
|
+
if (layer !== null && layer !== void 0 && layer.key && layer.key === (entity === null || entity === void 0 ? void 0 : entity.key)) {
|
|
374
|
+
return layer;
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
});
|
|
378
|
+
};
|
|
379
|
+
|
|
380
|
+
// 获取entity中数据
|
|
381
|
+
map.getProperties = function (feature) {
|
|
382
|
+
var _feature$_properties, _properties;
|
|
383
|
+
if (feature !== null && feature !== void 0 && feature.primitive && (feature === null || feature === void 0 ? void 0 : feature.primitive) instanceof _cesium.Primitive) {
|
|
384
|
+
return feature.primitive.data.find(function (item) {
|
|
385
|
+
return item.id === feature.id;
|
|
386
|
+
});
|
|
387
|
+
}
|
|
388
|
+
var properties = (feature === null || feature === void 0 || (_feature$_properties = feature._properties) === null || _feature$_properties === void 0 ? void 0 : _feature$_properties.getValue(feature._id)) || (feature === null || feature === void 0 ? void 0 : feature.properties) || {};
|
|
389
|
+
properties = ((_properties = properties) === null || _properties === void 0 ? void 0 : _properties.properties) || properties;
|
|
390
|
+
return properties;
|
|
391
|
+
};
|
|
392
|
+
|
|
393
|
+
// 通过key查询图层
|
|
394
|
+
map.getLayerByKey = function (key) {
|
|
395
|
+
return map.getAllLayers().find(function (layer) {
|
|
396
|
+
return key && layer.key && layer.key === key;
|
|
397
|
+
});
|
|
398
|
+
};
|
|
399
|
+
|
|
400
|
+
// 根据id查询图层
|
|
401
|
+
map.getLayerById = map.getLayerByKey;
|
|
402
|
+
|
|
403
|
+
// 通过keys查询多个图层
|
|
404
|
+
map.getLayerByKeys = function (keys) {
|
|
405
|
+
return map.getAllLayers().filter(function (layer) {
|
|
406
|
+
return layer.key && keys.includes(layer.key);
|
|
407
|
+
});
|
|
408
|
+
};
|
|
409
|
+
map.destroyhighlightLayer = function () {
|
|
410
|
+
highlightLayer.current.clearFeatures();
|
|
411
|
+
};
|
|
412
|
+
// 通过返回值控制是否执行关闭
|
|
413
|
+
map.onCloseTemplateBefore = function (feature) {
|
|
414
|
+
// 清除高亮
|
|
415
|
+
map.destroyhighlightLayer();
|
|
416
|
+
if (onCloseTemplateBefore) {
|
|
417
|
+
return onCloseTemplateBefore(feature);
|
|
418
|
+
}
|
|
419
|
+
};
|
|
420
|
+
|
|
421
|
+
// 根据key查找展示的图层
|
|
422
|
+
map.getVisibleLayersByKeys = function (keys) {
|
|
423
|
+
var layers = map.getAllLayers() || [];
|
|
424
|
+
return layers.filter(function (layer) {
|
|
425
|
+
if (typeof keys === 'string') {
|
|
426
|
+
return layer.key === keys && layer.show;
|
|
427
|
+
} else if (Array.isArray(keys)) {
|
|
428
|
+
return keys.includes(layer.key) && layer.show;
|
|
429
|
+
} else {
|
|
430
|
+
return layer.show && layer.key;
|
|
431
|
+
}
|
|
432
|
+
});
|
|
433
|
+
};
|
|
434
|
+
|
|
435
|
+
// 展示提示
|
|
436
|
+
map.showTip = function (content) {
|
|
437
|
+
setTip(content);
|
|
438
|
+
};
|
|
439
|
+
|
|
440
|
+
// 隐藏提示
|
|
441
|
+
map.hideTip = function () {
|
|
442
|
+
setTip(null);
|
|
443
|
+
};
|
|
444
|
+
|
|
445
|
+
// 根据图层条件设置图层选中
|
|
446
|
+
map.showTemplateByFilter = function (key, field, value) {
|
|
447
|
+
var layer = map.getLayerByKey(key);
|
|
448
|
+
if (layer !== null && layer !== void 0 && layer.show) {
|
|
449
|
+
var feature = layer.getFeatureByFieldValue(field, value);
|
|
450
|
+
if (feature) {
|
|
451
|
+
map.showTemplate(feature);
|
|
452
|
+
}
|
|
453
|
+
}
|
|
454
|
+
};
|
|
455
|
+
|
|
456
|
+
// 展示看板
|
|
457
|
+
map.showTemplate = function (feature, event, highlightLayer) {
|
|
458
|
+
popupRef.current.showTemplate(feature, highlightLayer);
|
|
459
|
+
};
|
|
460
|
+
|
|
461
|
+
// 隐藏看板
|
|
462
|
+
map.hideTemplate = function () {
|
|
463
|
+
popupRef.current.hideTemplate();
|
|
464
|
+
};
|
|
465
|
+
|
|
466
|
+
// 鼠标事件控制器
|
|
467
|
+
var handlePoint = new _cesium.ScreenSpaceEventHandler(map.scene.canvas);
|
|
468
|
+
|
|
469
|
+
// 获取图层上的图形信息
|
|
470
|
+
map.pickDataSourcesFeature = function (event) {
|
|
471
|
+
if (event !== null && event !== void 0 && event.position) {
|
|
472
|
+
var position = event.position;
|
|
473
|
+
var pick = map.scene.pick(position);
|
|
474
|
+
if (_lodash["default"].isObject(pick === null || pick === void 0 ? void 0 : pick.id)) {
|
|
475
|
+
return pick.id;
|
|
476
|
+
}
|
|
477
|
+
return pick;
|
|
478
|
+
}
|
|
479
|
+
};
|
|
480
|
+
|
|
481
|
+
// 根据关键字获取图形信息
|
|
482
|
+
map.getMapFeatureInfoByText = getMapFeatureInfoByText;
|
|
483
|
+
|
|
484
|
+
// 获取wms的图形数据
|
|
485
|
+
map.pickImageryLayerFeatures = function (event) {
|
|
486
|
+
if (event !== null && event !== void 0 && event.position) {
|
|
487
|
+
var position = event.position;
|
|
488
|
+
var pickRay = map.camera.getPickRay(position);
|
|
489
|
+
return map.imageryLayers.pickImageryLayerFeatures(pickRay, map.scene);
|
|
490
|
+
}
|
|
491
|
+
};
|
|
492
|
+
|
|
493
|
+
// 获取当前地图中心的经纬度
|
|
494
|
+
map.getCenterPosition = function () {
|
|
495
|
+
var centerResult = map.camera.pickEllipsoid(new _cesium.Cartesian2(map.canvas.clientWidth / 2, map.canvas.clientHeight / 2));
|
|
496
|
+
var curPosition = _cesium.Ellipsoid.WGS84.cartesianToCartographic(centerResult);
|
|
497
|
+
var curLongitude = curPosition.longitude * 180 / _cesium.Math.PI;
|
|
498
|
+
var curLatitude = curPosition.latitude * 180 / _cesium.Math.PI;
|
|
499
|
+
return [curLongitude, curLatitude];
|
|
500
|
+
};
|
|
501
|
+
|
|
502
|
+
// 二三维切换
|
|
503
|
+
map.setViewMode = function (type) {
|
|
504
|
+
map.viewMode = type;
|
|
505
|
+
map.fitView();
|
|
506
|
+
};
|
|
507
|
+
|
|
508
|
+
// 注册事件
|
|
509
|
+
(0, _events.registerEventLayer)(map, props);
|
|
510
|
+
|
|
511
|
+
// 注册地图组件事件
|
|
512
|
+
function registerMapEvent(e, event) {
|
|
513
|
+
if (map[event]) {
|
|
514
|
+
map[event](e);
|
|
515
|
+
onEvents[event] && onEvents[event](e);
|
|
516
|
+
}
|
|
517
|
+
}
|
|
518
|
+
|
|
519
|
+
// 注册图层组件事件
|
|
520
|
+
function registerEvent(feature, event) {
|
|
521
|
+
if (feature) {
|
|
522
|
+
var _feature$event;
|
|
523
|
+
var properties = map.getProperties(feature) || {};
|
|
524
|
+
if (feature instanceof _cesium.ImageryLayerFeatureInfo && feature !== null && feature !== void 0 && feature.data) {
|
|
525
|
+
properties = _objectSpread(_objectSpread({}, properties), {}, {
|
|
526
|
+
data: feature === null || feature === void 0 ? void 0 : feature.data
|
|
527
|
+
});
|
|
528
|
+
}
|
|
529
|
+
|
|
530
|
+
// 触发自身事件
|
|
531
|
+
(_feature$event = feature[event]) === null || _feature$event === void 0 || _feature$event.call(feature, properties);
|
|
532
|
+
var layer = map.getLayerByFeature(feature);
|
|
533
|
+
if (layer !== null && layer !== void 0 && layer[event]) {
|
|
534
|
+
layer[event](properties);
|
|
535
|
+
}
|
|
536
|
+
}
|
|
537
|
+
}
|
|
538
|
+
|
|
539
|
+
// 监测图层是否允许点击
|
|
540
|
+
function checkClickable(feature) {
|
|
541
|
+
var layer = map.getLayerByFeature(feature);
|
|
542
|
+
var unclickable = false;
|
|
543
|
+
// 无法单独设置group内的图层
|
|
544
|
+
// 暂时为了取消行政区划影像图层的点击效果
|
|
545
|
+
if (layer) {
|
|
546
|
+
unclickable = layer.unclickable;
|
|
547
|
+
}
|
|
548
|
+
return unclickable;
|
|
549
|
+
}
|
|
550
|
+
|
|
551
|
+
// 点击事件
|
|
552
|
+
handlePoint.setInputAction(function (event) {
|
|
553
|
+
event.lonLat = map.getPositionLonLat(event);
|
|
554
|
+
registerMapEvent(event, 'onClick');
|
|
555
|
+
map.hideTip();
|
|
556
|
+
var entity = map.pickDataSourcesFeature(event);
|
|
557
|
+
var featuresPromise = map.pickImageryLayerFeatures(event);
|
|
558
|
+
if (entity) {
|
|
559
|
+
map.onClickTemplateAfter && map.onClickTemplateAfter(entity);
|
|
560
|
+
registerEvent(entity, 'onClick');
|
|
561
|
+
highlightLayer.current.addHighlightFeature(entity);
|
|
562
|
+
map.showTemplate(entity, event, highlightLayer.current);
|
|
563
|
+
} else if ((0, _cesium.defined)(featuresPromise)) {
|
|
564
|
+
(0, _cesium.when)(featuresPromise, function (features) {
|
|
565
|
+
features.sort(function (a, b) {
|
|
566
|
+
return b.imageryLayer._layerIndex - a.imageryLayer._layerIndex;
|
|
567
|
+
});
|
|
568
|
+
var feature = features === null || features === void 0 ? void 0 : features[0];
|
|
569
|
+
if (checkClickable(feature)) {
|
|
570
|
+
return;
|
|
571
|
+
}
|
|
572
|
+
highlightLayer.current.addHighlightFeature(feature);
|
|
573
|
+
registerEvent(feature, 'onClick');
|
|
574
|
+
map.showTemplate(feature, event, highlightLayer.current);
|
|
575
|
+
});
|
|
576
|
+
}
|
|
577
|
+
}, _cesium.ScreenSpaceEventType.LEFT_CLICK);
|
|
578
|
+
|
|
579
|
+
// 双击事件
|
|
580
|
+
handlePoint.setInputAction(function (event) {
|
|
581
|
+
map.trackedEntity = undefined; // 取消双击锁定
|
|
582
|
+
|
|
583
|
+
event.lonLat = map.getPositionLonLat(event);
|
|
584
|
+
registerMapEvent(event, 'onDoubleClick');
|
|
585
|
+
var feature = map.pickDataSourcesFeature(event);
|
|
586
|
+
registerEvent(feature, 'onDoubleClick');
|
|
587
|
+
}, _cesium.ScreenSpaceEventType.LEFT_DOUBLE_CLICK);
|
|
588
|
+
|
|
589
|
+
// 鼠标移动
|
|
590
|
+
var hoverFeature;
|
|
591
|
+
var getUid = function getUid(feature) {
|
|
592
|
+
if (feature && !feature._id) {
|
|
593
|
+
feature._id = window.Math.random();
|
|
594
|
+
}
|
|
595
|
+
return feature._id;
|
|
596
|
+
};
|
|
597
|
+
|
|
598
|
+
// 鼠标移入移出
|
|
599
|
+
handlePoint.setInputAction(function (event) {
|
|
600
|
+
event.lonLat = map.getPositionLonLat({
|
|
601
|
+
position: event.endPosition
|
|
602
|
+
});
|
|
603
|
+
registerMapEvent(event, 'onMouseMove');
|
|
604
|
+
var feature = map.pickDataSourcesFeature({
|
|
605
|
+
position: event.endPosition
|
|
606
|
+
});
|
|
607
|
+
if (feature) {
|
|
608
|
+
var _map$getLayerByFeatur;
|
|
609
|
+
var labelField = (_map$getLayerByFeatur = map.getLayerByFeature(feature)) === null || _map$getLayerByFeatur === void 0 ? void 0 : _map$getLayerByFeatur.labelField;
|
|
610
|
+
if (labelField) {
|
|
611
|
+
var properties = map.getProperties(feature);
|
|
612
|
+
var label = properties ? properties[labelField] : '';
|
|
613
|
+
if (label) {
|
|
614
|
+
map.showTip(label);
|
|
615
|
+
} else {
|
|
616
|
+
map.hideTip();
|
|
617
|
+
}
|
|
618
|
+
} else {
|
|
619
|
+
map.hideTip();
|
|
620
|
+
}
|
|
621
|
+
registerEvent(feature, 'onMouseMove');
|
|
622
|
+
|
|
623
|
+
// 判断是否在图形内移动
|
|
624
|
+
if (hoverFeature) {
|
|
625
|
+
var uid = getUid(feature);
|
|
626
|
+
var hoverUid = getUid(hoverFeature);
|
|
627
|
+
|
|
628
|
+
// 判断是否进入新的图形
|
|
629
|
+
if (uid !== hoverUid) {
|
|
630
|
+
registerEvent(hoverFeature, 'onMouseLeave');
|
|
631
|
+
registerEvent(feature, 'onMouseEnter');
|
|
632
|
+
hoverFeature = feature;
|
|
633
|
+
}
|
|
634
|
+
} else {
|
|
635
|
+
registerEvent(feature, 'onMouseEnter');
|
|
636
|
+
hoverFeature = feature;
|
|
637
|
+
}
|
|
638
|
+
registerEvent(feature, 'onMouseMove');
|
|
639
|
+
} else {
|
|
640
|
+
if (hoverFeature) {
|
|
641
|
+
registerEvent(hoverFeature, 'onMouseLeave');
|
|
642
|
+
}
|
|
643
|
+
hoverFeature = null;
|
|
644
|
+
map.hideTip();
|
|
645
|
+
}
|
|
646
|
+
}, _cesium.ScreenSpaceEventType.MOUSE_MOVE);
|
|
647
|
+
|
|
648
|
+
// 层级事件
|
|
649
|
+
if (onZoom) {
|
|
650
|
+
map.camera.moveEnd.addEventListener(function () {
|
|
651
|
+
var viewRectangle = map.camera.computeViewRectangle();
|
|
652
|
+
var west = viewRectangle.west / _cesium.Math.PI * 180; // 左上方(西)
|
|
653
|
+
var north = viewRectangle.north / _cesium.Math.PI * 180; //右上方(北)
|
|
654
|
+
var east = viewRectangle.east / _cesium.Math.PI * 180; // 右下方(东)
|
|
655
|
+
var south = viewRectangle.south / _cesium.Math.PI * 180; // 左下方(南)
|
|
656
|
+
var cameraHeight = map.camera.positionCartographic.height;
|
|
657
|
+
onZoom && onZoom({
|
|
658
|
+
west: west,
|
|
659
|
+
north: north,
|
|
660
|
+
east: east,
|
|
661
|
+
south: south,
|
|
662
|
+
cameraHeight: cameraHeight,
|
|
663
|
+
viewRectangle: viewRectangle
|
|
664
|
+
});
|
|
665
|
+
});
|
|
666
|
+
}
|
|
667
|
+
|
|
668
|
+
// 动态调整视角,不传参数为默认视角,参数可以是图层、图形、数据等
|
|
669
|
+
map.fitView = function (e) {
|
|
670
|
+
var _ref = e || {},
|
|
671
|
+
geoJson = _ref.geoJson,
|
|
672
|
+
geometryInfo = _ref.geometryInfo,
|
|
673
|
+
data = _ref.data,
|
|
674
|
+
entity = _ref.entity,
|
|
675
|
+
lng = _ref.lng,
|
|
676
|
+
lat = _ref.lat,
|
|
677
|
+
_ref$height = _ref.height,
|
|
678
|
+
height = _ref$height === void 0 ? 50000 : _ref$height,
|
|
679
|
+
rest = _objectWithoutProperties(_ref, _excluded2);
|
|
680
|
+
var pitch = map.camera.pitch;
|
|
681
|
+
|
|
682
|
+
// 判断是否点击了图形
|
|
683
|
+
if (entity) {
|
|
684
|
+
if (map.viewMode === '3D') {
|
|
685
|
+
map.flyTo(entity, {
|
|
686
|
+
duration: 2
|
|
687
|
+
});
|
|
688
|
+
} else {
|
|
689
|
+
map.flyTo(entity, {
|
|
690
|
+
duration: 2,
|
|
691
|
+
offset: {
|
|
692
|
+
heading: _cesium.Math.toRadians(0.0),
|
|
693
|
+
pitch: pitch,
|
|
694
|
+
range: height
|
|
695
|
+
}
|
|
696
|
+
});
|
|
697
|
+
}
|
|
698
|
+
} else if (lng && lat) {
|
|
699
|
+
map.camera.flyTo(_objectSpread({
|
|
700
|
+
destination: new _cesium.Cartesian3.fromDegrees(Number(lng), Number(lat), height),
|
|
701
|
+
orientation: {
|
|
702
|
+
pitch: _cesium.Math.toRadians(-88.0),
|
|
703
|
+
roll: 0.0
|
|
704
|
+
},
|
|
705
|
+
duration: 2
|
|
706
|
+
}, rest));
|
|
707
|
+
} else if (data || geometryInfo || geoJson) {
|
|
708
|
+
var _geoJson = geoJson;
|
|
709
|
+
if (geometryInfo) {
|
|
710
|
+
_geoJson = (0, _createFeatureCollection.createFeatureCollection)([{
|
|
711
|
+
geometryInfo: geometryInfo
|
|
712
|
+
}]);
|
|
713
|
+
}
|
|
714
|
+
if (data) {
|
|
715
|
+
_geoJson = (0, _createFeatureCollection.createFeatureCollection)(Array.isArray(data) ? data : [data]);
|
|
716
|
+
}
|
|
717
|
+
var box = (0, _getBBoxFromGeojson["default"])(_geoJson, 0.035);
|
|
718
|
+
map.camera.flyTo(_objectSpread({
|
|
719
|
+
destination: _construct(_cesium.Rectangle.fromDegrees, _toConsumableArray(box)),
|
|
720
|
+
//west, south, east, north,
|
|
721
|
+
orientation: {
|
|
722
|
+
pitch: map.viewMode === '3D' ? _cesium.Math.toRadians(-35) : _cesium.Math.toRadians(defaultPitch),
|
|
723
|
+
roll: 0.0
|
|
724
|
+
},
|
|
725
|
+
duration: 2
|
|
726
|
+
}, rest));
|
|
727
|
+
} else {
|
|
728
|
+
var _viewDefault$center = _slicedToArray(viewDefault.center, 3),
|
|
729
|
+
x = _viewDefault$center[0],
|
|
730
|
+
y = _viewDefault$center[1],
|
|
731
|
+
_viewDefault$center$ = _viewDefault$center[2],
|
|
732
|
+
z = _viewDefault$center$ === void 0 ? 80000.0 : _viewDefault$center$;
|
|
733
|
+
if (map.viewMode === '3D') {
|
|
734
|
+
map.camera.flyTo(_objectSpread({
|
|
735
|
+
destination: _cesium.Cartesian3.fromDegrees(x, y - 0.5, z / 2),
|
|
736
|
+
orientation: {
|
|
737
|
+
pitch: _cesium.Math.toRadians(-35),
|
|
738
|
+
roll: 0.0
|
|
739
|
+
},
|
|
740
|
+
duration: 2
|
|
741
|
+
}, options));
|
|
742
|
+
} else {
|
|
743
|
+
map.camera.flyTo({
|
|
744
|
+
destination: new _cesium.Cartesian3.fromDegrees(x, y, z),
|
|
745
|
+
orientation: {
|
|
746
|
+
pitch: _cesium.Math.toRadians(defaultPitch),
|
|
747
|
+
roll: 0.0
|
|
748
|
+
},
|
|
749
|
+
duration: 2
|
|
750
|
+
});
|
|
751
|
+
}
|
|
752
|
+
}
|
|
753
|
+
};
|
|
754
|
+
map.getPositionLonLat = function (event) {
|
|
755
|
+
var cartesian = map.camera.pickEllipsoid(event.position, map.scene.globe.ellipsoid); // Cartesian3对象
|
|
756
|
+
if (cartesian) {
|
|
757
|
+
var cartographic = _cesium.Cartographic.fromCartesian(cartesian); // 经纬高对象
|
|
758
|
+
var lng = _cesium.Math.toDegrees(cartographic.longitude);
|
|
759
|
+
var lat = _cesium.Math.toDegrees(cartographic.latitude);
|
|
760
|
+
return [lng, lat];
|
|
761
|
+
}
|
|
762
|
+
return [];
|
|
763
|
+
};
|
|
764
|
+
if (duration) {
|
|
765
|
+
// 自动调整视角
|
|
766
|
+
map.fitView();
|
|
767
|
+
|
|
768
|
+
// 延时触发回调事件
|
|
769
|
+
setTimeout(function () {
|
|
770
|
+
setMapLoaded(true);
|
|
771
|
+
createdMap && createdMap(map);
|
|
772
|
+
onEvents.createdMap && onEvents.createdMap(map);
|
|
773
|
+
}, duration);
|
|
774
|
+
} else {
|
|
775
|
+
var _viewDefault$center2 = _slicedToArray(viewDefault.center, 3),
|
|
776
|
+
x = _viewDefault$center2[0],
|
|
777
|
+
y = _viewDefault$center2[1],
|
|
778
|
+
_viewDefault$center2$ = _viewDefault$center2[2],
|
|
779
|
+
z = _viewDefault$center2$ === void 0 ? 80000.0 : _viewDefault$center2$;
|
|
780
|
+
map.camera.setView({
|
|
781
|
+
destination: new _cesium.Cartesian3.fromDegrees(x, y, z)
|
|
782
|
+
});
|
|
783
|
+
setMapLoaded(true);
|
|
784
|
+
createdMap && createdMap(map);
|
|
785
|
+
onEvents.createdMap && onEvents.createdMap(map);
|
|
786
|
+
}
|
|
787
|
+
};
|
|
788
|
+
var onMouseMove = function onMouseMove(event) {
|
|
789
|
+
if (tip) {
|
|
790
|
+
tipRef.current.style.left = "".concat(event.nativeEvent.layerX + 15, "px");
|
|
791
|
+
tipRef.current.style.top = "".concat(event.nativeEvent.layerY + 15, "px");
|
|
792
|
+
}
|
|
793
|
+
};
|
|
794
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
795
|
+
style: {
|
|
796
|
+
width: width,
|
|
797
|
+
height: height,
|
|
798
|
+
background: dark ? '#152937' : '#cccccc'
|
|
799
|
+
},
|
|
800
|
+
className: (0, _classnames["default"])('map-container')
|
|
801
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
802
|
+
ref: mapDomRef,
|
|
803
|
+
className: (0, _classnames["default"])('map'),
|
|
804
|
+
onMouseMove: onMouseMove,
|
|
805
|
+
onMouseOver: function onMouseOver() {
|
|
806
|
+
return setTipVis(true);
|
|
807
|
+
},
|
|
808
|
+
onMouseOut: function onMouseOut() {
|
|
809
|
+
return setTipVis(false);
|
|
810
|
+
}
|
|
811
|
+
}, tip && tipVis && /*#__PURE__*/_react["default"].createElement("div", {
|
|
812
|
+
ref: tipRef,
|
|
813
|
+
className: (0, _classnames["default"])('custom-tip')
|
|
814
|
+
}, tip), mapRef.current && /*#__PURE__*/_react["default"].createElement(_Popup["default"], {
|
|
815
|
+
ref: popupRef,
|
|
816
|
+
map: mapRef.current
|
|
817
|
+
})), mapLoaded && /*#__PURE__*/_react["default"].createElement(_Provider["default"], {
|
|
818
|
+
value: {
|
|
819
|
+
map: mapRef.current
|
|
820
|
+
}
|
|
821
|
+
}, children));
|
|
822
|
+
}
|
|
823
|
+
var _default = exports["default"] = Map;
|
|
824
|
+
Map.propTypes = {
|
|
825
|
+
width: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
|
|
826
|
+
height: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].number]),
|
|
827
|
+
createdMap: _propTypes["default"].func,
|
|
828
|
+
onCloseTemplateBefore: _propTypes["default"].func,
|
|
829
|
+
onZoom: _propTypes["default"].func,
|
|
830
|
+
center: _propTypes["default"].array,
|
|
831
|
+
zoom: _propTypes["default"].number,
|
|
832
|
+
minZoom: _propTypes["default"].number,
|
|
833
|
+
maxZoom: _propTypes["default"].number,
|
|
834
|
+
defaultPitch: _propTypes["default"].number,
|
|
835
|
+
dark: _propTypes["default"].bool,
|
|
836
|
+
mapStyle: _propTypes["default"].oneOfType(['vec', 'img']),
|
|
837
|
+
tk: _propTypes["default"].string.isRequired,
|
|
838
|
+
onEvents: _propTypes["default"].object,
|
|
839
|
+
baseMapUrl: _propTypes["default"].string,
|
|
840
|
+
duration: _propTypes["default"].number,
|
|
841
|
+
baseMapStyle: _propTypes["default"].object
|
|
842
|
+
};
|
|
843
|
+
//# sourceMappingURL=index.js.map
|