@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
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaiduImageryProvider.js","names":["_cesium","require","_BaiduMercatorTilingScheme","_interopRequireDefault","obj","__esModule","_typeof","o","Symbol","iterator","constructor","prototype","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","_toPropertyKey","key","_createClass","protoProps","staticProps","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","call","Number","URL","IMG","VEC","CUSTOM","BaiduImageryProvider","options","arguments","_url","url","style","_tileWidth","_tileHeight","_maximumLevel","_crs","crs","resolutions","Math","pow","_tilingScheme","BaiduMercatorTilingScheme","rectangleSouthwestInMeters","Cartesian2","rectangleNortheastInMeters","WebMercatorTilingScheme","_rectangle","rectangle","_credit","_style","get","_token","ready","DeveloperError","value","getTileCredits","x","y","level","requestImage","xTiles","getNumberOfXTilesAtLevel","yTiles","getNumberOfYTilesAtLevel","replace","ImageryProvider","loadImage","_default","exports"],"sources":["map/base/imagery/baidu/BaiduImageryProvider.js"],"sourcesContent":["import {Cartesian2, WebMercatorTilingScheme, DeveloperError, ImageryProvider} from 'cesium';\n\nimport BaiduMercatorTilingScheme from './BaiduMercatorTilingScheme'\n\nlet URL = {\n IMG: 'http://shangetu{s}.map.bdimg.com/it/u=x={x};y={y};z={z};v=009;type=sate&fm=46',\n VEC: 'http://online{s}.map.bdimg.com/tile/?qt=tile&x={x}&y={y}&z={z}&styles=sl&v=020',\n CUSTOM: 'http://api{s}.map.bdimg.com/customimage/tile?&x={x}&y={y}&z={z}&scale=1&customid={style}',\n}\n\nclass BaiduImageryProvider {\n constructor(options = {}) {\n this._url = options.url || URL[options.style || 'CUSTOM']\n this._tileWidth = 256\n this._tileHeight = 256\n this._maximumLevel = 18\n this._crs = options.crs || 'BD09'\n if (options.crs === 'WGS84') {\n let resolutions = []\n for (let i = 0; i < 19; i++) {\n resolutions[i] = 256 * Math.pow(2, 18 - i)\n }\n this._tilingScheme = new BaiduMercatorTilingScheme({\n resolutions,\n rectangleSouthwestInMeters: new Cartesian2(\n -20037726.37,\n -12474104.17\n ),\n rectangleNortheastInMeters: new Cartesian2(\n 20037726.37,\n 12474104.17\n )\n })\n } else {\n this._tilingScheme = new WebMercatorTilingScheme({\n rectangleSouthwestInMeters: new Cartesian2(-33554054, -33746824),\n rectangleNortheastInMeters: new Cartesian2(33554054, 33746824)\n })\n }\n this._rectangle = this._tilingScheme.rectangle\n this._credit = undefined\n this._style = options.style || 'normal'\n }\n\n get url() {\n return this._url\n }\n\n get token() {\n return this._token\n }\n\n get tileWidth() {\n if (!this.ready) {\n throw new DeveloperError(\n 'tileWidth must not be called before the imagery provider is ready.'\n )\n }\n return this._tileWidth\n }\n\n get tileHeight() {\n if (!this.ready) {\n throw new DeveloperError(\n 'tileHeight must not be called before the imagery provider is ready.'\n )\n }\n return this._tileHeight\n }\n\n get maximumLevel() {\n if (!this.ready) {\n throw new DeveloperError(\n 'maximumLevel must not be called before the imagery provider is ready.'\n )\n }\n return this._maximumLevel\n }\n\n get minimumLevel() {\n if (!this.ready) {\n throw new DeveloperError(\n 'minimumLevel must not be called before the imagery provider is ready.'\n )\n }\n return 0\n }\n\n get tilingScheme() {\n if (!this.ready) {\n throw new DeveloperError(\n 'tilingScheme must not be called before the imagery provider is ready.'\n )\n }\n return this._tilingScheme\n }\n\n get rectangle() {\n if (!this.ready) {\n throw new DeveloperError(\n 'rectangle must not be called before the imagery provider is ready.'\n )\n }\n return this._rectangle\n }\n\n get ready() {\n return !!this._url\n }\n\n get credit() {\n return this._credit\n }\n\n get hasAlphaChannel() {\n return true\n }\n\n getTileCredits(x, y, level) {}\n\n requestImage(x, y, level) {\n if (!this.ready) {\n throw new DeveloperError(\n 'requestImage must not be called before the imagery provider is ready.'\n )\n }\n let xTiles = this._tilingScheme.getNumberOfXTilesAtLevel(level)\n let yTiles = this._tilingScheme.getNumberOfYTilesAtLevel(level)\n let url = this._url\n .replace('{z}', level)\n .replace('{s}', String(1))\n .replace('{style}', this._style)\n if (this._crs === 'WGS84') {\n url = url.replace('{x}', String(x)).replace('{y}', String(-y))\n } else {\n url = url\n .replace('{x}', String(x - xTiles / 2))\n .replace('{y}', String(yTiles / 2 - y - 1))\n }\n return ImageryProvider.loadImage(this, url)\n }\n}\n\nexport default BaiduImageryProvider\n"],"mappings":"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"}
|
|
@@ -0,0 +1,377 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports["default"] = void 0;
|
|
7
|
+
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); }
|
|
8
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
9
|
+
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); } }
|
|
10
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
11
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
12
|
+
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); }
|
|
13
|
+
var EARTH_RADIUS = 6370996.81;
|
|
14
|
+
var MC_BAND = [12890594.86, 8362377.87, 5591021, 3481989.83, 1678043.12, 0];
|
|
15
|
+
var LL_BAND = [75, 60, 45, 30, 15, 0];
|
|
16
|
+
var MC2LL = [[1.410526172116255e-8, 8.98305509648872e-6, -1.9939833816331, 2.009824383106796e2, -1.872403703815547e2, 91.6087516669843, -23.38765649603339, 2.57121317296198, -0.03801003308653, 1.73379812e7], [-7.435856389565537e-9, 8.983055097726239e-6, -0.78625201886289, 96.32687599759846, -1.85204757529826, -59.36935905485877, 47.40033549296737, -16.50741931063887, 2.28786674699375, 1.026014486e7], [-3.030883460898826e-8, 8.98305509983578e-6, 0.30071316287616, 59.74293618442277, 7.357984074871, -25.38371002664745, 13.45380521110908, -3.29883767235584, 0.32710905363475, 6.85681737e6], [-1.981981304930552e-8, 8.983055099779535e-6, 0.03278182852591, 40.31678527705744, 0.65659298677277, -4.44255534477492, 0.85341911805263, 0.12923347998204, -0.04625736007561, 4.48277706e6], [3.09191371068437e-9, 8.983055096812155e-6, 0.00006995724062, 23.10934304144901, -0.00023663490511, -0.6321817810242, -0.00663494467273, 0.03430082397953, -0.00466043876332, 2.5551644e6], [2.890871144776878e-9, 8.983055095805407e-6, -0.00000003068298, 7.47137025468032, -0.00000353937994, -0.02145144861037, -0.00001234426596, 0.00010322952773, -0.00000323890364, 8.260885e5]];
|
|
17
|
+
var LL2MC = [[-0.0015702102444, 1.113207020616939e5, 1.704480524535203e15, -1.033898737604234e16, 2.611266785660388e16, -3.51496691766537e16, 2.659570071840392e16, -1.072501245418824e16, 1.800819912950474e15, 82.5], [8.277824516172526e-4, 1.113207020463578e5, 6.477955746671608e8, -4.082003173641316e9, 1.077490566351142e10, -1.517187553151559e10, 1.205306533862167e10, -5.124939663577472e9, 9.133119359512032e8, 67.5], [0.00337398766765, 1.113207020202162e5, 4.481351045890365e6, -2.339375119931662e7, 7.968221547186455e7, -1.159649932797253e8, 9.723671115602145e7, -4.366194633752821e7, 8.477230501135234e6, 52.5], [0.00220636496208, 1.113207020209128e5, 5.175186112841131e4, 3.796837749470245e6, 9.920137397791013e5, -1.22195221711287e6, 1.340652697009075e6, -6.209436990984312e5, 1.444169293806241e5, 37.5], [-3.441963504368392e-4, 1.113207020576856e5, 2.782353980772752e2, 2.485758690035394e6, 6.070750963243378e3, 5.482118345352118e4, 9.540606633304236e3, -2.71055326746645e3, 1.405483844121726e3, 22.5], [-3.218135878613132e-4, 1.113207020701615e5, 0.00369383431289, 8.237256402795718e5, 0.46104986909093, 2.351343141331292e3, 1.58060784298199, 8.77738589078284, 0.37238884252424, 7.45]];
|
|
18
|
+
var BaiduMercatorProjection = /*#__PURE__*/function () {
|
|
19
|
+
function BaiduMercatorProjection() {
|
|
20
|
+
_classCallCheck(this, BaiduMercatorProjection);
|
|
21
|
+
this.isWgs84 = false;
|
|
22
|
+
}
|
|
23
|
+
_createClass(BaiduMercatorProjection, [{
|
|
24
|
+
key: "getDistanceByMC",
|
|
25
|
+
value: function getDistanceByMC(point1, point2) {
|
|
26
|
+
if (!point1 || !point2) {
|
|
27
|
+
return 0;
|
|
28
|
+
}
|
|
29
|
+
point1 = this.convertMC2LL(point1);
|
|
30
|
+
if (!point1) {
|
|
31
|
+
return 0;
|
|
32
|
+
}
|
|
33
|
+
var x1 = this.toRadians(point1['lng']);
|
|
34
|
+
var y1 = this.toRadians(point1['lat']);
|
|
35
|
+
point2 = this.convertMC2LL(point2);
|
|
36
|
+
if (!point2) {
|
|
37
|
+
return 0;
|
|
38
|
+
}
|
|
39
|
+
var x2 = this.toRadians(point2['lng']);
|
|
40
|
+
var y2 = this.toRadians(point2['lat']);
|
|
41
|
+
return this.getDistance(x1, x2, y1, y2);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* 根据经纬度坐标计算两点间距离;
|
|
46
|
+
* @param point1
|
|
47
|
+
* @param point2
|
|
48
|
+
* @returns {number|*} 返回两点间的距离
|
|
49
|
+
*/
|
|
50
|
+
}, {
|
|
51
|
+
key: "getDistanceByLL",
|
|
52
|
+
value: function getDistanceByLL(point1, point2) {
|
|
53
|
+
if (!point1 || !point2) {
|
|
54
|
+
return 0;
|
|
55
|
+
}
|
|
56
|
+
point1['lng'] = this.getLoop(point1['lng'], -180, 180);
|
|
57
|
+
point1['lat'] = this.getRange(point1['lat'], -74, 74);
|
|
58
|
+
point2['lng'] = this.getLoop(point2['lng'], -180, 180);
|
|
59
|
+
point2['lat'] = this.getRange(point2['lat'], -74, 74);
|
|
60
|
+
var x1 = this.toRadians(point1['lng']);
|
|
61
|
+
var y1 = this.toRadians(point1['lat']);
|
|
62
|
+
var x2 = this.toRadians(point2['lng']);
|
|
63
|
+
var y2 = this.toRadians(point2['lat']);
|
|
64
|
+
return this.getDistance(x1, x2, y1, y2);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* 平面直角坐标转换成经纬度坐标;
|
|
69
|
+
* @param point
|
|
70
|
+
* @returns {Point|{lng: number, lat: number}}
|
|
71
|
+
*/
|
|
72
|
+
}, {
|
|
73
|
+
key: "convertMC2LL",
|
|
74
|
+
value: function convertMC2LL(point) {
|
|
75
|
+
if (!point) {
|
|
76
|
+
return {
|
|
77
|
+
lng: 0,
|
|
78
|
+
lat: 0
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
var lnglat = {};
|
|
82
|
+
if (this.isWgs84) {
|
|
83
|
+
lnglat.lng = point.lng / 20037508.34 * 180;
|
|
84
|
+
var mmy = point.lat / 20037508.34 * 180;
|
|
85
|
+
lnglat.lat = 180 / Math.PI * (2 * Math.atan(Math.exp(mmy * Math.PI / 180)) - Math.PI / 2);
|
|
86
|
+
return {
|
|
87
|
+
lng: lnglat['lng'].toFixed(6),
|
|
88
|
+
lat: lnglat['lat'].toFixed(6)
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
var temp = {
|
|
92
|
+
lng: Math.abs(point['lng']),
|
|
93
|
+
lat: Math.abs(point['lat'])
|
|
94
|
+
};
|
|
95
|
+
var factor = undefined;
|
|
96
|
+
for (var i = 0; i < MC_BAND.length; i++) {
|
|
97
|
+
if (temp['lat'] >= MC_BAND[i]) {
|
|
98
|
+
factor = MC2LL[i];
|
|
99
|
+
break;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
lnglat = this.convertor(point, factor);
|
|
103
|
+
return {
|
|
104
|
+
lng: lnglat['lng'].toFixed(6),
|
|
105
|
+
lat: lnglat['lat'].toFixed(6)
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* 经纬度坐标转换成平面直角坐标;
|
|
111
|
+
* @param point 经纬度坐标
|
|
112
|
+
* @returns {{lng: number, lat: number}|*}
|
|
113
|
+
*/
|
|
114
|
+
}, {
|
|
115
|
+
key: "convertLL2MC",
|
|
116
|
+
value: function convertLL2MC(point) {
|
|
117
|
+
if (!point) {
|
|
118
|
+
return {
|
|
119
|
+
lng: 0,
|
|
120
|
+
lat: 0
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
if (point['lng'] > 180 || point['lng'] < -180 || point['lat'] > 90 || point['lat'] < -90) {
|
|
124
|
+
return point;
|
|
125
|
+
}
|
|
126
|
+
if (this.isWgs84) {
|
|
127
|
+
var mercator = {};
|
|
128
|
+
var earthRad = 6378137.0;
|
|
129
|
+
mercator.lng = point.lng * Math.PI / 180 * earthRad;
|
|
130
|
+
var a = point.lat * Math.PI / 180;
|
|
131
|
+
mercator.lat = earthRad / 2 * Math.log((1.0 + Math.sin(a)) / (1.0 - Math.sin(a)));
|
|
132
|
+
return {
|
|
133
|
+
lng: parseFloat(mercator['lng'].toFixed(2)),
|
|
134
|
+
lat: parseFloat(mercator['lat'].toFixed(2))
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
point['lng'] = this.getLoop(point['lng'], -180, 180);
|
|
138
|
+
point['lat'] = this.getRange(point['lat'], -74, 74);
|
|
139
|
+
var temp = {
|
|
140
|
+
lng: point['lng'],
|
|
141
|
+
lat: point['lat']
|
|
142
|
+
};
|
|
143
|
+
var factor = undefined;
|
|
144
|
+
for (var i = 0; i < LL_BAND.length; i++) {
|
|
145
|
+
if (temp['lat'] >= LL_BAND[i]) {
|
|
146
|
+
factor = LL2MC[i];
|
|
147
|
+
break;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
if (!factor) {
|
|
151
|
+
for (var _i = 0; _i < LL_BAND.length; _i++) {
|
|
152
|
+
if (temp['lat'] <= -LL_BAND[_i]) {
|
|
153
|
+
factor = LL2MC[_i];
|
|
154
|
+
break;
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
var mc = this.convertor(point, factor);
|
|
159
|
+
return {
|
|
160
|
+
lng: parseFloat(mc['lng'].toFixed(2)),
|
|
161
|
+
lat: parseFloat(mc['lat'].toFixed(2))
|
|
162
|
+
};
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
/**
|
|
166
|
+
*
|
|
167
|
+
* @param fromPoint
|
|
168
|
+
* @param factor
|
|
169
|
+
* @returns {{lng: *, lat: *}}
|
|
170
|
+
*/
|
|
171
|
+
}, {
|
|
172
|
+
key: "convertor",
|
|
173
|
+
value: function convertor(fromPoint, factor) {
|
|
174
|
+
if (!fromPoint || !factor) {
|
|
175
|
+
return {
|
|
176
|
+
lng: 0,
|
|
177
|
+
lat: 0
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
var x = factor[0] + factor[1] * Math.abs(fromPoint['lng']);
|
|
181
|
+
var temp = Math.abs(fromPoint['lat']) / factor[9];
|
|
182
|
+
var y = factor[2] + factor[3] * temp + factor[4] * temp * temp + factor[5] * temp * temp * temp + factor[6] * temp * temp * temp * temp + factor[7] * temp * temp * temp * temp * temp + factor[8] * temp * temp * temp * temp * temp * temp;
|
|
183
|
+
x *= fromPoint['lng'] < 0 ? -1 : 1;
|
|
184
|
+
y *= fromPoint['lat'] < 0 ? -1 : 1;
|
|
185
|
+
return {
|
|
186
|
+
lng: x,
|
|
187
|
+
lat: y
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
/**
|
|
192
|
+
*
|
|
193
|
+
* @param x1
|
|
194
|
+
* @param x2
|
|
195
|
+
* @param y1
|
|
196
|
+
* @param y2
|
|
197
|
+
* @returns {number}
|
|
198
|
+
*/
|
|
199
|
+
}, {
|
|
200
|
+
key: "getDistance",
|
|
201
|
+
value: function getDistance(x1, x2, y1, y2) {
|
|
202
|
+
return EARTH_RADIUS * Math.acos(Math.sin(y1) * Math.sin(y2) + Math.cos(y1) * Math.cos(y2) * Math.cos(x2 - x1));
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
/**
|
|
206
|
+
*
|
|
207
|
+
* @param deg
|
|
208
|
+
* @returns {number}
|
|
209
|
+
*/
|
|
210
|
+
}, {
|
|
211
|
+
key: "toRadians",
|
|
212
|
+
value: function toRadians(deg) {
|
|
213
|
+
return Math.PI * deg / 180;
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
/**
|
|
217
|
+
*
|
|
218
|
+
* @param rad
|
|
219
|
+
* @returns {number}
|
|
220
|
+
*/
|
|
221
|
+
}, {
|
|
222
|
+
key: "toDegrees",
|
|
223
|
+
value: function toDegrees(rad) {
|
|
224
|
+
return 180 * rad / Math.PI;
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
/**
|
|
228
|
+
*
|
|
229
|
+
* @param v
|
|
230
|
+
* @param a
|
|
231
|
+
* @param b
|
|
232
|
+
* @returns {number}
|
|
233
|
+
*/
|
|
234
|
+
}, {
|
|
235
|
+
key: "getRange",
|
|
236
|
+
value: function getRange(v, a, b) {
|
|
237
|
+
if (a != null) {
|
|
238
|
+
v = Math.max(v, a);
|
|
239
|
+
}
|
|
240
|
+
if (b != null) {
|
|
241
|
+
v = Math.min(v, b);
|
|
242
|
+
}
|
|
243
|
+
return v;
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
/**
|
|
247
|
+
*
|
|
248
|
+
* @param v
|
|
249
|
+
* @param a
|
|
250
|
+
* @param b
|
|
251
|
+
* @returns {*}
|
|
252
|
+
*/
|
|
253
|
+
}, {
|
|
254
|
+
key: "getLoop",
|
|
255
|
+
value: function getLoop(v, a, b) {
|
|
256
|
+
while (v > b) {
|
|
257
|
+
v -= b - a;
|
|
258
|
+
}
|
|
259
|
+
while (v < a) {
|
|
260
|
+
v += b - a;
|
|
261
|
+
}
|
|
262
|
+
return v;
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
/**
|
|
266
|
+
*
|
|
267
|
+
* @param point
|
|
268
|
+
* @returns {{lng: number, lat: number}|*}
|
|
269
|
+
*/
|
|
270
|
+
}, {
|
|
271
|
+
key: "lngLatToMercator",
|
|
272
|
+
value: function lngLatToMercator(point) {
|
|
273
|
+
return this.convertLL2MC(point);
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
/**
|
|
277
|
+
*
|
|
278
|
+
* @param point
|
|
279
|
+
* @returns {{x: (number|*), y: (number|*)}}
|
|
280
|
+
*/
|
|
281
|
+
}, {
|
|
282
|
+
key: "lngLatToPoint",
|
|
283
|
+
value: function lngLatToPoint(point) {
|
|
284
|
+
var mercator = this.convertLL2MC(point);
|
|
285
|
+
return {
|
|
286
|
+
x: mercator['lng'],
|
|
287
|
+
y: mercator['lat']
|
|
288
|
+
};
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
/**
|
|
292
|
+
* 墨卡托变换至经纬度
|
|
293
|
+
* @param point 墨卡托
|
|
294
|
+
* @returns Point 经纬度
|
|
295
|
+
*/
|
|
296
|
+
}, {
|
|
297
|
+
key: "mercatorToLngLat",
|
|
298
|
+
value: function mercatorToLngLat(point) {
|
|
299
|
+
return this.convertMC2LL(point);
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
/**
|
|
303
|
+
* 平面到球面坐标
|
|
304
|
+
* @param point 平面坐标
|
|
305
|
+
* @returns Point 球面坐标
|
|
306
|
+
*/
|
|
307
|
+
}, {
|
|
308
|
+
key: "pointToLngLat",
|
|
309
|
+
value: function pointToLngLat(point) {
|
|
310
|
+
var mercator = {
|
|
311
|
+
lng: point.x,
|
|
312
|
+
lat: point.y
|
|
313
|
+
};
|
|
314
|
+
return this.convertMC2LL(mercator);
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
/**
|
|
318
|
+
* 地理坐标转换至像素坐标
|
|
319
|
+
* @param point 地理坐标
|
|
320
|
+
* @param zoom 级别
|
|
321
|
+
* @param mapCenter 地图中心点,注意为了保证没有误差,这里需要传递墨卡托坐标
|
|
322
|
+
* @param mapSize 地图容器大小
|
|
323
|
+
*/
|
|
324
|
+
}, {
|
|
325
|
+
key: "pointToPixel",
|
|
326
|
+
value: function pointToPixel(point, zoom, mapCenter, mapSize) {
|
|
327
|
+
if (!point) {
|
|
328
|
+
return;
|
|
329
|
+
}
|
|
330
|
+
point = this.lngLatToMercator(point);
|
|
331
|
+
var zoomUnits = this.getZoomUnits(zoom);
|
|
332
|
+
var x = Math.round((point['lng'] - mapCenter['lng']) / zoomUnits + mapSize.width / 2);
|
|
333
|
+
var y = Math.round((mapCenter['lat'] - point['lat']) / zoomUnits + mapSize.height / 2);
|
|
334
|
+
return {
|
|
335
|
+
x: x,
|
|
336
|
+
y: y
|
|
337
|
+
};
|
|
338
|
+
}
|
|
339
|
+
|
|
340
|
+
/**
|
|
341
|
+
* 像素坐标转换至地理坐标
|
|
342
|
+
* @param pixel 像素坐标
|
|
343
|
+
* @param zoom 级别
|
|
344
|
+
* @param mapCenter 地图中心点,注意为了保证没有误差,这里需要传递墨卡托坐标
|
|
345
|
+
* @param mapSize 地图容器大小
|
|
346
|
+
*/
|
|
347
|
+
}, {
|
|
348
|
+
key: "pixelToPoint",
|
|
349
|
+
value: function pixelToPoint(pixel, zoom, mapCenter, mapSize) {
|
|
350
|
+
if (!pixel) {
|
|
351
|
+
return;
|
|
352
|
+
}
|
|
353
|
+
var zoomUnits = this.getZoomUnits(zoom);
|
|
354
|
+
var lng = mapCenter['lng'] + zoomUnits * (pixel.x - mapSize.width / 2);
|
|
355
|
+
var lat = mapCenter['lat'] - zoomUnits * (pixel.y - mapSize.height / 2);
|
|
356
|
+
var point = {
|
|
357
|
+
lng: lng,
|
|
358
|
+
lat: lat
|
|
359
|
+
};
|
|
360
|
+
return this.mercatorToLngLat(point);
|
|
361
|
+
}
|
|
362
|
+
|
|
363
|
+
/**
|
|
364
|
+
*
|
|
365
|
+
* @param zoom
|
|
366
|
+
* @returns {number}
|
|
367
|
+
*/
|
|
368
|
+
}, {
|
|
369
|
+
key: "getZoomUnits",
|
|
370
|
+
value: function getZoomUnits(zoom) {
|
|
371
|
+
return Math.pow(2, 18 - zoom);
|
|
372
|
+
}
|
|
373
|
+
}]);
|
|
374
|
+
return BaiduMercatorProjection;
|
|
375
|
+
}();
|
|
376
|
+
var _default = exports["default"] = BaiduMercatorProjection;
|
|
377
|
+
//# sourceMappingURL=BaiduMercatorProjection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaiduMercatorProjection.js","names":["EARTH_RADIUS","MC_BAND","LL_BAND","MC2LL","LL2MC","BaiduMercatorProjection","_classCallCheck","isWgs84","_createClass","key","value","getDistanceByMC","point1","point2","convertMC2LL","x1","toRadians","y1","x2","y2","getDistance","getDistanceByLL","getLoop","getRange","point","lng","lat","lnglat","mmy","Math","PI","atan","exp","toFixed","temp","abs","factor","undefined","i","length","convertor","convertLL2MC","mercator","earthRad","a","log","sin","parseFloat","mc","fromPoint","x","y","acos","cos","deg","toDegrees","rad","v","b","max","min","lngLatToMercator","lngLatToPoint","mercatorToLngLat","pointToLngLat","pointToPixel","zoom","mapCenter","mapSize","zoomUnits","getZoomUnits","round","width","height","pixelToPoint","pixel","pow","_default","exports"],"sources":["map/base/imagery/baidu/BaiduMercatorProjection.js"],"sourcesContent":["const EARTH_RADIUS = 6370996.81\nconst MC_BAND = [12890594.86, 8362377.87, 5591021, 3481989.83, 1678043.12, 0]\nconst LL_BAND = [75, 60, 45, 30, 15, 0]\nconst MC2LL = [\n [\n 1.410526172116255e-8,\n 8.98305509648872e-6,\n -1.9939833816331,\n 2.009824383106796e2,\n -1.872403703815547e2,\n 91.6087516669843,\n -23.38765649603339,\n 2.57121317296198,\n -0.03801003308653,\n 1.73379812e7\n ],\n [\n -7.435856389565537e-9,\n 8.983055097726239e-6,\n -0.78625201886289,\n 96.32687599759846,\n -1.85204757529826,\n -59.36935905485877,\n 47.40033549296737,\n -16.50741931063887,\n 2.28786674699375,\n 1.026014486e7\n ],\n [\n -3.030883460898826e-8,\n 8.98305509983578e-6,\n 0.30071316287616,\n 59.74293618442277,\n 7.357984074871,\n -25.38371002664745,\n 13.45380521110908,\n -3.29883767235584,\n 0.32710905363475,\n 6.85681737e6\n ],\n [\n -1.981981304930552e-8,\n 8.983055099779535e-6,\n 0.03278182852591,\n 40.31678527705744,\n 0.65659298677277,\n -4.44255534477492,\n 0.85341911805263,\n 0.12923347998204,\n -0.04625736007561,\n 4.48277706e6\n ],\n [\n 3.09191371068437e-9,\n 8.983055096812155e-6,\n 0.00006995724062,\n 23.10934304144901,\n -0.00023663490511,\n -0.6321817810242,\n -0.00663494467273,\n 0.03430082397953,\n -0.00466043876332,\n 2.5551644e6\n ],\n [\n 2.890871144776878e-9,\n 8.983055095805407e-6,\n -0.00000003068298,\n 7.47137025468032,\n -0.00000353937994,\n -0.02145144861037,\n -0.00001234426596,\n 0.00010322952773,\n -0.00000323890364,\n 8.260885e5\n ]\n]\nconst LL2MC = [\n [\n -0.0015702102444,\n 1.113207020616939e5,\n 1.704480524535203e15,\n -1.033898737604234e16,\n 2.611266785660388e16,\n -3.51496691766537e16,\n 2.659570071840392e16,\n -1.072501245418824e16,\n 1.800819912950474e15,\n 82.5\n ],\n [\n 8.277824516172526e-4,\n 1.113207020463578e5,\n 6.477955746671608e8,\n -4.082003173641316e9,\n 1.077490566351142e10,\n -1.517187553151559e10,\n 1.205306533862167e10,\n -5.124939663577472e9,\n 9.133119359512032e8,\n 67.5\n ],\n [\n 0.00337398766765,\n 1.113207020202162e5,\n 4.481351045890365e6,\n -2.339375119931662e7,\n 7.968221547186455e7,\n -1.159649932797253e8,\n 9.723671115602145e7,\n -4.366194633752821e7,\n 8.477230501135234e6,\n 52.5\n ],\n [\n 0.00220636496208,\n 1.113207020209128e5,\n 5.175186112841131e4,\n 3.796837749470245e6,\n 9.920137397791013e5,\n -1.22195221711287e6,\n 1.340652697009075e6,\n -6.209436990984312e5,\n 1.444169293806241e5,\n 37.5\n ],\n [\n -3.441963504368392e-4,\n 1.113207020576856e5,\n 2.782353980772752e2,\n 2.485758690035394e6,\n 6.070750963243378e3,\n 5.482118345352118e4,\n 9.540606633304236e3,\n -2.71055326746645e3,\n 1.405483844121726e3,\n 22.5\n ],\n [\n -3.218135878613132e-4,\n 1.113207020701615e5,\n 0.00369383431289,\n 8.237256402795718e5,\n 0.46104986909093,\n 2.351343141331292e3,\n 1.58060784298199,\n 8.77738589078284,\n 0.37238884252424,\n 7.45\n ]\n]\n\nclass BaiduMercatorProjection {\n constructor() {\n this.isWgs84 = false\n }\n\n getDistanceByMC(point1, point2) {\n if (!point1 || !point2) {\n return 0\n }\n point1 = this.convertMC2LL(point1)\n if (!point1) {\n return 0\n }\n let x1 = this.toRadians(point1['lng'])\n let y1 = this.toRadians(point1['lat'])\n point2 = this.convertMC2LL(point2)\n if (!point2) {\n return 0\n }\n let x2 = this.toRadians(point2['lng'])\n let y2 = this.toRadians(point2['lat'])\n return this.getDistance(x1, x2, y1, y2)\n }\n\n /**\n * 根据经纬度坐标计算两点间距离;\n * @param point1\n * @param point2\n * @returns {number|*} 返回两点间的距离\n */\n getDistanceByLL(point1, point2) {\n if (!point1 || !point2) {\n return 0\n }\n point1['lng'] = this.getLoop(point1['lng'], -180, 180)\n point1['lat'] = this.getRange(point1['lat'], -74, 74)\n point2['lng'] = this.getLoop(point2['lng'], -180, 180)\n point2['lat'] = this.getRange(point2['lat'], -74, 74)\n let x1 = this.toRadians(point1['lng'])\n let y1 = this.toRadians(point1['lat'])\n let x2 = this.toRadians(point2['lng'])\n let y2 = this.toRadians(point2['lat'])\n return this.getDistance(x1, x2, y1, y2)\n }\n\n /**\n * 平面直角坐标转换成经纬度坐标;\n * @param point\n * @returns {Point|{lng: number, lat: number}}\n */\n convertMC2LL(point) {\n if (!point) {\n return { lng: 0, lat: 0 }\n }\n let lnglat = {}\n if (this.isWgs84) {\n lnglat.lng = (point.lng / 20037508.34) * 180\n let mmy = (point.lat / 20037508.34) * 180\n lnglat.lat =\n (180 / Math.PI) *\n (2 * Math.atan(Math.exp((mmy * Math.PI) / 180)) - Math.PI / 2)\n return {\n lng: lnglat['lng'].toFixed(6),\n lat: lnglat['lat'].toFixed(6)\n }\n }\n\n let temp = {\n lng: Math.abs(point['lng']),\n lat: Math.abs(point['lat'])\n }\n\n let factor = undefined\n for (let i = 0; i < MC_BAND.length; i++) {\n if (temp['lat'] >= MC_BAND[i]) {\n factor = MC2LL[i]\n break\n }\n }\n lnglat = this.convertor(point, factor)\n return {\n lng: lnglat['lng'].toFixed(6),\n lat: lnglat['lat'].toFixed(6)\n }\n }\n\n /**\n * 经纬度坐标转换成平面直角坐标;\n * @param point 经纬度坐标\n * @returns {{lng: number, lat: number}|*}\n */\n convertLL2MC(point) {\n if (!point) {\n return { lng: 0, lat: 0 }\n }\n if (\n point['lng'] > 180 ||\n point['lng'] < -180 ||\n point['lat'] > 90 ||\n point['lat'] < -90\n ) {\n return point\n }\n\n if (this.isWgs84) {\n let mercator = {}\n let earthRad = 6378137.0\n mercator.lng = ((point.lng * Math.PI) / 180) * earthRad\n let a = (point.lat * Math.PI) / 180\n mercator.lat =\n (earthRad / 2) * Math.log((1.0 + Math.sin(a)) / (1.0 - Math.sin(a)))\n\n return {\n lng: parseFloat(mercator['lng'].toFixed(2)),\n lat: parseFloat(mercator['lat'].toFixed(2))\n }\n }\n\n point['lng'] = this.getLoop(point['lng'], -180, 180)\n point['lat'] = this.getRange(point['lat'], -74, 74)\n let temp = { lng: point['lng'], lat: point['lat'] }\n let factor = undefined\n for (let i = 0; i < LL_BAND.length; i++) {\n if (temp['lat'] >= LL_BAND[i]) {\n factor = LL2MC[i]\n break\n }\n }\n if (!factor) {\n for (let i = 0; i < LL_BAND.length; i++) {\n if (temp['lat'] <= -LL_BAND[i]) {\n factor = LL2MC[i]\n break\n }\n }\n }\n let mc = this.convertor(point, factor)\n return {\n lng: parseFloat(mc['lng'].toFixed(2)),\n lat: parseFloat(mc['lat'].toFixed(2))\n }\n }\n\n /**\n *\n * @param fromPoint\n * @param factor\n * @returns {{lng: *, lat: *}}\n */\n convertor(fromPoint, factor) {\n if (!fromPoint || !factor) {\n return { lng: 0, lat: 0 }\n }\n let x = factor[0] + factor[1] * Math.abs(fromPoint['lng'])\n let temp = Math.abs(fromPoint['lat']) / factor[9]\n let y =\n factor[2] +\n factor[3] * temp +\n factor[4] * temp * temp +\n factor[5] * temp * temp * temp +\n factor[6] * temp * temp * temp * temp +\n factor[7] * temp * temp * temp * temp * temp +\n factor[8] * temp * temp * temp * temp * temp * temp\n x *= fromPoint['lng'] < 0 ? -1 : 1\n y *= fromPoint['lat'] < 0 ? -1 : 1\n return {\n lng: x,\n lat: y\n }\n }\n\n /**\n *\n * @param x1\n * @param x2\n * @param y1\n * @param y2\n * @returns {number}\n */\n getDistance(x1, x2, y1, y2) {\n return (\n EARTH_RADIUS *\n Math.acos(\n Math.sin(y1) * Math.sin(y2) +\n Math.cos(y1) * Math.cos(y2) * Math.cos(x2 - x1)\n )\n )\n }\n\n /**\n *\n * @param deg\n * @returns {number}\n */\n toRadians(deg) {\n return (Math.PI * deg) / 180\n }\n\n /**\n *\n * @param rad\n * @returns {number}\n */\n toDegrees(rad) {\n return (180 * rad) / Math.PI\n }\n\n /**\n *\n * @param v\n * @param a\n * @param b\n * @returns {number}\n */\n getRange(v, a, b) {\n if (a != null) {\n v = Math.max(v, a)\n }\n if (b != null) {\n v = Math.min(v, b)\n }\n return v\n }\n\n /**\n *\n * @param v\n * @param a\n * @param b\n * @returns {*}\n */\n getLoop(v, a, b) {\n while (v > b) {\n v -= b - a\n }\n while (v < a) {\n v += b - a\n }\n return v\n }\n\n /**\n *\n * @param point\n * @returns {{lng: number, lat: number}|*}\n */\n lngLatToMercator(point) {\n return this.convertLL2MC(point)\n }\n\n /**\n *\n * @param point\n * @returns {{x: (number|*), y: (number|*)}}\n */\n lngLatToPoint(point) {\n let mercator = this.convertLL2MC(point)\n return {\n x: mercator['lng'],\n y: mercator['lat']\n }\n }\n\n /**\n * 墨卡托变换至经纬度\n * @param point 墨卡托\n * @returns Point 经纬度\n */\n mercatorToLngLat(point) {\n return this.convertMC2LL(point)\n }\n\n /**\n * 平面到球面坐标\n * @param point 平面坐标\n * @returns Point 球面坐标\n */\n pointToLngLat(point) {\n let mercator = { lng: point.x, lat: point.y }\n return this.convertMC2LL(mercator)\n }\n\n /**\n * 地理坐标转换至像素坐标\n * @param point 地理坐标\n * @param zoom 级别\n * @param mapCenter 地图中心点,注意为了保证没有误差,这里需要传递墨卡托坐标\n * @param mapSize 地图容器大小\n */\n pointToPixel(point, zoom, mapCenter, mapSize) {\n if (!point) {\n return\n }\n point = this.lngLatToMercator(point)\n let zoomUnits = this.getZoomUnits(zoom)\n let x = Math.round(\n (point['lng'] - mapCenter['lng']) / zoomUnits + mapSize.width / 2\n )\n let y = Math.round(\n (mapCenter['lat'] - point['lat']) / zoomUnits + mapSize.height / 2\n )\n return { x, y }\n }\n\n /**\n * 像素坐标转换至地理坐标\n * @param pixel 像素坐标\n * @param zoom 级别\n * @param mapCenter 地图中心点,注意为了保证没有误差,这里需要传递墨卡托坐标\n * @param mapSize 地图容器大小\n */\n pixelToPoint(pixel, zoom, mapCenter, mapSize) {\n if (!pixel) {\n return\n }\n let zoomUnits = this.getZoomUnits(zoom)\n let lng = mapCenter['lng'] + zoomUnits * (pixel.x - mapSize.width / 2)\n let lat = mapCenter['lat'] - zoomUnits * (pixel.y - mapSize.height / 2)\n let point = { lng, lat }\n return this.mercatorToLngLat(point)\n }\n\n /**\n *\n * @param zoom\n * @returns {number}\n */\n getZoomUnits(zoom) {\n return Math.pow(2, 18 - zoom)\n }\n}\n\nexport default BaiduMercatorProjection\n"],"mappings":"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"}
|
|
@@ -0,0 +1,121 @@
|
|
|
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 Cesium = _interopRequireWildcard(require("cesium"));
|
|
9
|
+
var _BaiduMercatorProjection = _interopRequireDefault(require("./BaiduMercatorProjection"));
|
|
10
|
+
var _CoordTransform = _interopRequireDefault(require("../transform/CoordTransform"));
|
|
11
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
12
|
+
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); }
|
|
13
|
+
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; }
|
|
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
|
+
var BaiduMercatorTilingScheme = /*#__PURE__*/function (_Cesium$WebMercatorTi) {
|
|
27
|
+
_inherits(BaiduMercatorTilingScheme, _Cesium$WebMercatorTi);
|
|
28
|
+
var _super = _createSuper(BaiduMercatorTilingScheme);
|
|
29
|
+
function BaiduMercatorTilingScheme(options) {
|
|
30
|
+
var _this;
|
|
31
|
+
_classCallCheck(this, BaiduMercatorTilingScheme);
|
|
32
|
+
_this = _super.call(this, options);
|
|
33
|
+
var projection = new _BaiduMercatorProjection["default"]();
|
|
34
|
+
_this._projection.project = function (cartographic, result) {
|
|
35
|
+
result = result || {};
|
|
36
|
+
result = _CoordTransform["default"].WGS84ToGCJ02(Cesium.Math.toDegrees(cartographic.longitude), Cesium.Math.toDegrees(cartographic.latitude));
|
|
37
|
+
result = _CoordTransform["default"].GCJ02ToBD09(result[0], result[1]);
|
|
38
|
+
result[0] = Math.min(result[0], 180);
|
|
39
|
+
result[0] = Math.max(result[0], -180);
|
|
40
|
+
result[1] = Math.min(result[1], 74.000022);
|
|
41
|
+
result[1] = Math.max(result[1], -71.988531);
|
|
42
|
+
result = projection.lngLatToPoint({
|
|
43
|
+
lng: result[0],
|
|
44
|
+
lat: result[1]
|
|
45
|
+
});
|
|
46
|
+
return new Cesium.Cartesian2(result.x, result.y);
|
|
47
|
+
};
|
|
48
|
+
_this._projection.unproject = function (cartesian, result) {
|
|
49
|
+
result = result || {};
|
|
50
|
+
result = projection.mercatorToLngLat({
|
|
51
|
+
lng: cartesian.x,
|
|
52
|
+
lat: cartesian.y
|
|
53
|
+
});
|
|
54
|
+
result = _CoordTransform["default"].BD09ToGCJ02(result.lng, result.lat);
|
|
55
|
+
result = _CoordTransform["default"].GCJ02ToWGS84(result[0], result[1]);
|
|
56
|
+
return new Cesium.Cartographic(Cesium.Math.toRadians(result[0]), Cesium.Math.toRadians(result[1]));
|
|
57
|
+
};
|
|
58
|
+
_this.resolutions = options.resolutions || [];
|
|
59
|
+
return _this;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
*
|
|
64
|
+
* @param x
|
|
65
|
+
* @param y
|
|
66
|
+
* @param level
|
|
67
|
+
* @param result
|
|
68
|
+
* @returns {module:cesium.Rectangle|*}
|
|
69
|
+
*/
|
|
70
|
+
_createClass(BaiduMercatorTilingScheme, [{
|
|
71
|
+
key: "tileXYToNativeRectangle",
|
|
72
|
+
value: function tileXYToNativeRectangle(x, y, level, result) {
|
|
73
|
+
var tileWidth = this.resolutions[level];
|
|
74
|
+
var west = x * tileWidth;
|
|
75
|
+
var east = (x + 1) * tileWidth;
|
|
76
|
+
var north = ((y = -y) + 1) * tileWidth;
|
|
77
|
+
var south = y * tileWidth;
|
|
78
|
+
if (!Cesium.defined(result)) {
|
|
79
|
+
return new Cesium.Rectangle(west, south, east, north);
|
|
80
|
+
}
|
|
81
|
+
result.west = west;
|
|
82
|
+
result.south = south;
|
|
83
|
+
result.east = east;
|
|
84
|
+
result.north = north;
|
|
85
|
+
return result;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
*
|
|
90
|
+
* @param position
|
|
91
|
+
* @param level
|
|
92
|
+
* @param result
|
|
93
|
+
* @returns {undefined|*}
|
|
94
|
+
*/
|
|
95
|
+
}, {
|
|
96
|
+
key: "positionToTileXY",
|
|
97
|
+
value: function positionToTileXY(position, level, result) {
|
|
98
|
+
var rectangle = this._rectangle;
|
|
99
|
+
if (!Cesium.Rectangle.contains(rectangle, position)) {
|
|
100
|
+
return undefined;
|
|
101
|
+
}
|
|
102
|
+
var projection = this._projection;
|
|
103
|
+
var webMercatorPosition = projection.project(position);
|
|
104
|
+
if (!Cesium.defined(webMercatorPosition)) {
|
|
105
|
+
return undefined;
|
|
106
|
+
}
|
|
107
|
+
var tileWidth = this.resolutions[level];
|
|
108
|
+
var xTileCoordinate = Math.floor(webMercatorPosition.x / tileWidth);
|
|
109
|
+
var yTileCoordinate = -Math.floor(webMercatorPosition.y / tileWidth);
|
|
110
|
+
if (!Cesium.defined(result)) {
|
|
111
|
+
return new Cesium.Cartesian2(xTileCoordinate, yTileCoordinate);
|
|
112
|
+
}
|
|
113
|
+
result.x = xTileCoordinate;
|
|
114
|
+
result.y = yTileCoordinate;
|
|
115
|
+
return result;
|
|
116
|
+
}
|
|
117
|
+
}]);
|
|
118
|
+
return BaiduMercatorTilingScheme;
|
|
119
|
+
}(Cesium.WebMercatorTilingScheme);
|
|
120
|
+
var _default = exports["default"] = BaiduMercatorTilingScheme;
|
|
121
|
+
//# sourceMappingURL=BaiduMercatorTilingScheme.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaiduMercatorTilingScheme.js","names":["Cesium","_interopRequireWildcard","require","_BaiduMercatorProjection","_interopRequireDefault","_CoordTransform","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","length","descriptor","enumerable","configurable","writable","_toPropertyKey","key","_createClass","protoProps","staticProps","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","Number","_inherits","subClass","superClass","create","constructor","value","_setPrototypeOf","o","p","setPrototypeOf","bind","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","arguments","apply","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","getPrototypeOf","BaiduMercatorTilingScheme","_Cesium$WebMercatorTi","_super","options","_this","projection","BaiduMercatorProjection","_projection","project","cartographic","CoordTransform","WGS84ToGCJ02","Math","toDegrees","longitude","latitude","GCJ02ToBD09","min","max","lngLatToPoint","lng","lat","Cartesian2","x","y","unproject","cartesian","mercatorToLngLat","BD09ToGCJ02","GCJ02ToWGS84","Cartographic","toRadians","resolutions","tileXYToNativeRectangle","level","tileWidth","west","east","north","south","defined","Rectangle","positionToTileXY","position","rectangle","_rectangle","contains","webMercatorPosition","xTileCoordinate","floor","yTileCoordinate","WebMercatorTilingScheme","_default","exports"],"sources":["map/base/imagery/baidu/BaiduMercatorTilingScheme.js"],"sourcesContent":["import * as Cesium from 'cesium';\nimport BaiduMercatorProjection from './BaiduMercatorProjection'\nimport CoordTransform from '../transform/CoordTransform'\n\nclass BaiduMercatorTilingScheme extends Cesium.WebMercatorTilingScheme {\n constructor(options) {\n super(options)\n let projection = new BaiduMercatorProjection()\n this._projection.project = function(cartographic, result) {\n result = result || {}\n result = CoordTransform.WGS84ToGCJ02(\n Cesium.Math.toDegrees(cartographic.longitude),\n Cesium.Math.toDegrees(cartographic.latitude)\n )\n result = CoordTransform.GCJ02ToBD09(result[0], result[1])\n result[0] = Math.min(result[0], 180)\n result[0] = Math.max(result[0], -180)\n result[1] = Math.min(result[1], 74.000022)\n result[1] = Math.max(result[1], -71.988531)\n result = projection.lngLatToPoint({\n lng: result[0],\n lat: result[1]\n })\n return new Cesium.Cartesian2(result.x, result.y)\n }\n this._projection.unproject = function(cartesian, result) {\n result = result || {}\n result = projection.mercatorToLngLat({\n lng: cartesian.x,\n lat: cartesian.y\n })\n result = CoordTransform.BD09ToGCJ02(result.lng, result.lat)\n result = CoordTransform.GCJ02ToWGS84(result[0], result[1])\n return new Cesium.Cartographic(\n Cesium.Math.toRadians(result[0]),\n Cesium.Math.toRadians(result[1])\n )\n }\n this.resolutions = options.resolutions || []\n }\n\n /**\n *\n * @param x\n * @param y\n * @param level\n * @param result\n * @returns {module:cesium.Rectangle|*}\n */\n tileXYToNativeRectangle(x, y, level, result) {\n const tileWidth = this.resolutions[level]\n const west = x * tileWidth\n const east = (x + 1) * tileWidth\n const north = ((y = -y) + 1) * tileWidth\n const south = y * tileWidth\n\n if (!Cesium.defined(result)) {\n return new Cesium.Rectangle(west, south, east, north)\n }\n\n result.west = west\n result.south = south\n result.east = east\n result.north = north\n return result\n }\n\n /**\n *\n * @param position\n * @param level\n * @param result\n * @returns {undefined|*}\n */\n positionToTileXY(position, level, result) {\n const rectangle = this._rectangle\n if (!Cesium.Rectangle.contains(rectangle, position)) {\n return undefined\n }\n const projection = this._projection\n const webMercatorPosition = projection.project(position)\n if (!Cesium.defined(webMercatorPosition)) {\n return undefined\n }\n const tileWidth = this.resolutions[level]\n const xTileCoordinate = Math.floor(webMercatorPosition.x / tileWidth)\n const yTileCoordinate = -Math.floor(webMercatorPosition.y / tileWidth)\n if (!Cesium.defined(result)) {\n return new Cesium.Cartesian2(xTileCoordinate, yTileCoordinate)\n }\n result.x = xTileCoordinate\n result.y = yTileCoordinate\n return result\n }\n}\n\nexport default BaiduMercatorTilingScheme\n"],"mappings":"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"}
|