@vtx/cs-map 1.0.93 → 1.0.94
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/getToken.js +2 -2
- package/lib/_util/getToken.js.map +1 -1
- package/lib/_util/parabola.js +64 -0
- package/lib/_util/parabola.js.map +1 -0
- package/lib/assets/img_1.png +0 -0
- package/lib/building-tiles-layer/BuildingTilesLayer.js +2 -2
- package/lib/building-tiles-layer/BuildingTilesLayer.js.map +1 -1
- package/lib/cesium-tiles-layer/CesiumTilesLayer.js +2 -2
- package/lib/cesium-tiles-layer/CesiumTilesLayer.js.map +1 -1
- package/lib/circle/Circle.js +2 -2
- package/lib/circle/Circle.js.map +1 -1
- package/lib/circle/index.js +12 -3
- package/lib/circle/index.js.map +1 -1
- package/lib/dom/index.js +2 -2
- package/lib/dom/index.js.map +1 -1
- package/lib/feature-layer/FeatureLayer.js +2 -2
- package/lib/feature-layer/FeatureLayer.js.map +1 -1
- package/lib/feature-layer/index.js +2 -2
- package/lib/feature-layer/index.js.map +1 -1
- package/lib/flight-line-layer/FlightLineLayer.js +199 -0
- package/lib/flight-line-layer/FlightLineLayer.js.map +1 -0
- package/lib/flight-line-layer/index.js +85 -0
- package/lib/flight-line-layer/index.js.map +1 -0
- package/lib/flight-line-layer/style/css.js +4 -0
- package/lib/flight-line-layer/style/css.js.map +1 -0
- package/lib/flight-line-layer/style/index.css +0 -0
- package/lib/flight-line-layer/style/index.js +4 -0
- package/lib/flight-line-layer/style/index.js.map +1 -0
- package/lib/flight-line-layer/style/index.less +0 -0
- package/lib/fly-line-layer/FlyLineLayer.js +2 -64
- package/lib/fly-line-layer/FlyLineLayer.js.map +1 -1
- package/lib/highlight-layer/HighlightLayer.js +2 -2
- package/lib/highlight-layer/HighlightLayer.js.map +1 -1
- package/lib/image-wms-layer/ImageWmsLayer.js +2 -2
- package/lib/image-wms-layer/ImageWmsLayer.js.map +1 -1
- package/lib/image-wms-layer/index.js +2 -2
- package/lib/image-wms-layer/index.js.map +1 -1
- package/lib/index.js +14 -0
- package/lib/index.js.map +1 -1
- package/lib/label/Label.js +2 -2
- package/lib/label/Label.js.map +1 -1
- package/lib/legend/index.js +2 -2
- package/lib/legend/index.js.map +1 -1
- package/lib/map/base/index.js +2 -2
- package/lib/map/base/index.js.map +1 -1
- package/lib/map/index.js +2 -2
- package/lib/map/index.js.map +1 -1
- package/lib/map/material/CircleRippleMaterialProperty.js +1 -1
- package/lib/map/material/CircleRippleMaterialProperty.js.map +1 -1
- package/lib/marker/Marker.js +2 -2
- package/lib/marker/Marker.js.map +1 -1
- package/lib/model/Model.js +18 -7
- package/lib/model/Model.js.map +1 -1
- package/lib/model/index.js +12 -4
- package/lib/model/index.js.map +1 -1
- package/lib/point/Point.js +2 -2
- package/lib/point/Point.js.map +1 -1
- package/lib/polygon/Polygon.js +2 -2
- package/lib/polygon/Polygon.js.map +1 -1
- package/lib/polyline/Polyline.js +2 -2
- package/lib/polyline/Polyline.js.map +1 -1
- package/lib/renderer/index.js +2 -2
- package/lib/renderer/index.js.map +1 -1
- package/lib/split-screen/index.js +2 -2
- package/lib/split-screen/index.js.map +1 -1
- package/lib/three-line-layer/ThreeLineLayer.js +127 -0
- package/lib/three-line-layer/ThreeLineLayer.js.map +1 -0
- package/lib/three-line-layer/index.js +85 -0
- package/lib/three-line-layer/index.js.map +1 -0
- package/lib/three-line-layer/style/css.js +4 -0
- package/lib/three-line-layer/style/css.js.map +1 -0
- package/lib/three-line-layer/style/index.css +0 -0
- package/lib/three-line-layer/style/index.js +4 -0
- package/lib/three-line-layer/style/index.js.map +1 -0
- package/lib/three-line-layer/style/index.less +0 -0
- package/lib/tools/layer-control/index.js +2 -2
- package/lib/tools/layer-control/index.js.map +1 -1
- package/lib/tools/map-search/Select/index.js +2 -2
- package/lib/tools/map-search/Select/index.js.map +1 -1
- package/lib/tools/map-search/index.js +2 -2
- package/lib/tools/map-search/index.js.map +1 -1
- package/lib/tools/tool-box/Measure/index.js +2 -2
- package/lib/tools/tool-box/Measure/index.js.map +1 -1
- package/lib/water-surface-layer/WaterSurfaceLayer.js +2 -2
- package/lib/water-surface-layer/WaterSurfaceLayer.js.map +1 -1
- package/package.json +2 -2
package/lib/map/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
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","e","__esModule","_getRequireWildcardCache","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","setPrototypeOf","Boolean","valueOf","_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","_asyncToGenerator","_next","_throw","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","Array","from","isArray","_arrayLikeToArray","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","ownKeys","filter","_objectSpread","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","_toPrimitive","toPrimitive","String","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","toString","test","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","baseColor","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","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","key","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","obj","_callee$","_context","getFeatureByFieldValue","features","showTemplate","_x","_x2","_x3","_x4","handleEvent","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","handleFeatures","sort","b","_layerIndex","when","ScreenSpaceEventType","LEFT_CLICK","trackedEntity","undefined","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 VERSION\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 baseColor,\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 // 设置地球暗色\n if (dark) {\n map.scene.globe.baseColor = Color.fromCssColorString('#152937');\n }\n\n // 设置地球颜色\n if (baseColor) {\n map.scene.globe.baseColor = Color.fromCssColorString(baseColor);\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 handleEvent = 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 handleEvent.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 // 兼容1.98.0版本\n const handleFeatures = (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 // 针对低于 1.90.0 版本\n if (when) {\n when(featuresPromise, handleFeatures)\n } else {\n featuresPromise.then(handleFeatures);\n }\n }\n }\n }\n }, ScreenSpaceEventType.LEFT_CLICK);\n\n // 双击事件\n handleEvent.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 handleEvent.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(cameraHeight));\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, handleEvent);\n\n addLabelImageryProvider();\n\n onEvents.createdMap && onEvents.createdMap(map, handleEvent);\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, handleEvent);\n\n addLabelImageryProvider();\n\n onEvents.createdMap && onEvents.createdMap(map, handleEvent);\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: (baseColor || 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 baseColor: PropTypes.string,\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":[]}
|
|
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","e","__esModule","_getRequireWildcardCache","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","setPrototypeOf","Boolean","valueOf","_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","_asyncToGenerator","_next","_throw","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","Array","from","isArray","_arrayLikeToArray","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","includes","propertyIsEnumerable","ownKeys","filter","_objectSpread","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","_toPrimitive","toPrimitive","String","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","toString","test","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","baseColor","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","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","key","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","obj","_callee$","_context","getFeatureByFieldValue","features","showTemplate","_x","_x2","_x3","_x4","handleEvent","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","handleFeatures","sort","b","_layerIndex","when","ScreenSpaceEventType","LEFT_CLICK","trackedEntity","undefined","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 baseColor,\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 // 设置地球暗色\n if (dark) {\n map.scene.globe.baseColor = Color.fromCssColorString('#152937');\n }\n\n // 设置地球颜色\n if (baseColor) {\n map.scene.globe.baseColor = Color.fromCssColorString(baseColor);\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 handleEvent = 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 handleEvent.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 // 兼容1.98.0版本\n const handleFeatures = (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 // 针对低于 1.90.0 版本\n if (when) {\n when(featuresPromise, handleFeatures)\n } else {\n featuresPromise.then(handleFeatures);\n }\n }\n }\n }\n }, ScreenSpaceEventType.LEFT_CLICK);\n\n // 双击事件\n handleEvent.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 handleEvent.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(cameraHeight));\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, handleEvent);\n\n addLabelImageryProvider();\n\n onEvents.createdMap && onEvents.createdMap(map, handleEvent);\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, handleEvent);\n\n addLabelImageryProvider();\n\n onEvents.createdMap && onEvents.createdMap(map, handleEvent);\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: (baseColor || 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 baseColor: PropTypes.string,\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":[]}
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports["default"] = void 0;
|
|
7
7
|
var _cesium = require("cesium");
|
|
8
|
-
var CircleRippleMaterialSource = "\
|
|
8
|
+
var CircleRippleMaterialSource = "\nuniform vec4 color;\nuniform float speed;\nuniform float count;\nuniform float gradient;\nczm_material czm_getMaterial(czm_materialInput materialInput)\n{\nczm_material material = czm_getDefaultMaterial(materialInput);\nmaterial.diffuse = 1.5 * color.rgb;\nvec2 st = materialInput.st;\nfloat dis = distance(st, vec2(0.5, 0.5));\nfloat per = fract(czm_frameNumber * speed / 1000.0);\nif(count == 1.0){\n if(dis > per * 0.5){\n discard;\n }else {\n material.alpha = color.a * dis / per / 2.0;\n }\n} else {\n vec3 str = materialInput.str;\n if(abs(str.z) > 0.001){\n discard;\n }\n if(dis > 0.5){\n discard;\n } else {\n float perDis = 0.5 / count;\n float disNum;\n float bl = 0.0;\n for(int i = 0; i <= 999; i++){\n if(float(i) <= count){\n disNum = perDis * float(i) - dis + per / count;\n if(disNum > 0.0){\n if(disNum < perDis){\n bl = 1.0 - disNum / perDis;\n }\n else if(disNum - perDis < perDis){\n bl = 1.0 - abs(1.0 - disNum / perDis);\n }\n material.alpha = pow(bl,(1.0 + 10.0 * (1.0 - gradient)));\n }\n }\n }\n }\n}\nreturn material;\n}";
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
11
|
* 圆形扫描以及圆形扩散的类对象
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CircleRippleMaterialProperty.js","names":["_cesium","require","CircleRippleMaterialSource","CircleRippleMaterialProperty","options","_definitionChanged","Event","_color","color","_speed","speed","count","gradient","Material","CircleRippleMaterialType","_materialCache","addMaterial","fabric","type","uniforms","Color","scale","source","translucent","material","Object","defineProperties","prototype","isConstant","get","definitionChanged","createPropertyDescriptor","getType","time","getValue","result","defined","Property","getValueOrDefault","RED","equals","other","_default","exports"],"sources":["map/material/CircleRippleMaterialProperty.js"],"sourcesContent":["import { Event, Material, Color, createPropertyDescriptor, defined, Property } from 'cesium';\n\nconst CircleRippleMaterialSource = `\
|
|
1
|
+
{"version":3,"file":"CircleRippleMaterialProperty.js","names":["_cesium","require","CircleRippleMaterialSource","CircleRippleMaterialProperty","options","_definitionChanged","Event","_color","color","_speed","speed","count","gradient","Material","CircleRippleMaterialType","_materialCache","addMaterial","fabric","type","uniforms","Color","scale","source","translucent","material","Object","defineProperties","prototype","isConstant","get","definitionChanged","createPropertyDescriptor","getType","time","getValue","result","defined","Property","getValueOrDefault","RED","equals","other","_default","exports"],"sources":["map/material/CircleRippleMaterialProperty.js"],"sourcesContent":["import { Event, Material, Color, createPropertyDescriptor, defined, Property } from 'cesium';\n\nconst CircleRippleMaterialSource = `\nuniform vec4 color;\nuniform float speed;\nuniform float count;\nuniform float gradient;\nczm_material czm_getMaterial(czm_materialInput materialInput)\n{\nczm_material material = czm_getDefaultMaterial(materialInput);\nmaterial.diffuse = 1.5 * color.rgb;\nvec2 st = materialInput.st;\nfloat dis = distance(st, vec2(0.5, 0.5));\nfloat per = fract(czm_frameNumber * speed / 1000.0);\nif(count == 1.0){\n if(dis > per * 0.5){\n discard;\n }else {\n material.alpha = color.a * dis / per / 2.0;\n }\n} else {\n vec3 str = materialInput.str;\n if(abs(str.z) > 0.001){\n discard;\n }\n if(dis > 0.5){\n discard;\n } else {\n float perDis = 0.5 / count;\n float disNum;\n float bl = 0.0;\n for(int i = 0; i <= 999; i++){\n if(float(i) <= count){\n disNum = perDis * float(i) - dis + per / count;\n if(disNum > 0.0){\n if(disNum < perDis){\n bl = 1.0 - disNum / perDis;\n }\n else if(disNum - perDis < perDis){\n bl = 1.0 - abs(1.0 - disNum / perDis);\n }\n material.alpha = pow(bl,(1.0 + 10.0 * (1.0 - gradient)));\n }\n }\n }\n }\n}\nreturn material;\n}`;\n\n/**\n * 圆形扫描以及圆形扩散的类对象\n * @alias EV_CircleScan\n * @constructor\n * @param {Viewer} viewer 视图对象\n */\n\nfunction CircleRippleMaterialProperty(options) {\n this._definitionChanged = new Event();\n this._color = options.color;\n this._speed = options.speed;\n this.color = options.color;\n this.speed = options.speed;\n this.count = options.count;\n this.gradient = options.gradient;\n // Cesium.CircleRippleMaterialProperty = CircleRippleMaterialProperty;\n Material.CircleRippleMaterialProperty = 'CircleRippleMaterialProperty';\n Material.CircleRippleMaterialType = 'CircleRippleMaterialType';\n Material.CircleRippleMaterialSource = CircleRippleMaterialSource;\n // if (defined(customMaterial)) {\n // if (defined(customMaterial.FShader)) {\n // Material.PolylineTrailLinkSource = customMaterial.FShader;\n // }\n // if (defined(customMaterial.ColorImage)) {\n // Material.PolylineTrailLinkImage = customMaterial.ColorImage;\n // }\n // }\n Material._materialCache.addMaterial(Material.CircleRippleMaterialType, {\n fabric: {\n type: Material.CircleRippleMaterialType,\n uniforms: {\n color: new Color(1.0, 1.0, 0.0, 1.0),\n speed: 3.0,\n count: 4,\n gradient: 0.2,\n scale: 1.0, // 设置固定的缩放因子\n },\n source: Material.CircleRippleMaterialSource,\n },\n translucent: function(material) {\n return true;\n },\n });\n}\n\nObject.defineProperties(CircleRippleMaterialProperty.prototype, {\n isConstant: {\n get: function() {\n return false;\n },\n },\n definitionChanged: {\n get: function() {\n return this._definitionChanged;\n },\n },\n color: createPropertyDescriptor('color'),\n speed: createPropertyDescriptor('speed'),\n count: createPropertyDescriptor('count'),\n gradient: createPropertyDescriptor('gradient'),\n});\n\nCircleRippleMaterialProperty.prototype.getType = function(time) {\n return Material.CircleRippleMaterialType;\n};\n\nCircleRippleMaterialProperty.prototype.getValue = function(time, result) {\n if (!defined(result)) {\n result = {};\n }\n result.color = Property.getValueOrDefault(this._color, time, Color.RED, result.color);\n result.speed = Property.getValueOrDefault(this._speed, time, 10, result.speed);\n\n result.count = this.count;\n result.gradient = this.gradient;\n return result;\n};\n\nCircleRippleMaterialProperty.prototype.equals = function(other) {\n return (\n this === other ||\n (other instanceof CircleRippleMaterialProperty &&\n Property.equals(this._color, other._color) &&\n Property.equals(this._speed, other._speed) &&\n Property.equals(this.count, other.count) &&\n Property.equals(this.gradient, other.gradient))\n );\n};\n\nexport default CircleRippleMaterialProperty;\n"],"mappings":"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","ignoreList":[]}
|
package/lib/marker/Marker.js
CHANGED
|
@@ -19,8 +19,8 @@ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length)
|
|
|
19
19
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
20
20
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
21
21
|
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
22
|
-
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var
|
|
23
|
-
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.
|
|
22
|
+
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
|
|
23
|
+
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } return t; }
|
|
24
24
|
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
|
|
25
25
|
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
|
|
26
26
|
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
|