@vtx/cs-map 1.0.25 → 1.0.26

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.
@@ -1 +1 @@
1
- {"version":3,"file":"Popup.js","names":["_react","_interopRequireWildcard","require","_cesium","_icons","_InfoTool","_interopRequireDefault","_classnames","_turf","_Polygon","_Polyline","_createFeatureCollection","_HighlightLayer","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","r","l","t","Symbol","iterator","e","n","u","a","f","o","next","done","push","value","length","Array","isArray","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","minLen","_arrayLikeToArray","toString","slice","constructor","name","from","test","iter","len","arr2","handelGeometry","entity","_entity$data","_midpoint","geometry","data","type","coordinates","midpoint","position","offset","x","y","includes","point1","point2","point","lngLatArr","Midpoint","polygon","Polygon","centerOfMass","Cartesian3","fromDegrees","apply","geometryType","_offset","exports","Popup","forwardRef","props","ref","map","_useState","useState","_useState2","content","setContent","_useState3","_useState4","title","setTitle","popupRef","useRef","featureRef","infoToolRef","InfoTool","highlightLayer","useEffect","current","HighlightLayer","destroy","useImperativeHandle","showTemplate","hideTemplate","feature","_feature$_position","layer","getLayerByFeature","template","properties","getProperties","values_","labelField","_position","_value","height","PolygonGeo","_feature$_polygon","_polygon","_hierarchy","positions","v","cartographic","Cartographic","fromCartesian","lng","CesiumMath","toDegrees","longitude","lat","latitude","_handelGeometry","PolylineGeo","_feature$_polyline","_polyline","_positions","_handelGeometry2","primitive","_midpoint$geometry","transformGeometry","geometryInfo","_geometry$coordinates","ImageryLayerFeatureInfo","_handelGeometry3","add","element","inputFeature","addHighlightFeature","fitView","_layer","getLayerByKey","_highlightLayer","onClose","judgeAbnormal","_ref","status","_infoToolRef$current","onCloseTemplateBefore","remove","entities","getById","clearFeatures","createElement","className","classnames","CloseOutlined","width","onClick","id","_default"],"sources":["map/Popup.jsx"],"sourcesContent":["import React, { useRef, useState, useImperativeHandle, forwardRef, useEffect } from 'react';\nimport { ImageryLayerFeatureInfo, Cartesian3, Cartographic, Math as CesiumMath } from 'cesium';\nimport { CloseOutlined } from '@ant-design/icons';\nimport InfoTool from './InfoTool';\nimport classnames from 'classnames';\nimport { point, midpoint as Midpoint, polygon as Polygon, centerOfMass } from '@turf/turf';\nimport PolygonGeo from '../polygon/Polygon';\nimport PolylineGeo from '../polyline/Polyline';\nimport { transformGeometry } from '../feature-layer/createFeatureCollection';\nimport HighlightLayer from '../highlight-layer/HighlightLayer';\n\nexport const handelGeometry = entity => {\n let geometry = entity?.data?.geometry;\n let type = geometry?.type;\n let coordinates = geometry?.coordinates;\n\n let midpoint = entity?.data; // 默认点\n let position = null;\n let offset = {\n x: 0,\n y: 20,\n };\n\n if (['MultiLineString', 'LineString'].includes(type) && coordinates?.length) {\n let point1 = null;\n let point2 = null;\n // 线\n if (coordinates.length > 1) {\n point1 = point(coordinates[0]);\n point2 = point(coordinates[1]);\n } else {\n let lngLatArr = coordinates[0];\n point1 = point(lngLatArr[0]);\n point2 = point(lngLatArr[1]);\n }\n midpoint = Midpoint(point1, point2);\n } else if (['Polygon', 'MultiPolygon'].includes(type)) {\n // 面\n // 注意:polygon首尾坐标要一致\n let polygon = Polygon(coordinates);\n midpoint = centerOfMass(polygon);\n } else if (['Point'].includes(type)) {\n offset = {\n x: 5,\n y: 20,\n };\n }\n if (midpoint?.geometry?.coordinates) {\n position = Cartesian3.fromDegrees(...midpoint.geometry.coordinates);\n }\n\n return {\n position,\n geometryType: type,\n _offset: offset,\n };\n};\n\nconst Popup = forwardRef((props, ref) => {\n const { map } = props;\n\n const [content, setContent] = useState(null);\n const [title, setTitle] = useState(null);\n const popupRef = useRef();\n\n const featureRef = useRef();\n const infoToolRef = useRef(new InfoTool({ map }));\n const highlightLayer = useRef();\n\n useEffect(() => {\n highlightLayer.current = new HighlightLayer({ map });\n map.highlightLayer = highlightLayer.current;\n\n return () => {\n highlightLayer.current.destroy();\n map.highlightLayer = null;\n };\n }, []);\n\n useImperativeHandle(ref, () => {\n return {\n showTemplate,\n hideTemplate,\n };\n });\n\n const showTemplate = feature => {\n let layer = map.getLayerByFeature(feature);\n if (!layer?.template) {\n return;\n }\n\n let properties = map.getProperties(feature);\n feature.values_ = properties;\n featureRef.current = feature;\n if (layer) {\n let template = layer.template;\n let labelField = layer.labelField;\n\n setTitle(labelField && properties[labelField]);\n setContent(feature && template(feature));\n }\n\n\n let position = feature?._position?._value;\n // 偏移量\n let offset = {\n x: 5,\n y: 76,\n };\n\n let height = 1000;\n if (feature instanceof PolygonGeo) {\n let coordinates = [(feature?._polygon?._hierarchy?._value?.positions || []).map(v => {\n const cartographic = Cartographic.fromCartesian(v); // 经纬高对象\n const lng = CesiumMath.toDegrees(cartographic.longitude);\n const lat = CesiumMath.toDegrees(cartographic.latitude);\n return [lng, lat]\n })];\n let { position: _position, _offset } = handelGeometry({data: {geometry: {type: 'Polygon', coordinates}}});\n position = _position;\n offset = _offset;\n height = null;\n } else if (feature instanceof PolylineGeo) {\n let coordinates = (feature?._polyline?._positions?._value || []).map(v => {\n const cartographic = Cartographic.fromCartesian(v); // 经纬高对象\n const lng = CesiumMath.toDegrees(cartographic.longitude);\n const lat = CesiumMath.toDegrees(cartographic.latitude);\n return [lng, lat]\n });\n let { position: _position, _offset } = handelGeometry({data: {geometry: {type: 'LineString', coordinates}}});\n position = _position;\n offset = _offset;\n height = null;\n }\n\n\n if (feature.primitive) {\n offset = {\n x: 0,\n y: 20,\n };\n const geometry = transformGeometry(properties.geometryInfo);\n const [point1, point2] = geometry.coordinates[0];\n const midpoint = Midpoint(point1, point2);\n if (midpoint?.geometry?.coordinates) {\n position = Cartesian3.fromDegrees(...midpoint.geometry.coordinates);\n }\n }\n\n // 影像图层的数据\n if (feature instanceof ImageryLayerFeatureInfo) {\n let { position: _position, _offset } = handelGeometry(feature);\n position = _position;\n offset = _offset;\n }\n\n infoToolRef.current.add({\n position: position,\n content: '',\n element: popupRef.current,\n inputFeature: feature,\n type: '',\n offset,\n });\n\n map.popupRef = feature;\n highlightLayer.current.addHighlightFeature(feature);\n map.fitView({ entity: feature, height });\n };\n\n const hideTemplate = _layer => {\n if (_layer) {\n let layer = typeof _layer === 'string' ? map.getLayerByKey(_layer) : _layer;\n\n if (layer && layer.key && map.popupRef) {\n let _highlightLayer = map.getLayerByFeature(map.popupRef);\n if (_highlightLayer.key === layer.key) {\n onClose();\n }\n }\n } else {\n onClose();\n }\n };\n\n // 判断点位异常-点位异常展示红色\n function judgeAbnormal() {\n const { status } = map.getProperties(featureRef.current) || {};\n\n return status && [1, 2, 4].includes(status);\n }\n\n // 关闭气泡\n const onClose = () => {\n map.onCloseTemplateBefore && map.onCloseTemplateBefore(featureRef.current);\n map.popupRef = null;\n featureRef.current = null;\n infoToolRef?.current?.remove();\n\n if (map.entities.getById('highlight-1')) {\n map.entities.remove(map.entities.getById('highlight-1'));\n }\n\n // 清除高亮\n highlightLayer.current.clearFeatures();\n\n // map.fitView();\n };\n return (\n <div\n ref={popupRef}\n className={classnames('cesium-popup', { 'cesium-popup-abnormal': judgeAbnormal() })}\n >\n <CloseOutlined\n className={classnames('cesium-popup-close')}\n width={16}\n height={16}\n onClick={onClose}\n />\n <div className={classnames('cesium-popup-title', { 'cesium-popup-no-title': !title })}>\n {title}\n </div>\n <div className={classnames('cesium-popup-content')} id=\"content\">\n {content}\n </div>\n </div>\n );\n});\n\nexport default Popup;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Popup.js","names":["_react","_interopRequireWildcard","require","_cesium","_icons","_InfoTool","_interopRequireDefault","_classnames","_turf","_Polygon","_Polyline","_createFeatureCollection","_HighlightLayer","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","r","l","t","Symbol","iterator","e","n","u","a","f","o","next","done","push","value","length","Array","isArray","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","minLen","_arrayLikeToArray","toString","slice","constructor","name","from","test","iter","len","arr2","handelGeometry","entity","_entity$data","_midpoint","geometry","data","type","coordinates","midpoint","position","offset","x","y","includes","point1","point2","point","lngLatArr","Midpoint","polygon","Polygon","centerOfMass","Cartesian3","fromDegrees","apply","geometryType","_offset","exports","Popup","forwardRef","props","ref","map","_useState","useState","_useState2","content","setContent","_useState3","_useState4","title","setTitle","popupRef","useRef","featureRef","infoToolRef","InfoTool","highlightLayer","viewRef","useEffect","current","HighlightLayer","destroy","useImperativeHandle","showTemplate","hideTemplate","feature","_feature$_position","layer","getLayerByFeature","template","properties","getProperties","values_","labelField","_position","_value","height","PolygonGeo","_feature$_polygon","_polygon","_hierarchy","positions","v","cartographic","Cartographic","fromCartesian","lng","CesiumMath","toDegrees","longitude","lat","latitude","_handelGeometry","PolylineGeo","_feature$_polyline","_polyline","_positions","_handelGeometry2","primitive","_midpoint$geometry","transformGeometry","geometryInfo","_geometry$coordinates","ImageryLayerFeatureInfo","_handelGeometry3","add","element","inputFeature","addHighlightFeature","getView","fitView","_layer","getLayerByKey","_highlightLayer","onClose","judgeAbnormal","_ref","status","_infoToolRef$current","onCloseTemplateBefore","remove","entities","getById","clearFeatures","setView","pitch","camera","heading","z","flyTo","destination","orientation","roll","duration","createElement","className","classnames","CloseOutlined","width","onClick","id","_default"],"sources":["map/Popup.jsx"],"sourcesContent":["import React, { useRef, useState, useImperativeHandle, forwardRef, useEffect } from 'react';\nimport { ImageryLayerFeatureInfo, Cartesian3, Cartographic, Math as CesiumMath } from 'cesium';\nimport { CloseOutlined } from '@ant-design/icons';\nimport InfoTool from './InfoTool';\nimport classnames from 'classnames';\nimport { point, midpoint as Midpoint, polygon as Polygon, centerOfMass } from '@turf/turf';\nimport PolygonGeo from '../polygon/Polygon';\nimport PolylineGeo from '../polyline/Polyline';\nimport { transformGeometry } from '../feature-layer/createFeatureCollection';\nimport HighlightLayer from '../highlight-layer/HighlightLayer';\n\nexport const handelGeometry = entity => {\n let geometry = entity?.data?.geometry;\n let type = geometry?.type;\n let coordinates = geometry?.coordinates;\n\n let midpoint = entity?.data; // 默认点\n let position = null;\n let offset = {\n x: 0,\n y: 20,\n };\n\n if (['MultiLineString', 'LineString'].includes(type) && coordinates?.length) {\n let point1 = null;\n let point2 = null;\n // 线\n if (coordinates.length > 1) {\n point1 = point(coordinates[0]);\n point2 = point(coordinates[1]);\n } else {\n let lngLatArr = coordinates[0];\n point1 = point(lngLatArr[0]);\n point2 = point(lngLatArr[1]);\n }\n midpoint = Midpoint(point1, point2);\n } else if (['Polygon', 'MultiPolygon'].includes(type)) {\n // 面\n // 注意:polygon首尾坐标要一致\n let polygon = Polygon(coordinates);\n midpoint = centerOfMass(polygon);\n } else if (['Point'].includes(type)) {\n offset = {\n x: 5,\n y: 20,\n };\n }\n if (midpoint?.geometry?.coordinates) {\n position = Cartesian3.fromDegrees(...midpoint.geometry.coordinates);\n }\n\n return {\n position,\n geometryType: type,\n _offset: offset,\n };\n};\n\nconst Popup = forwardRef((props, ref) => {\n const { map } = props;\n\n const [content, setContent] = useState(null);\n const [title, setTitle] = useState(null);\n const popupRef = useRef();\n\n const featureRef = useRef();\n const infoToolRef = useRef(new InfoTool({ map }));\n const highlightLayer = useRef();\n const viewRef = useRef();\n\n useEffect(() => {\n highlightLayer.current = new HighlightLayer({ map });\n map.highlightLayer = highlightLayer.current;\n\n return () => {\n highlightLayer.current.destroy();\n map.highlightLayer = null;\n };\n }, []);\n\n useImperativeHandle(ref, () => {\n return {\n showTemplate,\n hideTemplate,\n };\n });\n\n const showTemplate = feature => {\n let layer = map.getLayerByFeature(feature);\n if (!layer?.template) {\n return;\n }\n\n let properties = map.getProperties(feature);\n feature.values_ = properties;\n featureRef.current = feature;\n if (layer) {\n let template = layer.template;\n let labelField = layer.labelField;\n\n setTitle(labelField && properties[labelField]);\n setContent(feature && template(feature));\n }\n\n\n let position = feature?._position?._value;\n // 偏移量\n let offset = {\n x: 5,\n y: 76,\n };\n\n let height = 1000;\n if (feature instanceof PolygonGeo) {\n let coordinates = [(feature?._polygon?._hierarchy?._value?.positions || []).map(v => {\n const cartographic = Cartographic.fromCartesian(v); // 经纬高对象\n const lng = CesiumMath.toDegrees(cartographic.longitude);\n const lat = CesiumMath.toDegrees(cartographic.latitude);\n return [lng, lat]\n })];\n let { position: _position, _offset } = handelGeometry({data: {geometry: {type: 'Polygon', coordinates}}});\n position = _position;\n offset = _offset;\n height = null;\n } else if (feature instanceof PolylineGeo) {\n let coordinates = (feature?._polyline?._positions?._value || []).map(v => {\n const cartographic = Cartographic.fromCartesian(v); // 经纬高对象\n const lng = CesiumMath.toDegrees(cartographic.longitude);\n const lat = CesiumMath.toDegrees(cartographic.latitude);\n return [lng, lat]\n });\n let { position: _position, _offset } = handelGeometry({data: {geometry: {type: 'LineString', coordinates}}});\n position = _position;\n offset = _offset;\n height = null;\n }\n\n\n if (feature.primitive) {\n offset = {\n x: 0,\n y: 20,\n };\n const geometry = transformGeometry(properties.geometryInfo);\n const [point1, point2] = geometry.coordinates[0];\n const midpoint = Midpoint(point1, point2);\n if (midpoint?.geometry?.coordinates) {\n position = Cartesian3.fromDegrees(...midpoint.geometry.coordinates);\n }\n }\n\n // 影像图层的数据\n if (feature instanceof ImageryLayerFeatureInfo) {\n let { position: _position, _offset } = handelGeometry(feature);\n position = _position;\n offset = _offset;\n }\n\n infoToolRef.current.add({\n position: position,\n content: '',\n element: popupRef.current,\n inputFeature: feature,\n type: '',\n offset,\n });\n\n map.popupRef = feature;\n highlightLayer.current.addHighlightFeature(feature);\n\n if (!viewRef.current) {\n getView();\n }\n\n map.fitView({ entity: feature, height });\n };\n\n const hideTemplate = _layer => {\n if (_layer) {\n let layer = typeof _layer === 'string' ? map.getLayerByKey(_layer) : _layer;\n\n if (layer && layer.key && map.popupRef) {\n let _highlightLayer = map.getLayerByFeature(map.popupRef);\n if (_highlightLayer.key === layer.key) {\n onClose();\n }\n }\n } else {\n onClose();\n }\n };\n\n // 判断点位异常-点位异常展示红色\n function judgeAbnormal() {\n const { status } = map.getProperties(featureRef.current) || {};\n\n return status && [1, 2, 4].includes(status);\n }\n\n // 关闭气泡\n const onClose = () => {\n map.onCloseTemplateBefore && map.onCloseTemplateBefore(featureRef.current);\n map.popupRef = null;\n featureRef.current = null;\n infoToolRef?.current?.remove();\n\n if (map.entities.getById('highlight-1')) {\n map.entities.remove(map.entities.getById('highlight-1'));\n }\n\n // 清除高亮\n highlightLayer.current.clearFeatures();\n\n // map.fitView();\n\n setView();\n };\n\n const getView = () => {\n //获取当前视角的pitch\n let pitch = map.camera.pitch;\n //获取当前视角的heading\n let heading = map.camera.heading;\n //获取当前视角的postion(位置)\n let position = map.camera.position;\n\n viewRef.current = {\n \"x\": position.x,\n \"y\":position.y,\n \"z\": position.z,\n \"pitch\": pitch,\n \"heading\": heading\n }\n }\n\n const setView = () => {\n if (viewRef.current) {\n map.camera.flyTo({ //定位到范围中心点\n destination: {\n x: viewRef.current.x,\n y: viewRef.current.y,\n z: viewRef.current.z\n },\n orientation: {\n heading: viewRef.current.heading, //左右方向\n pitch: viewRef.current.pitch, //上下方向\n roll: 0.0\n },\n duration: 2\n })\n\n viewRef.current = null\n }\n }\n return (\n <div\n ref={popupRef}\n className={classnames('cesium-popup', { 'cesium-popup-abnormal': judgeAbnormal() })}\n >\n <CloseOutlined\n className={classnames('cesium-popup-close')}\n width={16}\n height={16}\n onClick={onClose}\n />\n <div className={classnames('cesium-popup-title', { 'cesium-popup-no-title': !title })}>\n {title}\n </div>\n <div className={classnames('cesium-popup-content')} id=\"content\">\n {content}\n </div>\n </div>\n );\n});\n\nexport default Popup;\n"],"mappings":"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"}
package/lib/map/index.js CHANGED
@@ -431,6 +431,17 @@ function Map(props) {
431
431
  setTip(null);
432
432
  };
433
433
 
434
+ // 根据图层条件设置图层选中
435
+ map.showTemplateByFilter = function (key, field, value) {
436
+ var layer = map.getLayerByKey(key);
437
+ if (layer !== null && layer !== void 0 && layer.show) {
438
+ var feature = layer.getFeatureByFieldValue(field, value);
439
+ if (feature) {
440
+ map.showTemplate(feature);
441
+ }
442
+ }
443
+ };
444
+
434
445
  // 展示看板
435
446
  map.showTemplate = function (feature) {
436
447
  popupRef.current.showTemplate(feature);
@@ -551,7 +562,7 @@ function Map(props) {
551
562
  return feature._id;
552
563
  };
553
564
 
554
- // 鼠标移入移除
565
+ // 鼠标移入移出
555
566
  handlePoint.setInputAction(function (event) {
556
567
  event.lonLat = map.getPositionLonLat({
557
568
  position: event.endPosition
@@ -561,6 +572,14 @@ function Map(props) {
561
572
  position: event.endPosition
562
573
  });
563
574
  if (feature) {
575
+ var _map$getLayerByFeatur;
576
+ var labelField = (_map$getLayerByFeatur = map.getLayerByFeature(feature)) === null || _map$getLayerByFeatur === void 0 ? void 0 : _map$getLayerByFeatur.labelField;
577
+ if (labelField) {
578
+ var label = feature.properties[labelField]._value;
579
+ if (label) {
580
+ map.showTip(label);
581
+ }
582
+ }
564
583
  registerEvent(feature, 'onMouseMove');
565
584
 
566
585
  // 判断是否在图形内移动
@@ -584,6 +603,7 @@ function Map(props) {
584
603
  registerEvent(hoverFeature, 'onMouseLeave');
585
604
  }
586
605
  hoverFeature = null;
606
+ map.hideTip();
587
607
  }
588
608
  }, _cesium.ScreenSpaceEventType.MOUSE_MOVE);
589
609
 
@@ -656,7 +676,7 @@ function Map(props) {
656
676
  pitch: _cesium.Math.toRadians(-35),
657
677
  roll: 0.0
658
678
  },
659
- duration: 3
679
+ duration: 2
660
680
  }, options));
661
681
  } else {
662
682
  map.camera.flyTo({
@@ -665,7 +685,7 @@ function Map(props) {
665
685
  pitch: _cesium.Math.toRadians(defaultPitch),
666
686
  roll: 0.0
667
687
  },
668
- duration: 3
688
+ duration: 2
669
689
  });
670
690
  }
671
691
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_cesium","_base","_getDefaultMapInfo2","_classnames","_events","_Popup","_Provider","_Layers","_EventEmitter","_useGetMapFeatureInfoByText","_lodash","_excluded","_excluded2","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","iter","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","ownKeys","e","r","t","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","i","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","minLen","n","toString","slice","constructor","name","test","len","arr2","l","u","a","f","next","done","Map","props","_props$width","width","_props$height","height","dark","_props$mapStyle","mapStyle","tk","children","onCloseTemplateBefore","onZoom","_props$defaultPitch","defaultPitch","_props$onEvents","onEvents","baseMapUrl","_props$duration","duration","_props$baseMapStyle","baseMapStyle","imageryProvider","style","_useState","useState","_useState2","mapLoaded","setMapLoaded","_useState3","_useState4","tipVis","setTipVis","_useState5","_useState6","tip","setTip","mapRef","useRef","mapDomRef","tipRef","popupRef","getMapFeatureInfoByText","useGetMapFeatureInfoByText","useEffect","initMap","imgLayerVisible","current","layers","imageryLayers","_layers","map","item","_item$_imageryProvide","includes","_imageryProvider","_layer","show","addImageryProvider","TDT_IMG_W","concat","TDT_CIA_W","Img","WebMapTileServiceImageryProvider","url","layer","format","tileMatrixSetID","subdomains","minimumLevel","maximumLevel","cia","center","zoom","createdMap","options","_getDefaultMapInfo","getDefaultMapInfo","minZoom","maxZoom","defaultZoomLevel","longitude","latitude","viewDefault","Ion","defaultAccessToken","Imagery","crs","Viewer","shouldAnimate","animation","baseLayerPicker","fullscreenButton","geocoder","homeButton","timeline","infoBox","sceneModePicker","selectionIndicator","sceneMode","SceneMode","SCENE3D","navigationHelpButton","scene3DOnly","navigationInstructionsInitiallyVisible","showRenderLoopErrors","orderIndependentTranslucency","eventEmitter","EventEmitter","_cesiumWidget","_creditContainer","display","baseMap","BaseMap","Layers","on","layersChange","emit","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","v","zIndex","getAllLayers","_map$dataSources","_map$imageryLayers","_map$scene","dataSources","_dataSources","primitives","scene","_primitives","_map$imageryLayers2","getLayerByFeature","entity","find","ImageryLayerFeatureInfo","_entity$imageryLayer","imageryLayer","Primitive","_entity$primitive","primitive","getProperties","feature","_feature$_properties","_properties","data","id","properties","getValue","_id","getLayerByKey","getLayerByKeys","getVisibleLayersByKeys","showTip","content","hideTip","showTemplate","handlePoint","ScreenSpaceEventHandler","canvas","pickDataSourcesFeature","event","position","pick","_","isObject","pickImageryLayerFeatures","pickRay","camera","getPickRay","getCenterPosition","centerResult","pickEllipsoid","Cartesian2","clientWidth","clientHeight","curPosition","Ellipsoid","WGS84","cartesianToCartographic","curLongitude","Math","PI","curLatitude","setViewMode","type","viewMode","fitView","registerEventLayer","registerMapEvent","registerEvent","_feature$event","setInputAction","lonLat","getPositionLonLat","featuresPromise","onClickTemplateAfter","defined","when","features","sort","b","_layerIndex","ScreenSpaceEventType","LEFT_CLICK","trackedEntity","LEFT_DOUBLE_CLICK","hoverFeature","getUid","window","random","endPosition","uid","hoverUid","MOUSE_MOVE","moveEnd","addEventListener","viewRectangle","computeViewRectangle","west","north","east","south","cameraHeight","positionCartographic","_ref","lng","lat","_ref$height","rest","pitch","flyTo","offset","heading","toRadians","range","destination","Cartesian3","fromDegrees","orientation","roll","_viewDefault$center","x","y","_viewDefault$center$","z","CesiumMath","cartesian","globe","ellipsoid","cartographic","Cartographic","fromCartesian","toDegrees","setTimeout","_viewDefault$center2","_viewDefault$center2$","setView","onMouseMove","left","nativeEvent","layerX","top","layerY","createElement","background","className","classnames","ref","onMouseOver","onMouseOut","_default","exports","propTypes","PropTypes","oneOfType","string","number","func","array","bool","isRequired","object"],"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 Math,\n Ion,\n WebMapTileServiceImageryProvider,\n defined,\n when,\n ScreenSpaceEventHandler,\n ScreenSpaceEventType,\n ImageryLayerFeatureInfo,\n Primitive,\n Cartesian2,\n Ellipsoid,\n Cartographic,\n Math as CesiumMath,\n} from 'cesium';\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 _ from 'lodash';\n\nfunction Map(props) {\n const {\n width = '100%',\n height = '100%',\n dark,\n mapStyle = 'vec',\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 } = 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\n const imgLayerVisible = () => {\n if (mapRef.current) {\n let layers = mapRef.current.imageryLayers._layers || [];\n layers.map(item => {\n if (['img_w', 'cia_w'].includes(item._imageryProvider?._layer)) {\n item.show = mapStyle === 'img';\n }\n });\n }\n };\n\n const addImageryProvider = () => {\n let TDT_IMG_W = `http://{s}.tianditu.gov.cn/img_w/wmts?service=wmts&request=GetTile&version=1.0.0&LAYER=img&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}&style=default&format=tiles&tk=${tk}`;\n\n let TDT_CIA_W = `http://{s}.tianditu.gov.cn/cia_w/wmts?service=wmts&request=GetTile&version=1.0.0&LAYER=cia&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}&style=default.jpg&tk=${tk}`;\n\n let Img = new WebMapTileServiceImageryProvider({\n //调用影响中文服务\n url: TDT_IMG_W, // url地址,换影像还是矢量,随便你喜欢\n layer: 'img_w', // WMTS请求的层名称\n style: 'default', // WMTS请求的样式名称\n format: 'tiles', // MIME类型,用于从服务器检索图像\n tileMatrixSetID: 'GoogleMapsCompatible', // 用于WMTS请求的TileMatrixSet的标识符\n subdomains: ['t0', 't1', 't2', 't3', 't4', 't5', 't6', 't7'], // 天地图8个服务器\n minimumLevel: 0, // 最小层级\n maximumLevel: 18, // 最大层级\n });\n mapRef.current.imageryLayers.addImageryProvider(Img); // 添加到cesium图层上\n\n let cia = new WebMapTileServiceImageryProvider({\n // 调用影响中文注记服务\n url: TDT_CIA_W,\n layer: 'cia_w',\n style: 'default',\n format: 'tiles',\n tileMatrixSetID: 'GoogleMapsCompatible',\n subdomains: ['t0', 't1', 't2', 't3', 't4', 't5', 't6', 't7'], // 天地图8个服务器\n minimumLevel: 0,\n maximumLevel: 18,\n });\n mapRef.current.imageryLayers.addImageryProvider(cia); // 添加到cesium图层上\n\n imgLayerVisible();\n };\n\n useEffect(() => {\n imgLayerVisible();\n }, [mapStyle]);\n\n const initMap = () => {\n const { center, 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 });\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: true, //是否显示渲染错误\n orderIndependentTranslucency: false, //设置背景透明\n imageryProvider,\n ...options,\n });\n\n // 事件订阅\n map.eventEmitter = new EventEmitter();\n\n // 去版权信息\n map._cesiumWidget._creditContainer.style.display = 'none'; // 隐藏cesium ion\n\n mapRef.current = map;\n\n // 底图服务\n map.baseMap = new BaseMap({\n map,\n imageryProvider: baseMapStyle.imageryProvider,\n style: baseMapStyle.style,\n layer: imageryProvider,\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 index = layers.findIndex(v => _index < v.zIndex) + 1;\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 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 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 // 获取entity中数据\n map.getProperties = feature => {\n if (feature?.primitive && feature?.primitive instanceof Primitive) {\n return feature.primitive.data.find(item => item.id === feature.id);\n }\n let properties =\n feature?._properties?.getValue(feature._id) || feature?.properties || {};\n properties = properties?.properties || properties;\n return properties;\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 // 通过keys查询多个图层\n map.getLayerByKeys = keys => {\n return map.getAllLayers().filter(layer => {\n return layer.key && keys.includes(layer.key);\n });\n };\n\n // 通过返回值控制是否执行关闭\n map.onCloseTemplateBefore = feature => {\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.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) / Math.PI;\n let curLatitude = (curPosition.latitude * 180) / Math.PI;\n return [curLongitude, curLatitude];\n };\n\n // 二三维切换\n map.setViewMode = type => {\n map.viewMode = type;\n\n map.fitView();\n };\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 properties = map.getProperties(feature);\n\n // 触发自身事件\n feature[event]?.(properties);\n\n let layer = map.getLayerByFeature(feature);\n\n if (layer?.[event]) {\n layer[event](properties);\n }\n }\n }\n\n // 点击事件\n handlePoint.setInputAction(event => {\n event.lonLat = map.getPositionLonLat(event);\n\n registerMapEvent(event, 'onClick');\n map.hideTip();\n\n const entity = map.pickDataSourcesFeature(event);\n const featuresPromise = map.pickImageryLayerFeatures(event);\n if (entity) {\n map.onClickTemplateAfter && map.onClickTemplateAfter(entity);\n registerEvent(entity, 'onClick');\n\n map.showTemplate(entity, event);\n } else if (defined(featuresPromise)) {\n when(featuresPromise, features => {\n features.sort((a, b) => {\n return b.imageryLayer._layerIndex - a.imageryLayer._layerIndex;\n });\n const feature = features?.[0];\n registerEvent(feature, 'onClick');\n\n map.showTemplate(feature, event);\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 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 }\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 / Math.PI) * 180; // 左上方(西)\n const north = (viewRectangle.north / Math.PI) * 180; //右上方(北)\n const east = (viewRectangle.east / Math.PI) * 180; // 右下方(东)\n const south = (viewRectangle.south / Math.PI) * 180; // 左下方(南)\n const cameraHeight = map.camera.positionCartographic.height;\n onZoom && onZoom({ west, north, east, south, cameraHeight, viewRectangle });\n });\n }\n\n // 动态调整视角,不传参数为默认视角,参数可以是图层、图形、数据等\n map.fitView = e => {\n const { entity, lng, lat, height = 50000, ...rest } = 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: Math.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: Math.toRadians(-88.0),\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 map.camera.flyTo({\n destination: Cartesian3.fromDegrees(x, y - 0.5, z / 2),\n orientation: {\n pitch: CesiumMath.toRadians(-35),\n roll: 0.0,\n },\n duration: 3,\n ...options,\n });\n } else {\n map.camera.flyTo({\n destination: new Cartesian3.fromDegrees(x, y, z),\n orientation: {\n pitch: Math.toRadians(defaultPitch),\n roll: 0.0,\n },\n duration: 3,\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 setMapLoaded(true);\n\n createdMap && createdMap(map);\n\n onEvents.createdMap && onEvents.createdMap(map);\n }, duration);\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 setMapLoaded(true);\n\n createdMap && createdMap(map);\n\n onEvents.createdMap && onEvents.createdMap(map);\n }\n };\n\n const onMouseMove = event => {\n if (tip) {\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' }}\n className={classnames('map-container')}\n >\n <div\n ref={mapDomRef}\n className={classnames('map')}\n onMouseMove={onMouseMove}\n onMouseOver={() => setTipVis(true)}\n onMouseOut={() => setTipVis(false)}\n >\n {tip && tipVis && (\n <div ref={tipRef} className={classnames('custom-tip')}>\n {tip}\n </div>\n )}\n\n {mapRef.current && <Popup ref={popupRef} map={mapRef.current} />}\n </div>\n\n {mapLoaded && (\n <Provider\n value={{\n map: mapRef.current,\n }}\n >\n {children}\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};\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_cesium","_base","_getDefaultMapInfo2","_classnames","_events","_Popup","_Provider","_Layers","_EventEmitter","_useGetMapFeatureInfoByText","_lodash","_excluded","_excluded2","obj","__esModule","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","iter","Symbol","iterator","Array","from","isArray","_arrayLikeToArray","ownKeys","e","r","t","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","i","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","minLen","n","toString","slice","constructor","name","test","len","arr2","l","u","a","f","next","done","Map","props","_props$width","width","_props$height","height","dark","_props$mapStyle","mapStyle","tk","children","onCloseTemplateBefore","onZoom","_props$defaultPitch","defaultPitch","_props$onEvents","onEvents","baseMapUrl","_props$duration","duration","_props$baseMapStyle","baseMapStyle","imageryProvider","style","_useState","useState","_useState2","mapLoaded","setMapLoaded","_useState3","_useState4","tipVis","setTipVis","_useState5","_useState6","tip","setTip","mapRef","useRef","mapDomRef","tipRef","popupRef","getMapFeatureInfoByText","useGetMapFeatureInfoByText","useEffect","initMap","imgLayerVisible","current","layers","imageryLayers","_layers","map","item","_item$_imageryProvide","includes","_imageryProvider","_layer","show","addImageryProvider","TDT_IMG_W","concat","TDT_CIA_W","Img","WebMapTileServiceImageryProvider","url","layer","format","tileMatrixSetID","subdomains","minimumLevel","maximumLevel","cia","center","zoom","createdMap","options","_getDefaultMapInfo","getDefaultMapInfo","minZoom","maxZoom","defaultZoomLevel","longitude","latitude","viewDefault","Ion","defaultAccessToken","Imagery","crs","Viewer","shouldAnimate","animation","baseLayerPicker","fullscreenButton","geocoder","homeButton","timeline","infoBox","sceneModePicker","selectionIndicator","sceneMode","SceneMode","SCENE3D","navigationHelpButton","scene3DOnly","navigationInstructionsInitiallyVisible","showRenderLoopErrors","orderIndependentTranslucency","eventEmitter","EventEmitter","_cesiumWidget","_creditContainer","display","baseMap","BaseMap","Layers","on","layersChange","emit","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","v","zIndex","getAllLayers","_map$dataSources","_map$imageryLayers","_map$scene","dataSources","_dataSources","primitives","scene","_primitives","_map$imageryLayers2","getLayerByFeature","entity","find","ImageryLayerFeatureInfo","_entity$imageryLayer","imageryLayer","Primitive","_entity$primitive","primitive","getProperties","feature","_feature$_properties","_properties","data","id","properties","getValue","_id","getLayerByKey","getLayerByKeys","getVisibleLayersByKeys","showTip","content","hideTip","showTemplateByFilter","field","getFeatureByFieldValue","showTemplate","handlePoint","ScreenSpaceEventHandler","canvas","pickDataSourcesFeature","event","position","pick","_","isObject","pickImageryLayerFeatures","pickRay","camera","getPickRay","getCenterPosition","centerResult","pickEllipsoid","Cartesian2","clientWidth","clientHeight","curPosition","Ellipsoid","WGS84","cartesianToCartographic","curLongitude","Math","PI","curLatitude","setViewMode","type","viewMode","fitView","registerEventLayer","registerMapEvent","registerEvent","_feature$event","setInputAction","lonLat","getPositionLonLat","featuresPromise","onClickTemplateAfter","defined","when","features","sort","b","_layerIndex","ScreenSpaceEventType","LEFT_CLICK","trackedEntity","LEFT_DOUBLE_CLICK","hoverFeature","getUid","window","random","endPosition","_map$getLayerByFeatur","labelField","label","_value","uid","hoverUid","MOUSE_MOVE","moveEnd","addEventListener","viewRectangle","computeViewRectangle","west","north","east","south","cameraHeight","positionCartographic","_ref","lng","lat","_ref$height","rest","pitch","flyTo","offset","heading","toRadians","range","destination","Cartesian3","fromDegrees","orientation","roll","_viewDefault$center","x","y","_viewDefault$center$","z","CesiumMath","cartesian","globe","ellipsoid","cartographic","Cartographic","fromCartesian","toDegrees","setTimeout","_viewDefault$center2","_viewDefault$center2$","setView","onMouseMove","left","nativeEvent","layerX","top","layerY","createElement","background","className","classnames","ref","onMouseOver","onMouseOut","_default","exports","propTypes","PropTypes","oneOfType","string","number","func","array","bool","isRequired","object"],"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 Math,\n Ion,\n WebMapTileServiceImageryProvider,\n defined,\n when,\n ScreenSpaceEventHandler,\n ScreenSpaceEventType,\n ImageryLayerFeatureInfo,\n Primitive,\n Cartesian2,\n Ellipsoid,\n Cartographic,\n Math as CesiumMath,\n} from 'cesium';\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 _ from 'lodash';\n\nfunction Map(props) {\n const {\n width = '100%',\n height = '100%',\n dark,\n mapStyle = 'vec',\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 } = 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\n const imgLayerVisible = () => {\n if (mapRef.current) {\n let layers = mapRef.current.imageryLayers._layers || [];\n layers.map(item => {\n if (['img_w', 'cia_w'].includes(item._imageryProvider?._layer)) {\n item.show = mapStyle === 'img';\n }\n });\n }\n };\n\n const addImageryProvider = () => {\n let TDT_IMG_W = `http://{s}.tianditu.gov.cn/img_w/wmts?service=wmts&request=GetTile&version=1.0.0&LAYER=img&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}&style=default&format=tiles&tk=${tk}`;\n\n let TDT_CIA_W = `http://{s}.tianditu.gov.cn/cia_w/wmts?service=wmts&request=GetTile&version=1.0.0&LAYER=cia&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}&style=default.jpg&tk=${tk}`;\n\n let Img = new WebMapTileServiceImageryProvider({\n //调用影响中文服务\n url: TDT_IMG_W, // url地址,换影像还是矢量,随便你喜欢\n layer: 'img_w', // WMTS请求的层名称\n style: 'default', // WMTS请求的样式名称\n format: 'tiles', // MIME类型,用于从服务器检索图像\n tileMatrixSetID: 'GoogleMapsCompatible', // 用于WMTS请求的TileMatrixSet的标识符\n subdomains: ['t0', 't1', 't2', 't3', 't4', 't5', 't6', 't7'], // 天地图8个服务器\n minimumLevel: 0, // 最小层级\n maximumLevel: 18, // 最大层级\n });\n mapRef.current.imageryLayers.addImageryProvider(Img); // 添加到cesium图层上\n\n let cia = new WebMapTileServiceImageryProvider({\n // 调用影响中文注记服务\n url: TDT_CIA_W,\n layer: 'cia_w',\n style: 'default',\n format: 'tiles',\n tileMatrixSetID: 'GoogleMapsCompatible',\n subdomains: ['t0', 't1', 't2', 't3', 't4', 't5', 't6', 't7'], // 天地图8个服务器\n minimumLevel: 0,\n maximumLevel: 18,\n });\n mapRef.current.imageryLayers.addImageryProvider(cia); // 添加到cesium图层上\n\n imgLayerVisible();\n };\n\n useEffect(() => {\n imgLayerVisible();\n }, [mapStyle]);\n\n const initMap = () => {\n const { center, 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 });\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: true, //是否显示渲染错误\n orderIndependentTranslucency: false, //设置背景透明\n imageryProvider,\n ...options,\n });\n\n // 事件订阅\n map.eventEmitter = new EventEmitter();\n\n // 去版权信息\n map._cesiumWidget._creditContainer.style.display = 'none'; // 隐藏cesium ion\n\n mapRef.current = map;\n\n // 底图服务\n map.baseMap = new BaseMap({\n map,\n imageryProvider: baseMapStyle.imageryProvider,\n style: baseMapStyle.style,\n layer: imageryProvider,\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 index = layers.findIndex(v => _index < v.zIndex) + 1;\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 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 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 // 获取entity中数据\n map.getProperties = feature => {\n if (feature?.primitive && feature?.primitive instanceof Primitive) {\n return feature.primitive.data.find(item => item.id === feature.id);\n }\n let properties =\n feature?._properties?.getValue(feature._id) || feature?.properties || {};\n properties = properties?.properties || properties;\n return properties;\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 // 通过keys查询多个图层\n map.getLayerByKeys = keys => {\n return map.getAllLayers().filter(layer => {\n return layer.key && keys.includes(layer.key);\n });\n };\n\n // 通过返回值控制是否执行关闭\n map.onCloseTemplateBefore = feature => {\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 = (key, field, value) => {\n let layer = map.getLayerByKey(key);\n if (layer?.show) {\n let feature = layer.getFeatureByFieldValue(field, value);\n if (feature) {\n map.showTemplate(feature);\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) / Math.PI;\n let curLatitude = (curPosition.latitude * 180) / Math.PI;\n return [curLongitude, curLatitude];\n };\n\n // 二三维切换\n map.setViewMode = type => {\n map.viewMode = type;\n\n map.fitView();\n };\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 properties = map.getProperties(feature);\n\n // 触发自身事件\n feature[event]?.(properties);\n\n let layer = map.getLayerByFeature(feature);\n\n if (layer?.[event]) {\n layer[event](properties);\n }\n }\n }\n\n // 点击事件\n handlePoint.setInputAction(event => {\n event.lonLat = map.getPositionLonLat(event);\n\n registerMapEvent(event, 'onClick');\n map.hideTip();\n\n const entity = map.pickDataSourcesFeature(event);\n const featuresPromise = map.pickImageryLayerFeatures(event);\n if (entity) {\n map.onClickTemplateAfter && map.onClickTemplateAfter(entity);\n registerEvent(entity, 'onClick');\n\n map.showTemplate(entity, event);\n } else if (defined(featuresPromise)) {\n when(featuresPromise, features => {\n features.sort((a, b) => {\n return b.imageryLayer._layerIndex - a.imageryLayer._layerIndex;\n });\n const feature = features?.[0];\n registerEvent(feature, 'onClick');\n\n map.showTemplate(feature, event);\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 labelField = map.getLayerByFeature(feature)?.labelField;\n if (labelField) {\n let label = feature.properties[labelField]._value;\n if (label) {\n map.showTip(label);\n }\n }\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 / Math.PI) * 180; // 左上方(西)\n const north = (viewRectangle.north / Math.PI) * 180; //右上方(北)\n const east = (viewRectangle.east / Math.PI) * 180; // 右下方(东)\n const south = (viewRectangle.south / Math.PI) * 180; // 左下方(南)\n const cameraHeight = map.camera.positionCartographic.height;\n onZoom && onZoom({ west, north, east, south, cameraHeight, viewRectangle });\n });\n }\n\n // 动态调整视角,不传参数为默认视角,参数可以是图层、图形、数据等\n map.fitView = e => {\n const { entity, lng, lat, height = 50000, ...rest } = 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: Math.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: Math.toRadians(-88.0),\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 map.camera.flyTo({\n destination: Cartesian3.fromDegrees(x, y - 0.5, z / 2),\n orientation: {\n pitch: CesiumMath.toRadians(-35),\n roll: 0.0,\n },\n duration: 2,\n ...options,\n });\n } else {\n map.camera.flyTo({\n destination: new Cartesian3.fromDegrees(x, y, z),\n orientation: {\n pitch: Math.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 setMapLoaded(true);\n\n createdMap && createdMap(map);\n\n onEvents.createdMap && onEvents.createdMap(map);\n }, duration);\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 setMapLoaded(true);\n\n createdMap && createdMap(map);\n\n onEvents.createdMap && onEvents.createdMap(map);\n }\n };\n\n const onMouseMove = event => {\n if (tip) {\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' }}\n className={classnames('map-container')}\n >\n <div\n ref={mapDomRef}\n className={classnames('map')}\n onMouseMove={onMouseMove}\n onMouseOver={() => setTipVis(true)}\n onMouseOut={() => setTipVis(false)}\n >\n {tip && tipVis && (\n <div ref={tipRef} className={classnames('custom-tip')}>\n {tip}\n </div>\n )}\n\n {mapRef.current && <Popup ref={popupRef} map={mapRef.current} />}\n </div>\n\n {mapLoaded && (\n <Provider\n value={{\n map: mapRef.current,\n }}\n >\n {children}\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};\n"],"mappings":"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"}
@@ -40,7 +40,6 @@ var Polygon = /*#__PURE__*/function (_Entity) {
40
40
  polygon: _objectSpread({
41
41
  clampToGround: true,
42
42
  hierarchy: _cesium.Cartesian3.fromDegreesArray(geometry.flat(Infinity)),
43
- properties: new _cesium.PropertyBag(properties),
44
43
  extrudedHeight: 0
45
44
  }, (0, _renderer.Polygon)(_objectSpread({}, style)))
46
45
  }, other);
@@ -1 +1 @@
1
- {"version":3,"file":"Polygon.js","names":["_cesium","require","_renderer","_excluded","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","key","value","_toPropertyKey","configurable","writable","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","i","sourceSymbolKeys","indexOf","prototype","propertyIsEnumerable","call","sourceKeys","_classCallCheck","instance","Constructor","TypeError","_defineProperties","props","descriptor","_createClass","protoProps","staticProps","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","Number","_inherits","subClass","superClass","create","constructor","_setPrototypeOf","p","setPrototypeOf","bind","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","getPrototypeOf","Polygon","_Entity","_super","options","geometry","properties","style","other","clampToGround","PropertyBag","polygon","hierarchy","Cartesian3","fromDegreesArray","flat","Infinity","extrudedHeight","getStyle","setGeometry","_value","positions","setProperties","setValue","setStyle","setEntityStyle","Entity","exports"],"sources":["polygon/Polygon.js"],"sourcesContent":["import { Entity, Cartesian3, PropertyBag } from 'cesium';\nimport { Polygon as getStyle, setEntityStyle } from '../renderer';\n\nexport default class Polygon extends Entity {\n constructor(options) {\n const { geometry, properties, style, ...other } = options;\n\n let props = {\n clampToGround: true,\n properties: new PropertyBag(properties),\n polygon: {\n clampToGround: true,\n hierarchy: Cartesian3.fromDegreesArray(geometry.flat(Infinity)),\n properties: new PropertyBag(properties),\n extrudedHeight: 0,\n ...getStyle({ ...style }),\n },\n ...other,\n };\n\n super(props);\n }\n\n setGeometry(geometry) {\n this.polygon.hierarchy._value.positions.positions = Cartesian3.fromDegreesArray(\n geometry.flat(Infinity),\n );\n }\n\n setProperties(properties) {\n this.properties.setValue(new PropertyBag(properties));\n this.polygon.properties.setValue(new PropertyBag(properties));\n }\n\n setStyle(style) {\n setEntityStyle(this.polygon, getStyle({ ...style }));\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"Polygon.js","names":["_cesium","require","_renderer","_excluded","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","key","value","_toPropertyKey","configurable","writable","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","i","sourceSymbolKeys","indexOf","prototype","propertyIsEnumerable","call","sourceKeys","_classCallCheck","instance","Constructor","TypeError","_defineProperties","props","descriptor","_createClass","protoProps","staticProps","arg","_toPrimitive","_typeof","String","input","hint","prim","Symbol","toPrimitive","undefined","res","Number","_inherits","subClass","superClass","create","constructor","_setPrototypeOf","p","setPrototypeOf","bind","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf","result","NewTarget","Reflect","construct","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","sham","Proxy","Boolean","valueOf","getPrototypeOf","Polygon","_Entity","_super","options","geometry","properties","style","other","clampToGround","PropertyBag","polygon","hierarchy","Cartesian3","fromDegreesArray","flat","Infinity","extrudedHeight","getStyle","setGeometry","_value","positions","setProperties","setValue","setStyle","setEntityStyle","Entity","exports"],"sources":["polygon/Polygon.js"],"sourcesContent":["import { Entity, Cartesian3, PropertyBag } from 'cesium';\nimport { Polygon as getStyle, setEntityStyle } from '../renderer';\n\nexport default class Polygon extends Entity {\n constructor(options) {\n const { geometry, properties, style, ...other } = options;\n\n let props = {\n clampToGround: true,\n properties: new PropertyBag(properties),\n polygon: {\n clampToGround: true,\n hierarchy: Cartesian3.fromDegreesArray(geometry.flat(Infinity)),\n extrudedHeight: 0,\n ...getStyle({ ...style }),\n },\n ...other,\n };\n\n super(props);\n }\n\n setGeometry(geometry) {\n this.polygon.hierarchy._value.positions.positions = Cartesian3.fromDegreesArray(\n geometry.flat(Infinity),\n );\n }\n\n setProperties(properties) {\n this.properties.setValue(new PropertyBag(properties));\n this.polygon.properties.setValue(new PropertyBag(properties));\n }\n\n setStyle(style) {\n setEntityStyle(this.polygon, getStyle({ ...style }));\n }\n}\n"],"mappings":"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"}
@@ -114,14 +114,15 @@ var Polyline = function Polyline(options) {
114
114
  };
115
115
  exports.Polyline = Polyline;
116
116
  var Polygon = function Polygon(options) {
117
- var style = {};
117
+ var style = _objectSpread({}, options);
118
118
  if (options) {
119
119
  var fill = options.fill,
120
- stroke = options.stroke;
120
+ stroke = options.stroke,
121
+ material = options.material;
121
122
  if (fill) {
122
123
  style = _objectSpread(_objectSpread({}, style), {}, {
123
124
  fill: true,
124
- material: getColor(fill)
125
+ material: material || getColor(fill)
125
126
  });
126
127
  }
127
128
  if (stroke) {