@vtx/cs-map 1.0.89 → 1.0.91

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/lib/assets/excavate_bottom_min.png +0 -0
  2. package/lib/assets/excavate_kuangqu.png +0 -0
  3. package/lib/cesium-tiles-layer/demo/assets/baseMapImg-1.png +0 -0
  4. package/lib/cesium-tiles-layer/demo/assets/baseMapImg.png +0 -0
  5. package/lib/cesium-tiles-layer/demo/assets/round.png +0 -0
  6. package/lib/cesium-tiles-layer/demo/assets/water.png +0 -0
  7. package/lib/cesium-tiles-layer/demo/index.css +4 -0
  8. package/lib/cesium-tiles-layer/demo/index.less +4 -0
  9. package/lib/circle-fly/index.js +25 -15
  10. package/lib/circle-fly/index.js.map +1 -1
  11. package/lib/excavation-analysis/TilesetCut.js +203 -0
  12. package/lib/excavation-analysis/TilesetCut.js.map +1 -0
  13. package/lib/excavation-analysis/hooks/useDrawHandler.js +142 -0
  14. package/lib/excavation-analysis/hooks/useDrawHandler.js.map +1 -0
  15. package/lib/excavation-analysis/hooks/useTerrainClipPlan.js +292 -0
  16. package/lib/excavation-analysis/hooks/useTerrainClipPlan.js.map +1 -0
  17. package/lib/excavation-analysis/hooks/useTileSetCut.js +31 -0
  18. package/lib/excavation-analysis/hooks/useTileSetCut.js.map +1 -0
  19. package/lib/excavation-analysis/index.js +84 -0
  20. package/lib/excavation-analysis/index.js.map +1 -0
  21. package/lib/excavation-analysis/style/css.js +4 -0
  22. package/lib/excavation-analysis/style/css.js.map +1 -0
  23. package/lib/excavation-analysis/style/index.css +0 -0
  24. package/lib/excavation-analysis/style/index.js +4 -0
  25. package/lib/excavation-analysis/style/index.js.map +1 -0
  26. package/lib/excavation-analysis/style/index.less +0 -0
  27. package/lib/fly-line-layer/FlyLineLayer.js +12 -9
  28. package/lib/fly-line-layer/FlyLineLayer.js.map +1 -1
  29. package/lib/highlight-layer/HighlightLayer.js +1 -1
  30. package/lib/highlight-layer/HighlightLayer.js.map +1 -1
  31. package/lib/map/Popup.js +27 -15
  32. package/lib/map/Popup.js.map +1 -1
  33. package/lib/map/base/imagery/geoq/GeoQImageryProvider.js +4 -4
  34. package/lib/map/base/imagery/geoq/GeoQImageryProvider.js.map +1 -1
  35. package/lib/map/base/imagery/tdt/JiangSuTdtImageryProvider.js +48 -0
  36. package/lib/map/base/imagery/tdt/JiangSuTdtImageryProvider.js.map +1 -0
  37. package/lib/map/base/index.js +25 -2
  38. package/lib/map/base/index.js.map +1 -1
  39. package/lib/map/index.js +31 -22
  40. package/lib/map/index.js.map +1 -1
  41. package/lib/split-screen/index.js +102 -0
  42. package/lib/split-screen/index.js.map +1 -0
  43. package/lib/split-screen/style/css.js +2 -0
  44. package/lib/split-screen/style/css.js.map +1 -0
  45. package/lib/split-screen/style/index.js +2 -0
  46. package/lib/split-screen/style/index.js.map +1 -0
  47. package/lib/wall/WallGeometry.js +5 -3
  48. package/lib/wall/WallGeometry.js.map +1 -1
  49. package/lib/water-surface-layer/WaterSurfaceLayer.js +25 -8
  50. package/lib/water-surface-layer/WaterSurfaceLayer.js.map +1 -1
  51. package/package.json +1 -1
package/lib/map/index.js CHANGED
@@ -8,6 +8,7 @@ exports["default"] = void 0;
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
  var _propTypes = _interopRequireDefault(require("prop-types"));
10
10
  var _cesium = require("cesium");
11
+ var _ahooks = require("ahooks");
11
12
  var _HighlightLayer = _interopRequireDefault(require("../highlight-layer/HighlightLayer"));
12
13
  var _base = require("./base");
13
14
  require("./material");
@@ -104,7 +105,6 @@ function Map(props) {
104
105
  var mapDomRef = (0, _react.useRef)(null);
105
106
  var tipRef = (0, _react.useRef)(null);
106
107
  var popupRef = (0, _react.useRef)();
107
- var highlightLayer = (0, _react.useRef)();
108
108
  var getMapFeatureInfoByText = (0, _useGetMapFeatureInfoByText["default"])(mapRef);
109
109
  (0, _react.useEffect)(function () {
110
110
  initMap();
@@ -112,19 +112,11 @@ function Map(props) {
112
112
  setLoading === null || setLoading === void 0 || setLoading(false);
113
113
  };
114
114
  }, []);
115
- (0, _react.useEffect)(function () {
116
- if (mapRef !== null && mapRef !== void 0 && mapRef.current) {
117
- highlightLayer.current = new _HighlightLayer["default"]({
118
- map: mapRef.current,
119
- color: highlightColor
120
- });
121
- mapRef.current.highlightLayer = highlightLayer.current;
122
- return function () {
123
- highlightLayer.current.destroy();
124
- mapRef.current.highlightLayer = null;
125
- };
115
+ (0, _ahooks.useUpdateEffect)(function () {
116
+ if (mapRef.current) {
117
+ mapRef.current.baseMap.setBaseMap(baseMapStyle);
126
118
  }
127
- }, []);
119
+ }, [JSON.stringify(baseMapStyle)]);
128
120
  var addLabelImageryProvider = function addLabelImageryProvider() {
129
121
  if (!baseMapStyle.hideLabel) {
130
122
  // 调用影响中文注记服务
@@ -263,6 +255,12 @@ function Map(props) {
263
255
  map: map
264
256
  });
265
257
 
258
+ // 高亮图层
259
+ map.highlightLayer = new _HighlightLayer["default"]({
260
+ map: map,
261
+ color: highlightColor
262
+ });
263
+
266
264
  // 图层改变的时候
267
265
  map.layers.on('change', function (layers) {
268
266
  onEvents.layersChange && onEvents.layersChange(layers);
@@ -472,11 +470,11 @@ function Map(props) {
472
470
  });
473
471
  };
474
472
  map.destroyhighlightLayer = function () {
475
- highlightLayer.current.clearFeatures();
473
+ map.highlightLayer.clearFeatures();
476
474
  };
477
475
  // 添加高亮entity
478
476
  map.addHighlightFeature = function (feature, style) {
479
- highlightLayer.current.addHighlightFeature(feature, style);
477
+ map.highlightLayer.addHighlightFeature(feature, style);
480
478
  };
481
479
  // 通过返回值控制是否执行关闭
482
480
  map.onCloseTemplateBefore = function (feature) {
@@ -526,11 +524,11 @@ function Map(props) {
526
524
  obj.then(function (features) {
527
525
  if (features !== null && features !== void 0 && features.length) {
528
526
  var feature = features[0];
529
- map.showTemplate(feature.feature, _highlightLayer || highlightLayer.current);
527
+ map.showTemplate(feature.feature, _highlightLayer || map.highlightLayer);
530
528
  }
531
529
  });
532
530
  } else {
533
- map.showTemplate(obj, _highlightLayer || highlightLayer.current);
531
+ map.showTemplate(obj, _highlightLayer || map.highlightLayer);
534
532
  }
535
533
  } else {
536
534
  map.hideTemplate();
@@ -718,7 +716,7 @@ function Map(props) {
718
716
  if (entity) {
719
717
  registerEvent(entity, 'onClick');
720
718
  var _layer = map.getLayerByFeature(entity);
721
- if (_layer && _layer.template) {
719
+ if (Array.isArray(entity) || _layer && _layer.template) {
722
720
  map.onClickTemplateAfter && map.onClickTemplateAfter(entity);
723
721
  map.showTemplate(entity);
724
722
  }
@@ -953,9 +951,19 @@ function Map(props) {
953
951
  y = _viewDefault$center2[1],
954
952
  _viewDefault$center2$ = _viewDefault$center2[2],
955
953
  z = _viewDefault$center2$ === void 0 ? 80000.0 : _viewDefault$center2$;
956
- map.camera.setView({
957
- destination: new _cesium.Cartesian3.fromDegrees(x, y, z)
958
- });
954
+ if (map.viewMode === '3D') {
955
+ var _center2 = _cesium.Cartesian3.fromDegrees(x, y);
956
+ var heading = _cesium.Math.toRadians(0.0);
957
+ var pitch = _cesium.Math.toRadians(-35.0);
958
+ map.camera.flyToBoundingSphere(new _cesium.BoundingSphere(_center2, z), {
959
+ offset: new _cesium.HeadingPitchRange(heading, pitch, z),
960
+ duration: 0
961
+ });
962
+ } else {
963
+ map.camera.setView({
964
+ destination: new _cesium.Cartesian3.fromDegrees(x, y, z)
965
+ });
966
+ }
959
967
 
960
968
  // 延时触发回调事件
961
969
  setTimeout(function () {
@@ -1031,6 +1039,7 @@ Map.propTypes = {
1031
1039
  mapDomStyle: _propTypes["default"].object,
1032
1040
  baseMapOptions: _propTypes["default"].object,
1033
1041
  setLoading: _propTypes["default"].func,
1034
- fitViewHeight: _propTypes["default"].number
1042
+ fitViewHeight: _propTypes["default"].number,
1043
+ hideHighlight: _propTypes["default"].bool
1035
1044
  };
1036
1045
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_cesium","_HighlightLayer","_base","_getDefaultMapInfo2","_classnames","_events","_Popup","_Provider","_Layers","_EventEmitter","_useGetMapFeatureInfoByText","_lodash","_createFeatureCollection","_getBBoxFromGeojson","_heightAndZoom","_TdtImageryProvider","_IRSImageryProvider","_excluded","_excluded2","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_construct","_isNativeReflectConstruct","Reflect","construct","apply","arguments","o","push","p","bind","_setPrototypeOf","prototype","Boolean","valueOf","setPrototypeOf","_regeneratorRuntime","value","Symbol","iterator","c","asyncIterator","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","asyncGeneratorStep","gen","reject","_next","_throw","key","info","error","_asyncToGenerator","fn","self","args","err","undefined","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","iter","Array","from","isArray","_arrayLikeToArray","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","ownKeys","filter","_objectSpread","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","_toPrimitive","toPrimitive","String","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","minLen","toString","test","len","arr2","Map","props","_props$width","width","_props$height","height","_props$dark","dark","tk","children","onCloseTemplateBefore","onZoom","_props$defaultPitch","defaultPitch","_props$onEvents","onEvents","baseMapUrl","_props$duration","duration","_props$baseMapStyle","baseMapStyle","imageryProvider","style","_props$autoView","autoView","_props$highlightColor","highlightColor","hideHighlight","wrapDomStyle","mapDomStyle","baseMapOptions","_props$viewMode","viewMode","setLoading","_useState","useState","_useState2","mapLoaded","setMapLoaded","_useState3","_useState4","tipVis","setTipVis","_useState5","_useState6","tip","setTip","mapRef","useRef","mapDomRef","tipRef","popupRef","highlightLayer","getMapFeatureInfoByText","useGetMapFeatureInfoByText","useEffect","initMap","current","HighlightLayer","map","color","destroy","addLabelImageryProvider","hideLabel","cia","TdtLabelImageryProvider","imageryLayers","addImageryProvider","IRSLabelImageryProvider","layers","_layers","ciaLayer","find","item","_item$_imageryProvide","_imageryProvider","_layer","remove","center","fitViewHeight","zoom","createdMap","options","_getDefaultMapInfo","getDefaultMapInfo","minZoom","maxZoom","defaultZoomLevel","longitude","latitude","viewDefault","Ion","defaultAccessToken","Imagery","url","crs","Viewer","shouldAnimate","animation","baseLayerPicker","fullscreenButton","geocoder","homeButton","timeline","infoBox","sceneModePicker","selectionIndicator","sceneMode","SceneMode","SCENE3D","navigationHelpButton","scene3DOnly","navigationInstructionsInitiallyVisible","showRenderLoopErrors","process","env","NODE_ENV","orderIndependentTranslucency","scene","globe","baseColor","Color","fromCssColorString","eventEmitter","EventEmitter","helper","EventHelper","add","tileLoadProgressEvent","emit","RequestScheduler","maximumRequestsPerServer","throttleRequests","_cesiumWidget","_creditContainer","display","baseMap","BaseMap","layer","Layers","on","layersChange","layersAdd","layersRemove","layersClear","visible","onChange","hideTemplate","layersVisible","getAllKeys","getLayersShowKeys","getShowKeys","getLayersHiddenKeys","getHiddenKeys","setLayersShowByKeys","_keys","setShowByKeys","setLayersHideByKeys","setHideByKeys","addLayer","index","removeLayer","clearLayers","getImageLayers","getFeatureLayers","getImageryLastIndex","_index","getImageryLayers","findIndex","zIndex","_i","getAllLayers","_map$dataSources","_map$imageryLayers","_map$scene","dataSources","_dataSources","primitives","_primitives","concat","_map$imageryLayers2","includes","getLayerByFeature","entity","ImageryLayerFeatureInfo","_entity$imageryLayer","imageryLayer","Cesium3DTileset","Cesium3DTileFeature","_entity$primitive","primitive","Primitive","_entity$primitive2","get3DTileFeatureProperties","feature","properties","getPropertyNames","propertyIds","propertyId","getProperty","getProperties","_feature$primitive","data","id","_feature$_properties","_properties","getValue","_id","getLayerByKey","getLayerById","getLayerByKeys","destroyhighlightLayer","clearFeatures","addHighlightFeature","getVisibleLayersByKeys","show","showTip","content","hideTip","showTemplateByFilter","_ref","_callee","field","_highlightLayer","_callee$","_context","getFeatureByFieldValue","features","showTemplate","_x","_x2","_x3","_x4","handlePoint","ScreenSpaceEventHandler","canvas","pickDataSourcesFeature","event","position","pick","isObject","pickImageryLayerFeatures","pickRay","camera","getPickRay","getCenterPosition","centerResult","pickEllipsoid","Cartesian2","clientWidth","clientHeight","curPosition","Ellipsoid","WGS84","cartesianToCartographic","curLongitude","window","Math","PI","curLatitude","setViewMode","fitView","getViewExtend","params","extend","computeViewRectangle","upperLeft","lowerRight","ellipsoid","upperLeft3","lowerRight3","upperLeftCartographic","lowerRightCartographic","minx","CesiumMath","toDegrees","maxx","miny","maxy","east","north","west","south","heightToZoom","zoomToHeight","registerEventLayer","registerMapEvent","registerEvent","_feature$event","checkClickable","unclickable","viewOnly","setInputAction","lonLat","getPositionLonLat","_clickObject","cancelBubble","template","onClickTemplateAfter","featuresPromise","defined","when","sort","b","_layerIndex","ScreenSpaceEventType","LEFT_CLICK","trackedEntity","LEFT_DOUBLE_CLICK","hoverFeature","getUid","random","endPosition","labelField","tipTemplate","label","uid","hoverUid","MOUSE_MOVE","moveEnd","addEventListener","viewRectangle","cameraHeight","positionCartographic","ceil","_ref2","geoJson","geometryInfo","lng","lat","_ref2$height","rest","pitch","flyTo","offset","heading","toRadians","range","destination","Cartesian3","fromDegrees","orientation","roll","_geoJson","createFeatureCollection","box","getBBoxFromGeojson","padding","unit","Rectangle","_viewDefault$center","x","_viewDefault$center$","z","flyToBoundingSphere","BoundingSphere","HeadingPitchRange","cartesian","cartographic","Cartographic","fromCartesian","setTimeout","_viewDefault$center2","_viewDefault$center2$","setView","onMouseMove","left","nativeEvent","layerX","top","layerY","createElement","background","className","classnames","ref","onMouseOver","onMouseOut","showModal","_default","exports","propTypes","PropTypes","oneOfType","string","number","func","array","bool","mapStyle","isRequired","object","node"],"sources":["map/index.jsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport {\n Viewer,\n SceneMode,\n Cartesian3,\n Ion,\n defined,\n when,\n ScreenSpaceEventHandler,\n ScreenSpaceEventType,\n ImageryLayerFeatureInfo,\n Primitive,\n Cartesian2,\n Ellipsoid,\n Cartographic,\n Math as CesiumMath,\n Rectangle,\n BoundingSphere,\n HeadingPitchRange,\n RequestScheduler,\n Cesium3DTileFeature,\n Cesium3DTileset,\n EventHelper,\n Color\n} from 'cesium';\nimport HighlightLayer from '../highlight-layer/HighlightLayer';\nimport { BaseMap, Imagery } from './base';\nimport './material';\nimport getDefaultMapInfo from '../_util/getDefaultMapInfo';\nimport 'cesium/Build/Cesium/Widgets/widgets.css';\nimport classnames from 'classnames';\nimport { registerEventLayer } from '../events';\nimport Popup from './Popup';\nimport Provider from '../_util/Provider';\nimport Layers from './Layers';\nimport EventEmitter from '../_util/EventEmitter';\nimport useGetMapFeatureInfoByText from './hooks/useGetMapFeatureInfoByText';\nimport { isObject } from 'lodash';\nimport { createFeatureCollection } from '../feature-layer/createFeatureCollection';\nimport getBBoxFromGeojson from '../_util/getBBoxFromGeojson.js';\nimport { heightToZoom, zoomToHeight } from '../_util/heightAndZoom.js';\nimport {TdtLabelImageryProvider} from \"./base/imagery/tdt/TdtImageryProvider\";\nimport {IRSLabelImageryProvider} from \"./base/imagery/irs/IRSImageryProvider\";\n\nfunction Map(props) {\n const {\n width = '100%',\n height = '100%',\n dark = true,\n tk,\n children,\n onCloseTemplateBefore,\n onZoom,\n defaultPitch = -88.0,\n onEvents = {},\n baseMapUrl,\n duration = 3,\n baseMapStyle = {\n imageryProvider: 'GeoQImageryProvider',\n style: 'Blue',\n },\n autoView = true,\n highlightColor = '#f7ff01',\n hideHighlight,\n wrapDomStyle,\n mapDomStyle,\n baseMapOptions,\n viewMode = '2D',\n setLoading\n } = props;\n\n const [mapLoaded, setMapLoaded] = useState(false);\n const [tipVis, setTipVis] = useState(false);\n const [tip, setTip] = useState(null);\n\n const mapRef = useRef(null);\n const mapDomRef = useRef(null);\n const tipRef = useRef(null);\n const popupRef = useRef();\n const highlightLayer = useRef();\n const getMapFeatureInfoByText = useGetMapFeatureInfoByText(mapRef);\n\n useEffect(() => {\n initMap();\n\n return () => {\n setLoading?.(false)\n }\n }, []);\n useEffect(() => {\n if (mapRef?.current) {\n highlightLayer.current = new HighlightLayer({\n map: mapRef.current,\n color: highlightColor,\n });\n mapRef.current.highlightLayer = highlightLayer.current;\n\n return () => {\n highlightLayer.current.destroy();\n mapRef.current.highlightLayer = null;\n };\n }\n }, []);\n\n const addLabelImageryProvider = () => {\n if (!baseMapStyle.hideLabel) {\n // 调用影响中文注记服务\n if (baseMapStyle.imageryProvider === 'TdtImageryProvider') {\n let cia = new TdtLabelImageryProvider({tk, ...baseMapStyle});\n mapRef.current.imageryLayers.addImageryProvider(cia); // 添加到cesium图层上\n } else if (baseMapStyle.imageryProvider === 'IRSImageryProvider') {\n let cia = new IRSLabelImageryProvider(baseMapStyle);\n mapRef.current.imageryLayers.addImageryProvider(cia); // 添加到cesium图层上\n }\n } else {\n if (mapRef.current) {\n let layers = mapRef.current.imageryLayers._layers || [];\n const ciaLayer = layers.find(item => item._imageryProvider?._layer === 'cia_w');\n if (ciaLayer) {\n mapRef.current.imageryLayers.remove(ciaLayer);\n }\n }\n }\n };\n\n const initMap = () => {\n const { center, fitViewHeight, dark, zoom, createdMap, ...options } = props;\n\n let { minZoom, maxZoom, defaultZoomLevel, longitude, latitude } = getDefaultMapInfo();\n\n // 全屏\n let viewDefault = {\n center: center ||\n (longitude && latitude && [longitude, latitude]) || [120.081627, 30.89638],\n zoom: zoom || (defaultZoomLevel && Number(defaultZoomLevel)) || 0,\n minZoom: (minZoom && Number(minZoom)) || 0,\n maxZoom: (maxZoom && Number(maxZoom)) || 20,\n };\n Ion.defaultAccessToken =\n 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJhZjc0ZDQ1ZS0wNWNhLTRhMDQtODJmYy03NTcyNDcxYzgzMDUiLCJpZCI6NzE4MTQsImlhdCI6MTYzNTQ3NzgyNX0.4TrdZWPWc9_6jLeGe90bRmBPB14XptwinSewVMu1iCE';\n\n let imageryProvider = new Imagery[baseMapStyle.imageryProvider]({\n style: baseMapStyle.style,\n url: baseMapUrl,\n crs: 'WGS84',\n dark,\n ...baseMapStyle\n });\n\n let map = new Viewer(mapDomRef.current, {\n shouldAnimate: true,\n animation: false, // 控制场景动画的播放速度控件\n baseLayerPicker: false, // 底图切换控件\n fullscreenButton: false, // 全屏控件\n geocoder: false, // 地理位置查询定位控件\n homeButton: false, // 默认相机位置控件\n timeline: false, // 时间滚动条控件\n infoBox: false, //是否显示信息框\n sceneModePicker: false, //是否显示3D/2D选择器\n selectionIndicator: false, // 点击点绿色弹出 是否显示选取指示器组件\n sceneMode: SceneMode.SCENE3D, //设定3维地图的默认场景模式: SceneMode.SCENE2D、SceneMode.SCENE3D、SceneMode.MORPHING\n navigationHelpButton: false, // 默认的相机控制提示控件\n scene3DOnly: true, // 每个几何实例仅以3D渲染以节省GPU内存\n navigationInstructionsInitiallyVisible: false,\n showRenderLoopErrors: process.env.NODE_ENV === 'development', //是否显示渲染错误\n orderIndependentTranslucency: false, //设置背景透明\n imageryProvider,\n\n ...options,\n });\n\n if (dark) {\n // 设置地球颜色\n map.scene.globe.baseColor = Color.fromCssColorString('#152937');\n }\n\n // 事件订阅\n map.eventEmitter = new EventEmitter();\n\n // 监听加载是否完成\n const helper = new EventHelper();\n helper.add(map.scene.globe.tileLoadProgressEvent, (e) => {\n setLoading?.(true);\n map.eventEmitter.emit('loading', e);\n if (e === 0) {\n setLoading?.(false)\n }\n })\n\n // 设置cesium请求调度器的最大并发数量\n RequestScheduler.maximumRequestsPerServer = 18;\n\n // 关闭请求调度器的请求节流\n RequestScheduler.throttleRequests = false;\n\n map.viewMode = viewMode;\n\n map.autoView = autoView; // 自动调整视角\n\n // 去版权信息\n map._cesiumWidget._creditContainer.style.display = 'none'; // 隐藏cesium ion\n\n mapRef.current = map;\n map.dark = dark;\n\n // 地图fit高度\n map.fitViewHeight = fitViewHeight || 5000;\n\n // 隐藏高亮效果\n map.hideHighlight = hideHighlight\n\n // 底图服务\n map.baseMap = new BaseMap({\n map,\n imageryProvider: baseMapStyle.imageryProvider,\n style: baseMapStyle.style,\n layer: imageryProvider,\n options: baseMapOptions,\n });\n\n // 添加 dataSource 和 imagery 图层\n map.layers = new Layers({ map });\n\n // 图层改变的时候\n map.layers.on('change', layers => {\n onEvents.layersChange && onEvents.layersChange(layers);\n map.eventEmitter.emit('layersChange', layers);\n });\n\n // 图层新增\n map.layers.on('add', layer => {\n onEvents.layersAdd && onEvents.layersAdd(layer);\n map.eventEmitter.emit('layersAdd', layer);\n });\n\n // 图层移除\n map.layers.on('remove', layer => {\n onEvents.layersRemove && onEvents.layersRemove(layer);\n map.eventEmitter.emit('layersRemove', layer);\n });\n\n // 图层清空\n map.layers.on('clear', () => {\n onEvents.layersClear && onEvents.layersClear();\n map.eventEmitter.emit('layersClear');\n });\n\n // 图层展示隐藏\n map.layers.on('visible', (layer, visible) => {\n map.layers.onChange(); // 触发图层改变\n\n // 图层关闭时,隐藏自身的气泡\n if (!visible && map.popupRef) {\n map.hideTemplate(layer);\n }\n\n onEvents.layersVisible && onEvents.layersVisible(layer, visible);\n map.eventEmitter.emit('layersVisible');\n });\n\n // 图层变化\n map.layersChange = () => {\n map.layers.onChange();\n };\n\n // 获取 layers 里面的 key 集合\n map.getAllKeys = () => {\n return map.layers.getAllKeys();\n };\n\n // 获取当前展示的 keys\n map.getLayersShowKeys = () => {\n return map.layers.getShowKeys();\n };\n\n // 获取当前隐藏的 keys\n map.getLayersHiddenKeys = () => {\n return map.layers.getHiddenKeys();\n };\n\n // 根据 keys 设置图层的显示,其他的隐藏\n map.setLayersShowByKeys = _keys => {\n return map.layers.setShowByKeys(_keys);\n };\n\n // 根据 keys 设置图层的隐藏,其他的显示\n map.setLayersHideByKeys = _keys => {\n return map.layers.setHideByKeys(_keys);\n };\n\n // 添加图层\n map.addLayer = (layer, index) => {\n return map.layers.addLayer(layer, index);\n };\n\n // 移除图层\n map.removeLayer = layer => {\n return map.layers.removeLayer(layer);\n };\n\n // 清除图层和entity\n map.clearLayers = () => {\n return map.layers.clearLayers();\n };\n\n // 获取 ImageLayer 图层\n map.getImageLayers = keys => {\n return map.layers.getImageLayers(keys);\n };\n\n // 获取 FeatureLayer 图层\n map.getFeatureLayers = keys => {\n return map.layers.getFeatureLayers(keys);\n };\n\n // 获取 Imagery 图层最后一个 index 值\n map.getImageryLastIndex = _index => {\n let index = 1;\n const layers = map.getImageryLayers();\n if (layers?.length) {\n if (_index && layers.findIndex(v => _index < v.zIndex) !== -1) {\n let _i = layers.findIndex(v => _index < v.zIndex) + 1;\n index = _i < index ? _i : index;\n } else {\n index = layers.length;\n }\n }\n\n return index;\n };\n\n // 查找所有dataSource和imagery图层\n map.getAllLayers = () => {\n const dataSources = map?.dataSources?._dataSources || [];\n const imageryLayers = map?.imageryLayers?._layers || [];\n const primitives = map?.scene?.primitives?._primitives || [];\n\n return [...dataSources, ...imageryLayers, ...primitives];\n };\n\n // 根据key查找imageryLayers图层\n map.getImageryLayers = _keys => {\n const layers = map?.imageryLayers?._layers || [];\n\n if (_keys && layers.length) {\n const keys = Array.isArray(_keys) ? _keys : [_keys];\n\n return layers.filter(layer => layer.key && keys.includes(layer.key));\n }\n\n return layers;\n };\n\n // 通过图形查询所属图层\n map.getLayerByFeature = entity => {\n if (!entity) return\n return map.getAllLayers().find(layer => {\n if (entity instanceof ImageryLayerFeatureInfo) {\n if (layer?.key && layer.key === entity?.imageryLayer?.key) {\n return layer;\n }\n } else if (layer instanceof Cesium3DTileset && entity instanceof Cesium3DTileFeature) {\n if (layer?.key && layer.key === entity?.primitive?.key) {\n return layer;\n }\n } else if (layer instanceof Primitive) {\n if (layer?.key && layer.key === entity?.primitive?.key) {\n return layer;\n }\n } else {\n if (layer?.key && layer.key === entity?.key) {\n return layer;\n }\n }\n });\n };\n\n // 获取 3DTiles feature 属性\n map.get3DTileFeatureProperties = (feature) => {\n let properties = {};\n if (feature && feature.getPropertyNames) {\n const propertyIds = feature.getPropertyNames() || [];\n if (propertyIds?.length) {\n const length = propertyIds.length;\n for (let i = 0; i < length; ++i) {\n const propertyId = propertyIds[i];\n properties[propertyId] = feature.getProperty(propertyId);\n }\n }\n }\n\n return properties\n }\n\n // 获取entity中数据\n map.getProperties = feature => {\n if (feature instanceof Cesium3DTileFeature) {\n return map.get3DTileFeatureProperties(feature);\n } else if (feature?.primitive?.data && feature?.primitive instanceof Primitive) {\n return feature.primitive.data.find(item => item.id === feature.id);\n } else {\n let properties =\n feature?._properties?.getValue(feature._id) || feature?.properties || {};\n properties = properties?.properties || properties;\n return properties;\n }\n\n };\n\n // 通过key查询图层\n map.getLayerByKey = key => {\n return map.getAllLayers().find(layer => {\n return key && layer.key && layer.key === key;\n });\n };\n\n // 根据id查询图层\n map.getLayerById = map.getLayerByKey;\n\n // 通过keys查询多个图层\n map.getLayerByKeys = keys => {\n return map.getAllLayers().filter(layer => {\n return layer.key && keys.includes(layer.key);\n });\n };\n map.destroyhighlightLayer = () => {\n highlightLayer.current.clearFeatures();\n };\n // 添加高亮entity\n map.addHighlightFeature = (feature, style) => {\n highlightLayer.current.addHighlightFeature(feature, style);\n };\n // 通过返回值控制是否执行关闭\n map.onCloseTemplateBefore = feature => {\n // 清除高亮\n map.destroyhighlightLayer();\n if (onCloseTemplateBefore) {\n return onCloseTemplateBefore(feature);\n }\n };\n\n // 根据key查找展示的图层\n map.getVisibleLayersByKeys = keys => {\n let layers = map.getAllLayers() || [];\n return layers.filter(layer => {\n if (typeof keys === 'string') {\n return layer.key === keys && layer.show;\n } else if (Array.isArray(keys)) {\n return keys.includes(layer.key) && layer.show;\n } else {\n return layer.show && layer.key;\n }\n });\n };\n\n // 展示提示\n map.showTip = content => {\n setTip(content);\n };\n\n // 隐藏提示\n map.hideTip = () => {\n setTip(null);\n };\n\n // 根据图层条件设置图层选中\n map.showTemplateByFilter = async (key, field, value, _highlightLayer) => {\n let layer = map.getLayerByKey(key);\n if (layer?.show) {\n let obj = layer.getFeatureByFieldValue(field, value);\n if (obj) {\n if (obj.then) {\n obj.then(features => {\n if (features?.length) {\n let feature = features[0];\n map.showTemplate(\n feature.feature,\n _highlightLayer || highlightLayer.current,\n );\n }\n });\n } else {\n map.showTemplate(obj, _highlightLayer || highlightLayer.current);\n }\n } else {\n map.hideTemplate();\n }\n }\n };\n\n // 展示看板\n map.showTemplate = feature => {\n popupRef.current.showTemplate(feature);\n };\n\n // 隐藏看板\n map.hideTemplate = () => {\n popupRef.current.hideTemplate();\n };\n\n // 鼠标事件控制器\n let handlePoint = new ScreenSpaceEventHandler(map.scene.canvas);\n\n // 获取图层上的图形信息\n map.pickDataSourcesFeature = event => {\n if (event?.position) {\n const { position } = event;\n const pick = map.scene.pick(position);\n if (isObject(pick?.id)) {\n return pick.id;\n }\n\n return pick;\n }\n };\n\n // 根据关键字获取图形信息\n map.getMapFeatureInfoByText = getMapFeatureInfoByText;\n\n // 获取wms的图形数据\n map.pickImageryLayerFeatures = event => {\n if (event?.position) {\n const { position } = event;\n const pickRay = map.camera.getPickRay(position);\n\n return map.imageryLayers.pickImageryLayerFeatures(pickRay, map.scene);\n }\n };\n\n // 获取当前地图中心的经纬度\n map.getCenterPosition = () => {\n let centerResult = map.camera.pickEllipsoid(\n new Cartesian2(map.canvas.clientWidth / 2, map.canvas.clientHeight / 2),\n );\n let curPosition = Ellipsoid.WGS84.cartesianToCartographic(centerResult);\n let curLongitude = (curPosition.longitude * 180) / window.Math.PI;\n let curLatitude = (curPosition.latitude * 180) / window.Math.PI;\n return [curLongitude, curLatitude];\n };\n\n // 二三维切换\n map.setViewMode = type => {\n map.viewMode = type;\n map.fitView();\n };\n\n // 获取当前地图视图的边界\n map.getViewExtend = () => {\n let params = {};\n let extend = map.camera.computeViewRectangle();\n if (typeof extend === 'undefined') {\n //2D下会可能拾取不到坐标,extend返回undefined,因此作如下转换\n let canvas = map.scene.canvas;\n let upperLeft = new Cartesian2(0, 0); //canvas左上角坐标转2d坐标\n let lowerRight = new Cartesian2(canvas.clientWidth, canvas.clientHeight); //canvas右下角坐标转2d坐标\n\n let ellipsoid = map.scene.globe.ellipsoid;\n let upperLeft3 = map.camera.pickEllipsoid(upperLeft, ellipsoid); //2D转3D世界坐标\n\n let lowerRight3 = map.camera.pickEllipsoid(lowerRight, ellipsoid); //2D转3D世界坐标\n\n let upperLeftCartographic = map.scene.globe.ellipsoid.cartesianToCartographic(\n upperLeft3,\n ); //3D世界坐标转弧度\n let lowerRightCartographic = map.scene.globe.ellipsoid.cartesianToCartographic(\n lowerRight3,\n ); //3D世界坐标转弧度\n\n let minx = CesiumMath.toDegrees(upperLeftCartographic.longitude); //弧度转经纬度\n let maxx = CesiumMath.toDegrees(lowerRightCartographic.longitude); //弧度转经纬度\n\n let miny = CesiumMath.toDegrees(lowerRightCartographic.latitude); //弧度转经纬度\n let maxy = CesiumMath.toDegrees(upperLeftCartographic.latitude); //弧度转经纬度\n\n params.minx = minx;\n params.maxx = maxx;\n params.miny = miny;\n params.maxy = maxy;\n } else {\n //3D获取方式\n params.maxx = CesiumMath.toDegrees(extend.east);\n params.maxy = CesiumMath.toDegrees(extend.north);\n\n params.minx = CesiumMath.toDegrees(extend.west);\n params.miny = CesiumMath.toDegrees(extend.south);\n }\n\n // 返回屏幕所在经纬度范围\n return params;\n };\n\n // 根据camera高度近似计算当前层级\n map.heightToZoom = heightToZoom;\n\n // 根据当前层级近似计算camera高度\n map.zoomToHeight = zoomToHeight;\n\n // 注册事件\n registerEventLayer(map, props);\n\n // 注册地图组件事件\n function registerMapEvent(e, event) {\n if (map[event]) {\n map[event](e);\n onEvents[event] && onEvents[event](e);\n }\n }\n\n // 注册图层组件事件\n function registerEvent(feature, event) {\n if (feature) {\n let layer = map.getLayerByFeature(feature);\n if (layer?.[event] || feature[event]) {\n let properties = map.getProperties(feature) || {};\n if (feature instanceof ImageryLayerFeatureInfo && feature?.data) {\n properties = {\n ...properties,\n data: feature?.data,\n };\n }\n\n // 触发自身事件\n feature[event]?.(properties);\n\n if (layer?.[event]) {\n layer[event](properties);\n }\n }\n }\n }\n\n // 监测图层是否允许点击\n function checkClickable(feature) {\n let layer = map.getLayerByFeature(feature);\n let unclickable = false;\n // 无法单独设置group内的图层\n // 暂时为了取消行政区划影像图层的点击效果\n if (layer) {\n unclickable = layer.viewOnly || layer.unclickable;\n }\n return unclickable;\n }\n\n // 点击事件\n handlePoint.setInputAction(event => {\n event.lonLat = map.getPositionLonLat(event);\n map._clickObject = event;\n registerMapEvent(event, 'onClick');\n map.hideTip();\n\n // 是否禁止冒泡\n if (!map.cancelBubble) {\n const pick = map.scene.pick(event.position);\n if (pick instanceof Cesium3DTileFeature) {\n let layer = map.getLayerByFeature(pick);\n if (layer) {\n if (layer.unclickable) {\n return\n }\n\n registerEvent(pick, 'onClick');\n\n if (layer.template) {\n map.onClickTemplateAfter && map.onClickTemplateAfter(pick);\n\n map.showTemplate(pick);\n }\n }\n } else {\n const entity = map.pickDataSourcesFeature(event);\n const featuresPromise = map.pickImageryLayerFeatures(event);\n if (entity) {\n\n registerEvent(entity, 'onClick');\n\n let layer = map.getLayerByFeature(entity);\n if (layer && layer.template) {\n map.onClickTemplateAfter && map.onClickTemplateAfter(entity);\n\n map.showTemplate(entity);\n }\n\n } else if (defined(featuresPromise)) {\n when(featuresPromise, features => {\n features.sort((a, b) => {\n return b.imageryLayer._layerIndex - a.imageryLayer._layerIndex;\n });\n\n const feature = features?.[0];\n if (checkClickable(feature)) {\n return;\n }\n registerEvent(feature, 'onClick');\n map.showTemplate(feature);\n });\n }\n }\n }\n }, ScreenSpaceEventType.LEFT_CLICK);\n\n // 双击事件\n handlePoint.setInputAction(event => {\n map.trackedEntity = undefined; // 取消双击锁定\n\n event.lonLat = map.getPositionLonLat(event);\n\n registerMapEvent(event, 'onDoubleClick');\n\n const feature = map.pickDataSourcesFeature(event);\n\n registerEvent(feature, 'onDoubleClick');\n }, ScreenSpaceEventType.LEFT_DOUBLE_CLICK);\n\n // 鼠标移动\n let hoverFeature;\n const getUid = feature => {\n if (feature && !feature._id) {\n feature._id = window.Math.random();\n }\n\n return feature._id;\n };\n\n // 鼠标移入移出\n handlePoint.setInputAction(event => {\n event.lonLat = map.getPositionLonLat({ position: event.endPosition });\n\n registerMapEvent(event, 'onMouseMove');\n const feature = map.pickDataSourcesFeature({ position: event.endPosition });\n\n if (feature) {\n let layer = map.getLayerByFeature(feature);\n if (layer && (layer.labelField || layer.tipTemplate)) {\n const {labelField, tipTemplate} = layer;\n const properties = map.getProperties(feature);\n\n let label;\n if (tipTemplate) {\n label = tipTemplate(properties);\n } else {\n label = properties ? properties[labelField] : '';\n }\n\n if (label) {\n map.showTip(label);\n } else {\n map.hideTip();\n }\n } else {\n map.hideTip();\n }\n\n registerEvent(feature, 'onMouseMove');\n\n // 判断是否在图形内移动\n if (hoverFeature) {\n let uid = getUid(feature);\n let hoverUid = getUid(hoverFeature);\n\n // 判断是否进入新的图形\n if (uid !== hoverUid) {\n registerEvent(hoverFeature, 'onMouseLeave');\n\n registerEvent(feature, 'onMouseEnter');\n hoverFeature = feature;\n }\n } else {\n registerEvent(feature, 'onMouseEnter');\n hoverFeature = feature;\n }\n\n registerEvent(feature, 'onMouseMove');\n } else {\n if (hoverFeature) {\n registerEvent(hoverFeature, 'onMouseLeave');\n }\n\n hoverFeature = null;\n map.hideTip();\n }\n }, ScreenSpaceEventType.MOUSE_MOVE);\n\n // 层级事件\n if (onZoom) {\n map.camera.moveEnd.addEventListener(() => {\n let viewRectangle = map.camera.computeViewRectangle();\n const west = (viewRectangle.west / window.Math.PI) * 180; // 左上方(西)\n const north = (viewRectangle.north / window.Math.PI) * 180; //右上方(北)\n const east = (viewRectangle.east / window.Math.PI) * 180; // 右下方(东)\n const south = (viewRectangle.south / window.Math.PI) * 180; // 左下方(南)\n const cameraHeight = map.camera.positionCartographic.height;\n const zoom = map.heightToZoom(window.Math.ceil(height));\n onZoom && onZoom({ west, north, east, south, cameraHeight, viewRectangle, zoom });\n });\n }\n\n // 动态调整视角,不传参数为默认视角,参数可以是图层、图形、数据等\n map.fitView = e => {\n const {\n geoJson,\n geometryInfo,\n data,\n entity,\n lng,\n lat,\n height = 50000,\n options,\n ...rest\n } = e || {};\n let pitch = map.camera.pitch;\n\n // 判断是否点击了图形\n if (entity) {\n if (map.viewMode === '3D') {\n map.flyTo(entity, { duration: 2 });\n } else {\n map.flyTo(entity, {\n duration: 2,\n offset: {\n heading: CesiumMath.toRadians(0.0),\n pitch,\n range: height,\n },\n });\n }\n } else if (lng && lat) {\n map.camera.flyTo({\n destination: new Cartesian3.fromDegrees(Number(lng), Number(lat), height),\n orientation: {\n pitch: CesiumMath.toRadians(-88.0),\n roll: 0.0,\n },\n duration: 2,\n ...rest,\n });\n } else if (data || geometryInfo || geoJson) {\n let _geoJson = geoJson;\n\n if (geometryInfo) {\n _geoJson = createFeatureCollection([{ geometryInfo }]);\n }\n\n if (data) {\n _geoJson = createFeatureCollection(Array.isArray(data) ? data : [data]);\n }\n\n let box = getBBoxFromGeojson(_geoJson, {\n padding: 100,\n unit: 'px', // px | m\n ...options,\n }); // 单位为米\n\n map.camera.flyTo({\n destination: new Rectangle.fromDegrees(...box), //west, south, east, north,\n orientation: {\n pitch:\n map.viewMode === '3D'\n ? CesiumMath.toRadians(-35)\n : CesiumMath.toRadians(defaultPitch),\n roll: 0.0,\n },\n duration: 2,\n ...rest,\n });\n } else {\n let [x, y, z = 80000.0] = viewDefault.center;\n\n if (map.viewMode === '3D') {\n const center = Cartesian3.fromDegrees(x, y);\n const heading = CesiumMath.toRadians(0.0);\n const pitch = CesiumMath.toRadians(-35.0);\n map.camera.flyToBoundingSphere(new BoundingSphere(center, z), {\n offset: new HeadingPitchRange(heading, pitch, z),\n duration: 2,\n });\n } else {\n map.camera.flyTo({\n destination: new Cartesian3.fromDegrees(x, y, z),\n orientation: {\n pitch: CesiumMath.toRadians(defaultPitch),\n roll: 0.0,\n },\n duration: 2,\n });\n }\n }\n };\n\n map.getPositionLonLat = event => {\n const cartesian = map.camera.pickEllipsoid(event.position, map.scene.globe.ellipsoid); // Cartesian3对象\n if (cartesian) {\n const cartographic = Cartographic.fromCartesian(cartesian); // 经纬高对象\n const lng = CesiumMath.toDegrees(cartographic.longitude);\n const lat = CesiumMath.toDegrees(cartographic.latitude);\n return [lng, lat];\n }\n\n return [];\n };\n\n if (duration) {\n // 自动调整视角\n map.fitView();\n\n // 延时触发回调事件\n setTimeout(() => {\n createdMap && createdMap(map);\n\n addLabelImageryProvider();\n\n onEvents.createdMap && onEvents.createdMap(map);\n\n setMapLoaded(true);\n }, (duration + 0.5) * 1000);\n } else {\n const [x, y, z = 80000.0] = viewDefault.center;\n map.camera.setView({\n destination: new Cartesian3.fromDegrees(x, y, z),\n });\n\n // 延时触发回调事件\n setTimeout(() => {\n createdMap && createdMap(map);\n\n addLabelImageryProvider();\n\n onEvents.createdMap && onEvents.createdMap(map);\n\n setMapLoaded(true);\n }, 500);\n }\n };\n\n const onMouseMove = event => {\n if (tip && tipRef.current) {\n tipRef.current.style.left = `${event.nativeEvent.layerX + 15}px`;\n tipRef.current.style.top = `${event.nativeEvent.layerY + 15}px`;\n }\n };\n\n return (\n <div\n style={{ width, height, background: dark ? '#152937' : '#cccccc', ...wrapDomStyle }}\n className={classnames('cs-map-container')}\n >\n <div\n ref={mapDomRef}\n className={classnames('cs-map')}\n onMouseMove={onMouseMove}\n onMouseOver={() => setTipVis(true)}\n onMouseOut={() => setTipVis(false)}\n style={mapDomStyle}\n >\n {tip && tipVis && (\n <div ref={tipRef} className={classnames('custom-tip')}>\n {tip}\n </div>\n )}\n </div>\n\n {mapLoaded && (\n <Provider\n value={{\n map: mapRef.current,\n showModal: props.showModal,\n }}\n >\n {children}\n {mapRef.current && <Popup ref={popupRef} map={mapRef.current} />}\n </Provider>\n )}\n </div>\n );\n}\n\nexport default Map;\n\nMap.propTypes = {\n width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n createdMap: PropTypes.func,\n onCloseTemplateBefore: PropTypes.func,\n onZoom: PropTypes.func,\n center: PropTypes.array,\n zoom: PropTypes.number,\n minZoom: PropTypes.number,\n maxZoom: PropTypes.number,\n defaultPitch: PropTypes.number,\n dark: PropTypes.bool,\n mapStyle: PropTypes.oneOfType(['vec', 'img']),\n tk: PropTypes.string.isRequired,\n onEvents: PropTypes.object,\n baseMapUrl: PropTypes.string,\n duration: PropTypes.number,\n baseMapStyle: PropTypes.object,\n children: PropTypes.node,\n autoView: PropTypes.bool,\n highlightColor: PropTypes.string,\n viewMode: PropTypes.string,\n showModal: PropTypes.func,\n wrapDomStyle: PropTypes.object,\n mapDomStyle: PropTypes.object,\n baseMapOptions: PropTypes.object,\n setLoading: PropTypes.func,\n fitViewHeight: PropTypes.number,\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_cesium","_ahooks","_HighlightLayer","_base","_getDefaultMapInfo2","_classnames","_events","_Popup","_Provider","_Layers","_EventEmitter","_useGetMapFeatureInfoByText","_lodash","_createFeatureCollection","_getBBoxFromGeojson","_heightAndZoom","_TdtImageryProvider","_IRSImageryProvider","_excluded","_excluded2","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_construct","_isNativeReflectConstruct","Reflect","construct","apply","arguments","o","push","p","bind","_setPrototypeOf","prototype","Boolean","valueOf","setPrototypeOf","_regeneratorRuntime","value","Symbol","iterator","c","asyncIterator","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","asyncGeneratorStep","gen","reject","_next","_throw","key","info","error","_asyncToGenerator","fn","self","args","err","undefined","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","iter","Array","from","isArray","_arrayLikeToArray","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","ownKeys","filter","_objectSpread","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","_toPrimitive","toPrimitive","String","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","minLen","toString","test","len","arr2","Map","props","_props$width","width","_props$height","height","_props$dark","dark","tk","children","onCloseTemplateBefore","onZoom","_props$defaultPitch","defaultPitch","_props$onEvents","onEvents","baseMapUrl","_props$duration","duration","_props$baseMapStyle","baseMapStyle","imageryProvider","style","_props$autoView","autoView","_props$highlightColor","highlightColor","hideHighlight","wrapDomStyle","mapDomStyle","baseMapOptions","_props$viewMode","viewMode","setLoading","_useState","useState","_useState2","mapLoaded","setMapLoaded","_useState3","_useState4","tipVis","setTipVis","_useState5","_useState6","tip","setTip","mapRef","useRef","mapDomRef","tipRef","popupRef","getMapFeatureInfoByText","useGetMapFeatureInfoByText","useEffect","initMap","useUpdateEffect","current","baseMap","setBaseMap","JSON","stringify","addLabelImageryProvider","hideLabel","cia","TdtLabelImageryProvider","imageryLayers","addImageryProvider","IRSLabelImageryProvider","layers","_layers","ciaLayer","find","item","_item$_imageryProvide","_imageryProvider","_layer","remove","center","fitViewHeight","zoom","createdMap","options","_getDefaultMapInfo","getDefaultMapInfo","minZoom","maxZoom","defaultZoomLevel","longitude","latitude","viewDefault","Ion","defaultAccessToken","Imagery","url","crs","map","Viewer","shouldAnimate","animation","baseLayerPicker","fullscreenButton","geocoder","homeButton","timeline","infoBox","sceneModePicker","selectionIndicator","sceneMode","SceneMode","SCENE3D","navigationHelpButton","scene3DOnly","navigationInstructionsInitiallyVisible","showRenderLoopErrors","process","env","NODE_ENV","orderIndependentTranslucency","scene","globe","baseColor","Color","fromCssColorString","eventEmitter","EventEmitter","helper","EventHelper","add","tileLoadProgressEvent","emit","RequestScheduler","maximumRequestsPerServer","throttleRequests","_cesiumWidget","_creditContainer","display","BaseMap","layer","Layers","highlightLayer","HighlightLayer","color","on","layersChange","layersAdd","layersRemove","layersClear","visible","onChange","hideTemplate","layersVisible","getAllKeys","getLayersShowKeys","getShowKeys","getLayersHiddenKeys","getHiddenKeys","setLayersShowByKeys","_keys","setShowByKeys","setLayersHideByKeys","setHideByKeys","addLayer","index","removeLayer","clearLayers","getImageLayers","getFeatureLayers","getImageryLastIndex","_index","getImageryLayers","findIndex","zIndex","_i","getAllLayers","_map$dataSources","_map$imageryLayers","_map$scene","dataSources","_dataSources","primitives","_primitives","concat","_map$imageryLayers2","includes","getLayerByFeature","entity","ImageryLayerFeatureInfo","_entity$imageryLayer","imageryLayer","Cesium3DTileset","Cesium3DTileFeature","_entity$primitive","primitive","Primitive","_entity$primitive2","get3DTileFeatureProperties","feature","properties","getPropertyNames","propertyIds","propertyId","getProperty","getProperties","_feature$primitive","data","id","_feature$_properties","_properties","getValue","_id","getLayerByKey","getLayerById","getLayerByKeys","destroyhighlightLayer","clearFeatures","addHighlightFeature","getVisibleLayersByKeys","show","showTip","content","hideTip","showTemplateByFilter","_ref","_callee","field","_highlightLayer","_callee$","_context","getFeatureByFieldValue","features","showTemplate","_x","_x2","_x3","_x4","handlePoint","ScreenSpaceEventHandler","canvas","pickDataSourcesFeature","event","position","pick","isObject","pickImageryLayerFeatures","pickRay","camera","getPickRay","getCenterPosition","centerResult","pickEllipsoid","Cartesian2","clientWidth","clientHeight","curPosition","Ellipsoid","WGS84","cartesianToCartographic","curLongitude","window","Math","PI","curLatitude","setViewMode","fitView","getViewExtend","params","extend","computeViewRectangle","upperLeft","lowerRight","ellipsoid","upperLeft3","lowerRight3","upperLeftCartographic","lowerRightCartographic","minx","CesiumMath","toDegrees","maxx","miny","maxy","east","north","west","south","heightToZoom","zoomToHeight","registerEventLayer","registerMapEvent","registerEvent","_feature$event","checkClickable","unclickable","viewOnly","setInputAction","lonLat","getPositionLonLat","_clickObject","cancelBubble","template","onClickTemplateAfter","featuresPromise","defined","when","sort","b","_layerIndex","ScreenSpaceEventType","LEFT_CLICK","trackedEntity","LEFT_DOUBLE_CLICK","hoverFeature","getUid","random","endPosition","labelField","tipTemplate","label","uid","hoverUid","MOUSE_MOVE","moveEnd","addEventListener","viewRectangle","cameraHeight","positionCartographic","ceil","_ref2","geoJson","geometryInfo","lng","lat","_ref2$height","rest","pitch","flyTo","offset","heading","toRadians","range","destination","Cartesian3","fromDegrees","orientation","roll","_geoJson","createFeatureCollection","box","getBBoxFromGeojson","padding","unit","Rectangle","_viewDefault$center","x","_viewDefault$center$","z","flyToBoundingSphere","BoundingSphere","HeadingPitchRange","cartesian","cartographic","Cartographic","fromCartesian","setTimeout","_viewDefault$center2","_viewDefault$center2$","setView","onMouseMove","left","nativeEvent","layerX","top","layerY","createElement","background","className","classnames","ref","onMouseOver","onMouseOut","showModal","_default","exports","propTypes","PropTypes","oneOfType","string","number","func","array","bool","mapStyle","isRequired","object","node"],"sources":["map/index.jsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport {\n Viewer,\n SceneMode,\n Cartesian3,\n Ion,\n defined,\n when,\n ScreenSpaceEventHandler,\n ScreenSpaceEventType,\n ImageryLayerFeatureInfo,\n Primitive,\n Cartesian2,\n Ellipsoid,\n Cartographic,\n Math as CesiumMath,\n Rectangle,\n BoundingSphere,\n HeadingPitchRange,\n RequestScheduler,\n Cesium3DTileFeature,\n Cesium3DTileset,\n EventHelper,\n Color\n} from 'cesium';\nimport { useUpdateEffect } from 'ahooks';\nimport HighlightLayer from '../highlight-layer/HighlightLayer';\nimport { BaseMap, Imagery } from './base';\nimport './material';\nimport getDefaultMapInfo from '../_util/getDefaultMapInfo';\nimport 'cesium/Build/Cesium/Widgets/widgets.css';\nimport classnames from 'classnames';\nimport { registerEventLayer } from '../events';\nimport Popup from './Popup';\nimport Provider from '../_util/Provider';\nimport Layers from './Layers';\nimport EventEmitter from '../_util/EventEmitter';\nimport useGetMapFeatureInfoByText from './hooks/useGetMapFeatureInfoByText';\nimport { isObject } from 'lodash';\nimport { createFeatureCollection } from '../feature-layer/createFeatureCollection';\nimport getBBoxFromGeojson from '../_util/getBBoxFromGeojson.js';\nimport { heightToZoom, zoomToHeight } from '../_util/heightAndZoom.js';\nimport {TdtLabelImageryProvider} from \"./base/imagery/tdt/TdtImageryProvider\";\nimport {IRSLabelImageryProvider} from \"./base/imagery/irs/IRSImageryProvider\";\n\nfunction Map(props) {\n const {\n width = '100%',\n height = '100%',\n dark = true,\n tk,\n children,\n onCloseTemplateBefore,\n onZoom,\n defaultPitch = -88.0,\n onEvents = {},\n baseMapUrl,\n duration = 3,\n baseMapStyle = {\n imageryProvider: 'GeoQImageryProvider',\n style: 'Blue',\n },\n autoView = true,\n highlightColor = '#f7ff01',\n hideHighlight,\n wrapDomStyle,\n mapDomStyle,\n baseMapOptions,\n viewMode = '2D',\n setLoading\n } = props;\n\n const [mapLoaded, setMapLoaded] = useState(false);\n const [tipVis, setTipVis] = useState(false);\n const [tip, setTip] = useState(null);\n\n const mapRef = useRef(null);\n const mapDomRef = useRef(null);\n const tipRef = useRef(null);\n const popupRef = useRef();\n const getMapFeatureInfoByText = useGetMapFeatureInfoByText(mapRef);\n\n useEffect(() => {\n initMap();\n\n return () => {\n setLoading?.(false)\n }\n }, []);\n\n useUpdateEffect(() => {\n if (mapRef.current) {\n mapRef.current.baseMap.setBaseMap(baseMapStyle);\n }\n }, [JSON.stringify(baseMapStyle)])\n\n const addLabelImageryProvider = () => {\n if (!baseMapStyle.hideLabel) {\n // 调用影响中文注记服务\n if (baseMapStyle.imageryProvider === 'TdtImageryProvider') {\n let cia = new TdtLabelImageryProvider({tk, ...baseMapStyle});\n mapRef.current.imageryLayers.addImageryProvider(cia); // 添加到cesium图层上\n } else if (baseMapStyle.imageryProvider === 'IRSImageryProvider') {\n let cia = new IRSLabelImageryProvider(baseMapStyle);\n mapRef.current.imageryLayers.addImageryProvider(cia); // 添加到cesium图层上\n }\n } else {\n if (mapRef.current) {\n let layers = mapRef.current.imageryLayers._layers || [];\n const ciaLayer = layers.find(item => item._imageryProvider?._layer === 'cia_w');\n if (ciaLayer) {\n mapRef.current.imageryLayers.remove(ciaLayer);\n }\n }\n }\n };\n\n const initMap = () => {\n const { center, fitViewHeight, dark, zoom, createdMap, ...options } = props;\n\n let { minZoom, maxZoom, defaultZoomLevel, longitude, latitude } = getDefaultMapInfo();\n\n // 全屏\n let viewDefault = {\n center: center ||\n (longitude && latitude && [longitude, latitude]) || [120.081627, 30.89638],\n zoom: zoom || (defaultZoomLevel && Number(defaultZoomLevel)) || 0,\n minZoom: (minZoom && Number(minZoom)) || 0,\n maxZoom: (maxZoom && Number(maxZoom)) || 20,\n };\n Ion.defaultAccessToken =\n 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJhZjc0ZDQ1ZS0wNWNhLTRhMDQtODJmYy03NTcyNDcxYzgzMDUiLCJpZCI6NzE4MTQsImlhdCI6MTYzNTQ3NzgyNX0.4TrdZWPWc9_6jLeGe90bRmBPB14XptwinSewVMu1iCE';\n\n let imageryProvider = new Imagery[baseMapStyle.imageryProvider]({\n style: baseMapStyle.style,\n url: baseMapUrl,\n crs: 'WGS84',\n dark,\n ...baseMapStyle\n });\n\n let map = new Viewer(mapDomRef.current, {\n shouldAnimate: true,\n animation: false, // 控制场景动画的播放速度控件\n baseLayerPicker: false, // 底图切换控件\n fullscreenButton: false, // 全屏控件\n geocoder: false, // 地理位置查询定位控件\n homeButton: false, // 默认相机位置控件\n timeline: false, // 时间滚动条控件\n infoBox: false, //是否显示信息框\n sceneModePicker: false, //是否显示3D/2D选择器\n selectionIndicator: false, // 点击点绿色弹出 是否显示选取指示器组件\n sceneMode: SceneMode.SCENE3D, //设定3维地图的默认场景模式: SceneMode.SCENE2D、SceneMode.SCENE3D、SceneMode.MORPHING\n navigationHelpButton: false, // 默认的相机控制提示控件\n scene3DOnly: true, // 每个几何实例仅以3D渲染以节省GPU内存\n navigationInstructionsInitiallyVisible: false,\n showRenderLoopErrors: process.env.NODE_ENV === 'development', //是否显示渲染错误\n orderIndependentTranslucency: false, //设置背景透明\n imageryProvider,\n\n ...options,\n });\n\n if (dark) {\n // 设置地球颜色\n map.scene.globe.baseColor = Color.fromCssColorString('#152937');\n }\n\n // 事件订阅\n map.eventEmitter = new EventEmitter();\n\n // 监听加载是否完成\n const helper = new EventHelper();\n helper.add(map.scene.globe.tileLoadProgressEvent, (e) => {\n setLoading?.(true);\n map.eventEmitter.emit('loading', e);\n if (e === 0) {\n setLoading?.(false)\n }\n })\n\n // 设置cesium请求调度器的最大并发数量\n RequestScheduler.maximumRequestsPerServer = 18;\n\n // 关闭请求调度器的请求节流\n RequestScheduler.throttleRequests = false;\n\n map.viewMode = viewMode;\n\n map.autoView = autoView; // 自动调整视角\n\n // 去版权信息\n map._cesiumWidget._creditContainer.style.display = 'none'; // 隐藏cesium ion\n\n mapRef.current = map;\n map.dark = dark;\n\n // 地图fit高度\n map.fitViewHeight = fitViewHeight || 5000;\n\n // 隐藏高亮效果\n map.hideHighlight = hideHighlight\n\n // 底图服务\n map.baseMap = new BaseMap({\n map,\n imageryProvider: baseMapStyle.imageryProvider,\n style: baseMapStyle.style,\n layer: imageryProvider,\n options: baseMapOptions,\n });\n\n // 添加 dataSource 和 imagery 图层\n map.layers = new Layers({ map });\n\n // 高亮图层\n map.highlightLayer = new HighlightLayer({\n map,\n color: highlightColor,\n });\n\n // 图层改变的时候\n map.layers.on('change', layers => {\n onEvents.layersChange && onEvents.layersChange(layers);\n map.eventEmitter.emit('layersChange', layers);\n });\n\n // 图层新增\n map.layers.on('add', layer => {\n onEvents.layersAdd && onEvents.layersAdd(layer);\n map.eventEmitter.emit('layersAdd', layer);\n });\n\n // 图层移除\n map.layers.on('remove', layer => {\n onEvents.layersRemove && onEvents.layersRemove(layer);\n map.eventEmitter.emit('layersRemove', layer);\n });\n\n // 图层清空\n map.layers.on('clear', () => {\n onEvents.layersClear && onEvents.layersClear();\n map.eventEmitter.emit('layersClear');\n });\n\n // 图层展示隐藏\n map.layers.on('visible', (layer, visible) => {\n map.layers.onChange(); // 触发图层改变\n\n // 图层关闭时,隐藏自身的气泡\n if (!visible && map.popupRef) {\n map.hideTemplate(layer);\n }\n\n onEvents.layersVisible && onEvents.layersVisible(layer, visible);\n map.eventEmitter.emit('layersVisible');\n });\n\n // 图层变化\n map.layersChange = () => {\n map.layers.onChange();\n };\n\n // 获取 layers 里面的 key 集合\n map.getAllKeys = () => {\n return map.layers.getAllKeys();\n };\n\n // 获取当前展示的 keys\n map.getLayersShowKeys = () => {\n return map.layers.getShowKeys();\n };\n\n // 获取当前隐藏的 keys\n map.getLayersHiddenKeys = () => {\n return map.layers.getHiddenKeys();\n };\n\n // 根据 keys 设置图层的显示,其他的隐藏\n map.setLayersShowByKeys = _keys => {\n return map.layers.setShowByKeys(_keys);\n };\n\n // 根据 keys 设置图层的隐藏,其他的显示\n map.setLayersHideByKeys = _keys => {\n return map.layers.setHideByKeys(_keys);\n };\n\n // 添加图层\n map.addLayer = (layer, index) => {\n return map.layers.addLayer(layer, index);\n };\n\n // 移除图层\n map.removeLayer = layer => {\n return map.layers.removeLayer(layer);\n };\n\n // 清除图层和entity\n map.clearLayers = () => {\n return map.layers.clearLayers();\n };\n\n // 获取 ImageLayer 图层\n map.getImageLayers = keys => {\n return map.layers.getImageLayers(keys);\n };\n\n // 获取 FeatureLayer 图层\n map.getFeatureLayers = keys => {\n return map.layers.getFeatureLayers(keys);\n };\n\n // 获取 Imagery 图层最后一个 index 值\n map.getImageryLastIndex = _index => {\n let index = 1;\n const layers = map.getImageryLayers();\n if (layers?.length) {\n if (_index && layers.findIndex(v => _index < v.zIndex) !== -1) {\n let _i = layers.findIndex(v => _index < v.zIndex) + 1;\n index = _i < index ? _i : index;\n } else {\n index = layers.length;\n }\n }\n\n return index;\n };\n\n // 查找所有dataSource和imagery图层\n map.getAllLayers = () => {\n const dataSources = map?.dataSources?._dataSources || [];\n const imageryLayers = map?.imageryLayers?._layers || [];\n const primitives = map?.scene?.primitives?._primitives || [];\n\n return [...dataSources, ...imageryLayers, ...primitives];\n };\n\n // 根据key查找imageryLayers图层\n map.getImageryLayers = _keys => {\n const layers = map?.imageryLayers?._layers || [];\n\n if (_keys && layers.length) {\n const keys = Array.isArray(_keys) ? _keys : [_keys];\n\n return layers.filter(layer => layer.key && keys.includes(layer.key));\n }\n\n return layers;\n };\n\n // 通过图形查询所属图层\n map.getLayerByFeature = entity => {\n if (!entity) return\n return map.getAllLayers().find(layer => {\n if (entity instanceof ImageryLayerFeatureInfo) {\n if (layer?.key && layer.key === entity?.imageryLayer?.key) {\n return layer;\n }\n } else if (layer instanceof Cesium3DTileset && entity instanceof Cesium3DTileFeature) {\n if (layer?.key && layer.key === entity?.primitive?.key) {\n return layer;\n }\n } else if (layer instanceof Primitive) {\n if (layer?.key && layer.key === entity?.primitive?.key) {\n return layer;\n }\n } else {\n if (layer?.key && layer.key === entity?.key) {\n return layer;\n }\n }\n });\n };\n\n // 获取 3DTiles feature 属性\n map.get3DTileFeatureProperties = (feature) => {\n let properties = {};\n if (feature && feature.getPropertyNames) {\n const propertyIds = feature.getPropertyNames() || [];\n if (propertyIds?.length) {\n const length = propertyIds.length;\n for (let i = 0; i < length; ++i) {\n const propertyId = propertyIds[i];\n properties[propertyId] = feature.getProperty(propertyId);\n }\n }\n }\n\n return properties\n }\n\n // 获取entity中数据\n map.getProperties = feature => {\n if (feature instanceof Cesium3DTileFeature) {\n return map.get3DTileFeatureProperties(feature);\n } else if (feature?.primitive?.data && feature?.primitive instanceof Primitive) {\n return feature.primitive.data.find(item => item.id === feature.id);\n } else {\n let properties =\n feature?._properties?.getValue(feature._id) || feature?.properties || {};\n properties = properties?.properties || properties;\n return properties;\n }\n\n };\n\n // 通过key查询图层\n map.getLayerByKey = key => {\n return map.getAllLayers().find(layer => {\n return key && layer.key && layer.key === key;\n });\n };\n\n // 根据id查询图层\n map.getLayerById = map.getLayerByKey;\n\n // 通过keys查询多个图层\n map.getLayerByKeys = keys => {\n return map.getAllLayers().filter(layer => {\n return layer.key && keys.includes(layer.key);\n });\n };\n map.destroyhighlightLayer = () => {\n map.highlightLayer.clearFeatures();\n };\n // 添加高亮entity\n map.addHighlightFeature = (feature, style) => {\n map.highlightLayer.addHighlightFeature(feature, style);\n };\n // 通过返回值控制是否执行关闭\n map.onCloseTemplateBefore = feature => {\n // 清除高亮\n map.destroyhighlightLayer();\n if (onCloseTemplateBefore) {\n return onCloseTemplateBefore(feature);\n }\n };\n\n // 根据key查找展示的图层\n map.getVisibleLayersByKeys = keys => {\n let layers = map.getAllLayers() || [];\n return layers.filter(layer => {\n if (typeof keys === 'string') {\n return layer.key === keys && layer.show;\n } else if (Array.isArray(keys)) {\n return keys.includes(layer.key) && layer.show;\n } else {\n return layer.show && layer.key;\n }\n });\n };\n\n // 展示提示\n map.showTip = content => {\n setTip(content);\n };\n\n // 隐藏提示\n map.hideTip = () => {\n setTip(null);\n };\n\n // 根据图层条件设置图层选中\n map.showTemplateByFilter = async (key, field, value, _highlightLayer) => {\n let layer = map.getLayerByKey(key);\n if (layer?.show) {\n let obj = layer.getFeatureByFieldValue(field, value);\n if (obj) {\n if (obj.then) {\n obj.then(features => {\n if (features?.length) {\n let feature = features[0];\n map.showTemplate(\n feature.feature,\n _highlightLayer || map.highlightLayer,\n );\n }\n });\n } else {\n map.showTemplate(obj, _highlightLayer || map.highlightLayer);\n }\n } else {\n map.hideTemplate();\n }\n }\n };\n\n // 展示看板\n map.showTemplate = feature => {\n popupRef.current.showTemplate(feature);\n };\n\n // 隐藏看板\n map.hideTemplate = () => {\n popupRef.current.hideTemplate();\n };\n\n // 鼠标事件控制器\n let handlePoint = new ScreenSpaceEventHandler(map.scene.canvas);\n\n // 获取图层上的图形信息\n map.pickDataSourcesFeature = event => {\n if (event?.position) {\n const { position } = event;\n const pick = map.scene.pick(position);\n if (isObject(pick?.id)) {\n return pick.id;\n }\n\n return pick;\n }\n };\n\n // 根据关键字获取图形信息\n map.getMapFeatureInfoByText = getMapFeatureInfoByText;\n\n // 获取wms的图形数据\n map.pickImageryLayerFeatures = event => {\n if (event?.position) {\n const { position } = event;\n const pickRay = map.camera.getPickRay(position);\n\n return map.imageryLayers.pickImageryLayerFeatures(pickRay, map.scene);\n }\n };\n\n // 获取当前地图中心的经纬度\n map.getCenterPosition = () => {\n let centerResult = map.camera.pickEllipsoid(\n new Cartesian2(map.canvas.clientWidth / 2, map.canvas.clientHeight / 2),\n );\n let curPosition = Ellipsoid.WGS84.cartesianToCartographic(centerResult);\n let curLongitude = (curPosition.longitude * 180) / window.Math.PI;\n let curLatitude = (curPosition.latitude * 180) / window.Math.PI;\n return [curLongitude, curLatitude];\n };\n\n // 二三维切换\n map.setViewMode = type => {\n map.viewMode = type;\n map.fitView();\n };\n\n // 获取当前地图视图的边界\n map.getViewExtend = () => {\n let params = {};\n let extend = map.camera.computeViewRectangle();\n if (typeof extend === 'undefined') {\n //2D下会可能拾取不到坐标,extend返回undefined,因此作如下转换\n let canvas = map.scene.canvas;\n let upperLeft = new Cartesian2(0, 0); //canvas左上角坐标转2d坐标\n let lowerRight = new Cartesian2(canvas.clientWidth, canvas.clientHeight); //canvas右下角坐标转2d坐标\n\n let ellipsoid = map.scene.globe.ellipsoid;\n let upperLeft3 = map.camera.pickEllipsoid(upperLeft, ellipsoid); //2D转3D世界坐标\n\n let lowerRight3 = map.camera.pickEllipsoid(lowerRight, ellipsoid); //2D转3D世界坐标\n\n let upperLeftCartographic = map.scene.globe.ellipsoid.cartesianToCartographic(\n upperLeft3,\n ); //3D世界坐标转弧度\n let lowerRightCartographic = map.scene.globe.ellipsoid.cartesianToCartographic(\n lowerRight3,\n ); //3D世界坐标转弧度\n\n let minx = CesiumMath.toDegrees(upperLeftCartographic.longitude); //弧度转经纬度\n let maxx = CesiumMath.toDegrees(lowerRightCartographic.longitude); //弧度转经纬度\n\n let miny = CesiumMath.toDegrees(lowerRightCartographic.latitude); //弧度转经纬度\n let maxy = CesiumMath.toDegrees(upperLeftCartographic.latitude); //弧度转经纬度\n\n params.minx = minx;\n params.maxx = maxx;\n params.miny = miny;\n params.maxy = maxy;\n } else {\n //3D获取方式\n params.maxx = CesiumMath.toDegrees(extend.east);\n params.maxy = CesiumMath.toDegrees(extend.north);\n\n params.minx = CesiumMath.toDegrees(extend.west);\n params.miny = CesiumMath.toDegrees(extend.south);\n }\n\n // 返回屏幕所在经纬度范围\n return params;\n };\n\n // 根据camera高度近似计算当前层级\n map.heightToZoom = heightToZoom;\n\n // 根据当前层级近似计算camera高度\n map.zoomToHeight = zoomToHeight;\n\n // 注册事件\n registerEventLayer(map, props);\n\n // 注册地图组件事件\n function registerMapEvent(e, event) {\n if (map[event]) {\n map[event](e);\n onEvents[event] && onEvents[event](e);\n }\n }\n\n // 注册图层组件事件\n function registerEvent(feature, event) {\n if (feature) {\n let layer = map.getLayerByFeature(feature);\n if (layer?.[event] || feature[event]) {\n let properties = map.getProperties(feature) || {};\n if (feature instanceof ImageryLayerFeatureInfo && feature?.data) {\n properties = {\n ...properties,\n data: feature?.data,\n };\n }\n\n // 触发自身事件\n feature[event]?.(properties);\n\n if (layer?.[event]) {\n layer[event](properties);\n }\n }\n }\n }\n\n // 监测图层是否允许点击\n function checkClickable(feature) {\n let layer = map.getLayerByFeature(feature);\n let unclickable = false;\n // 无法单独设置group内的图层\n // 暂时为了取消行政区划影像图层的点击效果\n if (layer) {\n unclickable = layer.viewOnly || layer.unclickable;\n }\n return unclickable;\n }\n\n // 点击事件\n handlePoint.setInputAction(event => {\n event.lonLat = map.getPositionLonLat(event);\n map._clickObject = event;\n registerMapEvent(event, 'onClick');\n map.hideTip();\n\n // 是否禁止冒泡\n if (!map.cancelBubble) {\n const pick = map.scene.pick(event.position);\n if (pick instanceof Cesium3DTileFeature) {\n let layer = map.getLayerByFeature(pick);\n if (layer) {\n if (layer.unclickable) {\n return\n }\n\n registerEvent(pick, 'onClick');\n\n if (layer.template) {\n map.onClickTemplateAfter && map.onClickTemplateAfter(pick);\n\n map.showTemplate(pick);\n }\n }\n } else {\n const entity = map.pickDataSourcesFeature(event);\n const featuresPromise = map.pickImageryLayerFeatures(event);\n if (entity) {\n\n registerEvent(entity, 'onClick');\n\n let layer = map.getLayerByFeature(entity);\n if (Array.isArray(entity) || (layer && layer.template)) {\n map.onClickTemplateAfter && map.onClickTemplateAfter(entity);\n map.showTemplate(entity);\n }\n\n } else if (defined(featuresPromise)) {\n when(featuresPromise, features => {\n features.sort((a, b) => {\n return b.imageryLayer._layerIndex - a.imageryLayer._layerIndex;\n });\n\n const feature = features?.[0];\n if (checkClickable(feature)) {\n return;\n }\n registerEvent(feature, 'onClick');\n map.showTemplate(feature);\n });\n }\n }\n }\n }, ScreenSpaceEventType.LEFT_CLICK);\n\n // 双击事件\n handlePoint.setInputAction(event => {\n map.trackedEntity = undefined; // 取消双击锁定\n\n event.lonLat = map.getPositionLonLat(event);\n\n registerMapEvent(event, 'onDoubleClick');\n\n const feature = map.pickDataSourcesFeature(event);\n\n registerEvent(feature, 'onDoubleClick');\n }, ScreenSpaceEventType.LEFT_DOUBLE_CLICK);\n\n // 鼠标移动\n let hoverFeature;\n const getUid = feature => {\n if (feature && !feature._id) {\n feature._id = window.Math.random();\n }\n\n return feature._id;\n };\n\n // 鼠标移入移出\n handlePoint.setInputAction(event => {\n event.lonLat = map.getPositionLonLat({ position: event.endPosition });\n\n registerMapEvent(event, 'onMouseMove');\n const feature = map.pickDataSourcesFeature({ position: event.endPosition });\n\n if (feature) {\n let layer = map.getLayerByFeature(feature);\n if (layer && (layer.labelField || layer.tipTemplate)) {\n const {labelField, tipTemplate} = layer;\n const properties = map.getProperties(feature);\n\n let label;\n if (tipTemplate) {\n label = tipTemplate(properties);\n } else {\n label = properties ? properties[labelField] : '';\n }\n\n if (label) {\n map.showTip(label);\n } else {\n map.hideTip();\n }\n } else {\n map.hideTip();\n }\n\n registerEvent(feature, 'onMouseMove');\n\n // 判断是否在图形内移动\n if (hoverFeature) {\n let uid = getUid(feature);\n let hoverUid = getUid(hoverFeature);\n\n // 判断是否进入新的图形\n if (uid !== hoverUid) {\n registerEvent(hoverFeature, 'onMouseLeave');\n\n registerEvent(feature, 'onMouseEnter');\n hoverFeature = feature;\n }\n } else {\n registerEvent(feature, 'onMouseEnter');\n hoverFeature = feature;\n }\n\n registerEvent(feature, 'onMouseMove');\n } else {\n if (hoverFeature) {\n registerEvent(hoverFeature, 'onMouseLeave');\n }\n\n hoverFeature = null;\n map.hideTip();\n }\n }, ScreenSpaceEventType.MOUSE_MOVE);\n\n // 层级事件\n if (onZoom) {\n map.camera.moveEnd.addEventListener(() => {\n let viewRectangle = map.camera.computeViewRectangle();\n const west = (viewRectangle.west / window.Math.PI) * 180; // 左上方(西)\n const north = (viewRectangle.north / window.Math.PI) * 180; //右上方(北)\n const east = (viewRectangle.east / window.Math.PI) * 180; // 右下方(东)\n const south = (viewRectangle.south / window.Math.PI) * 180; // 左下方(南)\n const cameraHeight = map.camera.positionCartographic.height;\n const zoom = map.heightToZoom(window.Math.ceil(height));\n onZoom && onZoom({ west, north, east, south, cameraHeight, viewRectangle, zoom });\n });\n }\n\n // 动态调整视角,不传参数为默认视角,参数可以是图层、图形、数据等\n map.fitView = e => {\n const {\n geoJson,\n geometryInfo,\n data,\n entity,\n lng,\n lat,\n height = 50000,\n options,\n ...rest\n } = e || {};\n let pitch = map.camera.pitch;\n\n // 判断是否点击了图形\n if (entity) {\n if (map.viewMode === '3D') {\n map.flyTo(entity, { duration: 2 });\n } else {\n map.flyTo(entity, {\n duration: 2,\n offset: {\n heading: CesiumMath.toRadians(0.0),\n pitch,\n range: height,\n },\n });\n }\n } else if (lng && lat) {\n map.camera.flyTo({\n destination: new Cartesian3.fromDegrees(Number(lng), Number(lat), height),\n orientation: {\n pitch: CesiumMath.toRadians(-88.0),\n roll: 0.0,\n },\n duration: 2,\n ...rest,\n });\n } else if (data || geometryInfo || geoJson) {\n let _geoJson = geoJson;\n\n if (geometryInfo) {\n _geoJson = createFeatureCollection([{ geometryInfo }]);\n }\n\n if (data) {\n _geoJson = createFeatureCollection(Array.isArray(data) ? data : [data]);\n }\n\n let box = getBBoxFromGeojson(_geoJson, {\n padding: 100,\n unit: 'px', // px | m\n ...options,\n }); // 单位为米\n\n map.camera.flyTo({\n destination: new Rectangle.fromDegrees(...box), //west, south, east, north,\n orientation: {\n pitch:\n map.viewMode === '3D'\n ? CesiumMath.toRadians(-35)\n : CesiumMath.toRadians(defaultPitch),\n roll: 0.0,\n },\n duration: 2,\n ...rest,\n });\n } else {\n let [x, y, z = 80000.0] = viewDefault.center;\n\n if (map.viewMode === '3D') {\n const center = Cartesian3.fromDegrees(x, y);\n const heading = CesiumMath.toRadians(0.0);\n const pitch = CesiumMath.toRadians(-35.0);\n map.camera.flyToBoundingSphere(new BoundingSphere(center, z), {\n offset: new HeadingPitchRange(heading, pitch, z),\n duration: 2,\n });\n } else {\n map.camera.flyTo({\n destination: new Cartesian3.fromDegrees(x, y, z),\n orientation: {\n pitch: CesiumMath.toRadians(defaultPitch),\n roll: 0.0,\n },\n duration: 2,\n });\n }\n }\n };\n\n map.getPositionLonLat = event => {\n const cartesian = map.camera.pickEllipsoid(event.position, map.scene.globe.ellipsoid); // Cartesian3对象\n if (cartesian) {\n const cartographic = Cartographic.fromCartesian(cartesian); // 经纬高对象\n const lng = CesiumMath.toDegrees(cartographic.longitude);\n const lat = CesiumMath.toDegrees(cartographic.latitude);\n return [lng, lat];\n }\n\n return [];\n };\n\n if (duration) {\n // 自动调整视角\n map.fitView();\n\n // 延时触发回调事件\n setTimeout(() => {\n createdMap && createdMap(map);\n\n addLabelImageryProvider();\n\n onEvents.createdMap && onEvents.createdMap(map);\n\n setMapLoaded(true);\n }, (duration + 0.5) * 1000);\n } else {\n const [x, y, z = 80000.0] = viewDefault.center;\n if (map.viewMode === '3D') {\n const center = Cartesian3.fromDegrees(x, y);\n const heading = CesiumMath.toRadians(0.0);\n const pitch = CesiumMath.toRadians(-35.0);\n map.camera.flyToBoundingSphere(new BoundingSphere(center, z), {\n offset: new HeadingPitchRange(heading, pitch, z),\n duration: 0,\n });\n } else {\n map.camera.setView({\n destination: new Cartesian3.fromDegrees(x, y, z),\n });\n }\n\n\n // 延时触发回调事件\n setTimeout(() => {\n createdMap && createdMap(map);\n\n addLabelImageryProvider();\n\n onEvents.createdMap && onEvents.createdMap(map);\n\n setMapLoaded(true);\n }, 500);\n }\n };\n\n const onMouseMove = event => {\n if (tip && tipRef.current) {\n tipRef.current.style.left = `${event.nativeEvent.layerX + 15}px`;\n tipRef.current.style.top = `${event.nativeEvent.layerY + 15}px`;\n }\n };\n\n return (\n <div\n style={{ width, height, background: dark ? '#152937' : '#cccccc', ...wrapDomStyle }}\n className={classnames('cs-map-container')}\n >\n <div\n ref={mapDomRef}\n className={classnames('cs-map')}\n onMouseMove={onMouseMove}\n onMouseOver={() => setTipVis(true)}\n onMouseOut={() => setTipVis(false)}\n style={mapDomStyle}\n >\n {tip && tipVis && (\n <div ref={tipRef} className={classnames('custom-tip')}>\n {tip}\n </div>\n )}\n </div>\n\n {mapLoaded && (\n <Provider\n value={{\n map: mapRef.current,\n showModal: props.showModal,\n }}\n >\n {children}\n {mapRef.current && <Popup ref={popupRef} map={mapRef.current} />}\n </Provider>\n )}\n </div>\n );\n}\n\nexport default Map;\n\nMap.propTypes = {\n width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n createdMap: PropTypes.func,\n onCloseTemplateBefore: PropTypes.func,\n onZoom: PropTypes.func,\n center: PropTypes.array,\n zoom: PropTypes.number,\n minZoom: PropTypes.number,\n maxZoom: PropTypes.number,\n defaultPitch: PropTypes.number,\n dark: PropTypes.bool,\n mapStyle: PropTypes.oneOfType(['vec', 'img']),\n tk: PropTypes.string.isRequired,\n onEvents: PropTypes.object,\n baseMapUrl: PropTypes.string,\n duration: PropTypes.number,\n baseMapStyle: PropTypes.object,\n children: PropTypes.node,\n autoView: PropTypes.bool,\n highlightColor: PropTypes.string,\n viewMode: PropTypes.string,\n showModal: PropTypes.func,\n wrapDomStyle: PropTypes.object,\n mapDomStyle: PropTypes.object,\n baseMapOptions: PropTypes.object,\n setLoading: PropTypes.func,\n fitViewHeight: PropTypes.number,\n hideHighlight: PropTypes.bool,\n};\n"],"mappings":"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","ignoreList":[]}