@vtx/cs-map 1.0.77 → 1.0.79

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/lib/_util/layer.js +7 -2
  2. package/lib/_util/layer.js.map +1 -1
  3. package/lib/building-tiles-layer/BuildingTilesLayer.js +1 -7
  4. package/lib/building-tiles-layer/BuildingTilesLayer.js.map +1 -1
  5. package/lib/building-tiles-layer/index.js +6 -2
  6. package/lib/building-tiles-layer/index.js.map +1 -1
  7. package/lib/cesium-tiles-layer/CesiumTilesLayer.js +27 -1
  8. package/lib/cesium-tiles-layer/CesiumTilesLayer.js.map +1 -1
  9. package/lib/cesium-tiles-layer/index.js +10 -2
  10. package/lib/cesium-tiles-layer/index.js.map +1 -1
  11. package/lib/feature-layer/FeatureLayer.js +21 -0
  12. package/lib/feature-layer/FeatureLayer.js.map +1 -1
  13. package/lib/fly-line-layer/FlyLineLayer.js +34 -17
  14. package/lib/fly-line-layer/FlyLineLayer.js.map +1 -1
  15. package/lib/fly-line-layer/index.js +6 -2
  16. package/lib/fly-line-layer/index.js.map +1 -1
  17. package/lib/highlight-layer/HighlightLayer.js +60 -30
  18. package/lib/highlight-layer/HighlightLayer.js.map +1 -1
  19. package/lib/image-layer/ImageLayer.js +22 -2
  20. package/lib/image-layer/ImageLayer.js.map +1 -1
  21. package/lib/{image-layer/ImageLayer2.js → image-wms-layer/ImageWmsLayer.js} +69 -25
  22. package/lib/image-wms-layer/ImageWmsLayer.js.map +1 -0
  23. package/lib/image-wms-layer/index.js +73 -0
  24. package/lib/image-wms-layer/index.js.map +1 -0
  25. package/lib/image-wms-layer/style/css.js +4 -0
  26. package/lib/image-wms-layer/style/css.js.map +1 -0
  27. package/lib/image-wms-layer/style/index.css +0 -0
  28. package/lib/image-wms-layer/style/index.js +4 -0
  29. package/lib/image-wms-layer/style/index.js.map +1 -0
  30. package/lib/image-wms-layer/style/index.less +0 -0
  31. package/lib/index.js +8 -1
  32. package/lib/index.js.map +1 -1
  33. package/lib/map/Popup.js +13 -3
  34. package/lib/map/Popup.js.map +1 -1
  35. package/lib/map/index.js +78 -28
  36. package/lib/map/index.js.map +1 -1
  37. package/lib/pipe-tiles-layer/PipeTilesLayer.js +37 -0
  38. package/lib/pipe-tiles-layer/PipeTilesLayer.js.map +1 -0
  39. package/lib/pipe-tiles-layer/index.js +95 -0
  40. package/lib/pipe-tiles-layer/index.js.map +1 -0
  41. package/lib/pipe-tiles-layer/style/css.js +4 -0
  42. package/lib/pipe-tiles-layer/style/css.js.map +1 -0
  43. package/lib/pipe-tiles-layer/style/index.css +0 -0
  44. package/lib/pipe-tiles-layer/style/index.js +4 -0
  45. package/lib/pipe-tiles-layer/style/index.js.map +1 -0
  46. package/lib/pipe-tiles-layer/style/index.less +0 -0
  47. package/package.json +1 -1
  48. package/lib/image-layer/ImageLayer2.js.map +0 -1
package/lib/map/Popup.js CHANGED
@@ -165,6 +165,7 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
165
165
  map: map
166
166
  }));
167
167
  var viewRef = (0, _react.useRef)();
168
+ var highlightLayerRef = (0, _react.useRef)();
168
169
  (0, _react.useImperativeHandle)(ref, function () {
169
170
  return {
170
171
  showTemplate: showTemplate,
@@ -287,7 +288,14 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
287
288
  offset = _offset2;
288
289
  height = null;
289
290
  }
290
- if (feature.primitive) {
291
+ if (feature instanceof _cesium.Cesium3DTileFeature) {
292
+ offset = {
293
+ x: 0,
294
+ y: 20
295
+ };
296
+ position = map._clickObject.position;
297
+ // position = Cartesian3.fromDegrees();
298
+ } else if (feature.primitive) {
291
299
  var _midpoint$geometry;
292
300
  offset = {
293
301
  x: 0,
@@ -336,6 +344,7 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
336
344
  viewRef.current = null;
337
345
  }
338
346
  highlightLayer = highlightLayer || map.highlightLayer;
347
+ highlightLayerRef.current = highlightLayer;
339
348
  highlightLayer.addHighlightFeature(feature);
340
349
  if ((_highlightLayer2 = highlightLayer) !== null && _highlightLayer2 !== void 0 && _highlightLayer2.layer && map.autoView && !viewThreshold) {
341
350
  map.fitView({
@@ -367,7 +376,7 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
367
376
 
368
377
  // 关闭气泡
369
378
  var onClose = function onClose() {
370
- var _infoToolRef$current;
379
+ var _infoToolRef$current, _highlightLayerRef$cu, _highlightLayerRef$cu2;
371
380
  map.onCloseTemplateBefore && map.onCloseTemplateBefore(featureRef.current);
372
381
  map.popupRef = null;
373
382
  featureRef.current = null;
@@ -378,7 +387,8 @@ var Popup = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
378
387
  }
379
388
 
380
389
  // 清除高亮
381
- // highlightLayer.current.clearFeatures();
390
+ (_highlightLayerRef$cu = highlightLayerRef.current) === null || _highlightLayerRef$cu === void 0 || (_highlightLayerRef$cu2 = _highlightLayerRef$cu.clearHighlight) === null || _highlightLayerRef$cu2 === void 0 || _highlightLayerRef$cu2.call(_highlightLayerRef$cu);
391
+ // highlightLayerRef.current.clearFeatures();
382
392
 
383
393
  // map.fitView();
384
394
 
@@ -1 +1 @@
1
- {"version":3,"file":"Popup.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_cesium","_icons","_antd","_InfoTool","_classnames","_turf","_Polygon","_Polyline","_layerControl","_createFeatureCollection","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","l","Symbol","iterator","f","o","next","done","push","value","length","Array","isArray","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","minLen","_arrayLikeToArray","prototype","toString","slice","constructor","name","from","test","iter","len","arr2","ClusterTitle","props","layer","imgUrl","getImgUrl","createElement","className","classnames","src","alt","propTypes","PropTypes","object","Cluster","features","onFeatureClick","onFitView","labelField","onClick","Table","pagination","size","dataSource","scroll","y","columns","title","dataIndex","width","render","text","record","values_","array","func","handelGeometry","exports","entity","_entity$data","_coordinates","_midpoint","geometry","data","type","coordinates","midpoint","position","offset","x","includes","point1","point2","point","lngLatArr","Midpoint","_coordinates2","map","item","concat","polygon","Polygon","centerOfMass","Cartesian3","fromDegrees","apply","geometryType","_offset","Popup","forwardRef","ref","_useState","useState","_useState2","content","setContent","_useState3","_useState4","setTitle","popupRef","useRef","featureRef","infoToolRef","InfoTool","viewRef","useImperativeHandle","showTemplate","hideTemplate","feature","highlightLayer","_feature$_position","_feature$data","_highlightLayer2","_layer2$_options","points","properties","getProperties","TurfPoint","geometryInfo","lngLats","join","coordType","center","TureCenterOfMass","TurfFeatureCollection","_handelGeometry","getLayerByFeature","current","add","element","inputFeature","Template","_options","cluster","template","fitView","autoView","cancelPopup","layers","highlightFeature","_position","_value","height","fitViewHeight","PolygonGeo","_polygon","_feature$_polygon","_hierarchy","positions","v","cartographic","Cartographic","fromCartesian","lng","CesiumMath","toDegrees","longitude","lat","latitude","_handelGeometry2","PolylineGeo","_polyline","_feature$_polyline","_positions","_handelGeometry3","primitive","_midpoint$geometry","transformGeometry","_geometry$coordinates","ImageryLayerFeatureInfo","_handelGeometry4","currentCameraHeight","camera","positionCartographic","viewThreshold","viewHeight","getView","addHighlightFeature","_layer","getLayerByKey","key","_highlightLayer","onClose","judgeAbnormal","_ref","status","_infoToolRef$current","onCloseTemplateBefore","remove","entities","getById","setView","pitch","heading","z","flyTo","destination","orientation","roll","duration","CloseOutlined","id","_default"],"sources":["map/Popup.jsx"],"sourcesContent":["import React, { useRef, useState, useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\nimport { ImageryLayerFeatureInfo, Cartesian3, Cartographic, Math as CesiumMath } from 'cesium';\nimport { CloseOutlined } from '@ant-design/icons';\nimport { Table } from 'antd';\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 { getImgUrl } from '../tools/layer-control';\nimport { transformGeometry } from '../feature-layer/createFeatureCollection';\nimport {\n featureCollection as TurfFeatureCollection,\n point as TurfPoint,\n centerOfMass as TureCenterOfMass,\n} from '@turf/turf';\n\nconst ClusterTitle = props => {\n const { layer } = props;\n let { name } = layer;\n\n const imgUrl = getImgUrl(layer);\n\n return (\n <div className={classnames('cs-map-popup-cluster-title')}>\n <img src={imgUrl} alt=\"\" className={classnames('cs-map-popup-cluster-title-img')} />\n <span className={classnames('cs-map-popup-cluster-title-text')}>{name}</span>\n </div>\n );\n};\nClusterTitle.propTypes = {\n layer: PropTypes.object,\n};\n\nconst Cluster = props => {\n const { layer, features, onFeatureClick, onFitView } = props;\n let { labelField } = layer;\n\n return (\n <div className={classnames('cs-map-popup-cluster')}>\n <div className={classnames('cs-map-popup-cluster-header')}>\n 共 {features.length} 个点位\n <a onClick={onFitView}>缩放至</a>\n </div>\n <Table\n pagination={false}\n size=\"small\"\n dataSource={features}\n scroll={{ y: 120 }}\n columns={[\n {\n title: '名称',\n dataIndex: '名称',\n width: 60,\n render: (text, record) => {\n return (\n <a onClick={() => onFeatureClick(record)}>\n {record.values_[labelField]}\n </a>\n );\n },\n },\n {\n title: '操作',\n dataIndex: '操作',\n width: 30,\n render: (text, record) => {\n return <a onClick={() => onFeatureClick(record)}>定位</a>;\n },\n },\n ]}\n />\n </div>\n );\n};\nCluster.propTypes = {\n layer: PropTypes.object,\n features: PropTypes.array,\n onFeatureClick: PropTypes.func,\n onFitView: PropTypes.func\n}\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 // 兼容polygon首尾坐标不一致情况\n coordinates = coordinates?.map(item => {\n if (\n item[0][0] !== item[item.length - 1][0] ||\n item[0][1] !== item[item.length - 1][1]\n ) {\n return [...item, item[0]];\n }\n return item;\n });\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 viewRef = useRef();\n\n useImperativeHandle(ref, () => {\n return {\n showTemplate,\n hideTemplate,\n };\n });\n\n const showTemplate = (feature, highlightLayer) => {\n // 判断是否为聚合点击\n if (feature && feature.length >= 2) {\n const points = [];\n const features = feature.map(f => {\n let properties = map.getProperties(f);\n\n points.push(TurfPoint(f.geometry));\n return {\n feature: f,\n geometryInfo: properties?.geometryInfo || {\n type: 'point',\n lngLats: f.geometry.join(','),\n coordType: 'wgs84',\n },\n values_: properties,\n properties: properties,\n };\n });\n\n const center = TureCenterOfMass(TurfFeatureCollection(points));\n let { position } = handelGeometry({\n data: center,\n });\n\n let layer = map.getLayerByFeature(feature[0]);\n infoToolRef.current.add({\n position,\n content: '',\n element: popupRef.current,\n inputFeature: feature,\n type: '',\n offset: {\n x: 0,\n y: 50,\n },\n });\n\n setTitle(<ClusterTitle layer={layer} />);\n\n // 判断是否有自定义聚合列表模版\n let Template = layer?._options?.cluster?.template || Cluster;\n setContent(\n <Template\n layer={layer}\n features={features}\n onFitView={() => {\n map.fitView({ data: features });\n hideTemplate(null, map.autoView);\n }}\n onFeatureClick={f => {\n showTemplate(f.feature, highlightLayer);\n }}\n />,\n );\n return;\n }\n\n let layer = map.getLayerByFeature(feature);\n if (layer?.cancelPopup || feature?.cancelPopup) {\n return;\n }\n map.layers.highlightFeature= feature;\n\n let properties = map.getProperties(feature);\n feature.values_ = properties;\n featureRef.current = feature;\n let position = feature?._position?._value;\n // 偏移量\n let offset = {\n x: 5,\n y: 76,\n };\n\n let height = map.fitViewHeight || 5000;\n if (feature instanceof PolygonGeo || feature?._polygon) {\n let coordinates = [\n (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 ];\n let { position: _position, _offset } = handelGeometry({\n data: { geometry: { type: 'Polygon', coordinates } },\n });\n position = _position;\n offset = _offset;\n height = null;\n } else if (feature instanceof PolylineGeo || feature?._polyline) {\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({\n data: { geometry: { type: 'LineString', coordinates } },\n });\n position = _position;\n offset = _offset;\n height = null;\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 || feature?.data?.geometry?.coordinates) {\n let { position: _position, _offset } = handelGeometry(feature);\n position = _position;\n offset = _offset;\n }\n\n if (layer?.template) {\n let template = layer.template;\n let labelField = layer.labelField;\n\n setTitle(labelField && properties[labelField]);\n setContent(feature && template(feature));\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 }\n\n const currentCameraHeight = map.camera.positionCartographic.height;\n const viewThreshold = currentCameraHeight < height;\n const viewHeight = viewThreshold ? currentCameraHeight : height;\n if (!viewRef.current && map.autoView) {\n getView();\n }\n\n if (viewThreshold) {\n viewRef.current = null;\n }\n\n highlightLayer = highlightLayer || map.highlightLayer;\n highlightLayer.addHighlightFeature(feature);\n if (highlightLayer?.layer && map.autoView && !viewThreshold) {\n map.fitView({\n entity: highlightLayer.layer,\n height: viewHeight,\n });\n }\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 map.layers.highlightFeature = null;\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 if (map.autoView) {\n setView();\n }\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 //定位到范围中心点\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\nPopup.propTypes = {\n map: PropTypes.object,\n feature: PropTypes.object,\n layer: PropTypes.object,\n highlightLayer: PropTypes.object,\n onClose: PropTypes.func,\n};\n\nexport default Popup;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Popup.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_cesium","_icons","_antd","_InfoTool","_classnames","_turf","_Polygon","_Polyline","_layerControl","_createFeatureCollection","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","l","Symbol","iterator","f","o","next","done","push","value","length","Array","isArray","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","minLen","_arrayLikeToArray","prototype","toString","slice","constructor","name","from","test","iter","len","arr2","ClusterTitle","props","layer","imgUrl","getImgUrl","createElement","className","classnames","src","alt","propTypes","PropTypes","object","Cluster","features","onFeatureClick","onFitView","labelField","onClick","Table","pagination","size","dataSource","scroll","y","columns","title","dataIndex","width","render","text","record","values_","array","func","handelGeometry","exports","entity","_entity$data","_coordinates","_midpoint","geometry","data","type","coordinates","midpoint","position","offset","x","includes","point1","point2","point","lngLatArr","Midpoint","_coordinates2","map","item","concat","polygon","Polygon","centerOfMass","Cartesian3","fromDegrees","apply","geometryType","_offset","Popup","forwardRef","ref","_useState","useState","_useState2","content","setContent","_useState3","_useState4","setTitle","popupRef","useRef","featureRef","infoToolRef","InfoTool","viewRef","highlightLayerRef","useImperativeHandle","showTemplate","hideTemplate","feature","highlightLayer","_feature$_position","_feature$data","_highlightLayer2","_layer2$_options","points","properties","getProperties","TurfPoint","geometryInfo","lngLats","join","coordType","center","TureCenterOfMass","TurfFeatureCollection","_handelGeometry","getLayerByFeature","current","add","element","inputFeature","Template","_options","cluster","template","fitView","autoView","cancelPopup","layers","highlightFeature","_position","_value","height","fitViewHeight","PolygonGeo","_polygon","_feature$_polygon","_hierarchy","positions","v","cartographic","Cartographic","fromCartesian","lng","CesiumMath","toDegrees","longitude","lat","latitude","_handelGeometry2","PolylineGeo","_polyline","_feature$_polyline","_positions","_handelGeometry3","Cesium3DTileFeature","_clickObject","primitive","_midpoint$geometry","transformGeometry","_geometry$coordinates","ImageryLayerFeatureInfo","_handelGeometry4","currentCameraHeight","camera","positionCartographic","viewThreshold","viewHeight","getView","addHighlightFeature","_layer","getLayerByKey","key","_highlightLayer","onClose","judgeAbnormal","_ref","status","_infoToolRef$current","_highlightLayerRef$cu","_highlightLayerRef$cu2","onCloseTemplateBefore","remove","entities","getById","clearHighlight","setView","pitch","heading","z","flyTo","destination","orientation","roll","duration","CloseOutlined","id","_default"],"sources":["map/Popup.jsx"],"sourcesContent":["import React, { useRef, useState, useImperativeHandle, forwardRef } from 'react';\nimport PropTypes from 'prop-types';\nimport { ImageryLayerFeatureInfo, Cartesian3, Cartographic, Math as CesiumMath, Cesium3DTileFeature } from 'cesium';\nimport { CloseOutlined } from '@ant-design/icons';\nimport { Table } from 'antd';\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 { getImgUrl } from '../tools/layer-control';\nimport { transformGeometry } from '../feature-layer/createFeatureCollection';\nimport {\n featureCollection as TurfFeatureCollection,\n point as TurfPoint,\n centerOfMass as TureCenterOfMass,\n} from '@turf/turf';\n\nconst ClusterTitle = props => {\n const { layer } = props;\n let { name } = layer;\n\n const imgUrl = getImgUrl(layer);\n\n return (\n <div className={classnames('cs-map-popup-cluster-title')}>\n <img src={imgUrl} alt=\"\" className={classnames('cs-map-popup-cluster-title-img')} />\n <span className={classnames('cs-map-popup-cluster-title-text')}>{name}</span>\n </div>\n );\n};\nClusterTitle.propTypes = {\n layer: PropTypes.object,\n};\n\nconst Cluster = props => {\n const { layer, features, onFeatureClick, onFitView } = props;\n let { labelField } = layer;\n\n return (\n <div className={classnames('cs-map-popup-cluster')}>\n <div className={classnames('cs-map-popup-cluster-header')}>\n 共 {features.length} 个点位\n <a onClick={onFitView}>缩放至</a>\n </div>\n <Table\n pagination={false}\n size=\"small\"\n dataSource={features}\n scroll={{ y: 120 }}\n columns={[\n {\n title: '名称',\n dataIndex: '名称',\n width: 60,\n render: (text, record) => {\n return (\n <a onClick={() => onFeatureClick(record)}>\n {record.values_[labelField]}\n </a>\n );\n },\n },\n {\n title: '操作',\n dataIndex: '操作',\n width: 30,\n render: (text, record) => {\n return <a onClick={() => onFeatureClick(record)}>定位</a>;\n },\n },\n ]}\n />\n </div>\n );\n};\nCluster.propTypes = {\n layer: PropTypes.object,\n features: PropTypes.array,\n onFeatureClick: PropTypes.func,\n onFitView: PropTypes.func\n}\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 // 兼容polygon首尾坐标不一致情况\n coordinates = coordinates?.map(item => {\n if (\n item[0][0] !== item[item.length - 1][0] ||\n item[0][1] !== item[item.length - 1][1]\n ) {\n return [...item, item[0]];\n }\n return item;\n });\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 viewRef = useRef();\n const highlightLayerRef = useRef();\n\n useImperativeHandle(ref, () => {\n return {\n showTemplate,\n hideTemplate,\n };\n });\n\n const showTemplate = (feature, highlightLayer) => {\n // 判断是否为聚合点击\n if (feature && feature.length >= 2) {\n const points = [];\n const features = feature.map(f => {\n let properties = map.getProperties(f);\n\n points.push(TurfPoint(f.geometry));\n return {\n feature: f,\n geometryInfo: properties?.geometryInfo || {\n type: 'point',\n lngLats: f.geometry.join(','),\n coordType: 'wgs84',\n },\n values_: properties,\n properties: properties,\n };\n });\n\n const center = TureCenterOfMass(TurfFeatureCollection(points));\n let { position } = handelGeometry({\n data: center,\n });\n\n let layer = map.getLayerByFeature(feature[0]);\n infoToolRef.current.add({\n position,\n content: '',\n element: popupRef.current,\n inputFeature: feature,\n type: '',\n offset: {\n x: 0,\n y: 50,\n },\n });\n\n setTitle(<ClusterTitle layer={layer} />);\n\n // 判断是否有自定义聚合列表模版\n let Template = layer?._options?.cluster?.template || Cluster;\n setContent(\n <Template\n layer={layer}\n features={features}\n onFitView={() => {\n map.fitView({ data: features });\n hideTemplate(null, map.autoView);\n }}\n onFeatureClick={f => {\n showTemplate(f.feature, highlightLayer);\n }}\n />,\n );\n return;\n }\n\n let layer = map.getLayerByFeature(feature);\n if (layer?.cancelPopup || feature?.cancelPopup) {\n return;\n }\n map.layers.highlightFeature = feature;\n\n let properties = map.getProperties(feature);\n feature.values_ = properties;\n featureRef.current = feature;\n let position = feature?._position?._value;\n // 偏移量\n let offset = {\n x: 5,\n y: 76,\n };\n\n let height = map.fitViewHeight || 5000;\n if (feature instanceof PolygonGeo || feature?._polygon) {\n let coordinates = [\n (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 ];\n let { position: _position, _offset } = handelGeometry({\n data: { geometry: { type: 'Polygon', coordinates } },\n });\n position = _position;\n offset = _offset;\n height = null;\n } else if (feature instanceof PolylineGeo || feature?._polyline) {\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({\n data: { geometry: { type: 'LineString', coordinates } },\n });\n position = _position;\n offset = _offset;\n height = null;\n }\n\n if (feature instanceof Cesium3DTileFeature) {\n offset = {\n x: 0,\n y: 20,\n };\n position = map._clickObject.position;\n // position = Cartesian3.fromDegrees();\n } else 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 || feature?.data?.geometry?.coordinates) {\n let { position: _position, _offset } = handelGeometry(feature);\n position = _position;\n offset = _offset;\n }\n\n if (layer?.template) {\n let template = layer.template;\n let labelField = layer.labelField;\n\n setTitle(labelField && properties[labelField]);\n setContent(feature && template(feature));\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 }\n\n const currentCameraHeight = map.camera.positionCartographic.height;\n const viewThreshold = currentCameraHeight < height;\n const viewHeight = viewThreshold ? currentCameraHeight : height;\n if (!viewRef.current && map.autoView) {\n getView();\n }\n\n if (viewThreshold) {\n viewRef.current = null;\n }\n\n highlightLayer = highlightLayer || map.highlightLayer;\n highlightLayerRef.current = highlightLayer;\n highlightLayer.addHighlightFeature(feature);\n if (highlightLayer?.layer && map.autoView && !viewThreshold) {\n map.fitView({\n entity: highlightLayer.layer,\n height: viewHeight,\n });\n }\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 map.layers.highlightFeature = null;\n\n if (map.entities.getById('highlight-1')) {\n map.entities.remove(map.entities.getById('highlight-1'));\n }\n\n // 清除高亮\n highlightLayerRef.current?.clearHighlight?.();\n // highlightLayerRef.current.clearFeatures();\n\n // map.fitView();\n\n if (map.autoView) {\n setView();\n }\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 //定位到范围中心点\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\nPopup.propTypes = {\n map: PropTypes.object,\n feature: PropTypes.object,\n layer: PropTypes.object,\n highlightLayer: PropTypes.object,\n onClose: PropTypes.func,\n};\n\nexport default Popup;\n"],"mappings":"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","ignoreList":[]}
package/lib/map/index.js CHANGED
@@ -24,7 +24,7 @@ var _lodash = require("lodash");
24
24
  var _createFeatureCollection = require("../feature-layer/createFeatureCollection");
25
25
  var _getBBoxFromGeojson = _interopRequireDefault(require("../_util/getBBoxFromGeojson.js"));
26
26
  var _heightAndZoom = require("../_util/heightAndZoom.js");
27
- var _excluded = ["center", "dark", "zoom", "createdMap"],
27
+ var _excluded = ["center", "setLoading", "fitViewHeight", "dark", "zoom", "createdMap"],
28
28
  _excluded2 = ["geoJson", "geometryInfo", "data", "entity", "lng", "lat", "height", "options"];
29
29
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
30
30
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
@@ -152,6 +152,8 @@ function Map(props) {
152
152
  }, [baseMapStyle.imageryProvider, baseMapStyle.hideLabel]);
153
153
  var initMap = function initMap() {
154
154
  var center = props.center,
155
+ setLoading = props.setLoading,
156
+ fitViewHeight = props.fitViewHeight,
155
157
  dark = props.dark,
156
158
  zoom = props.zoom,
157
159
  createdMap = props.createdMap,
@@ -210,6 +212,21 @@ function Map(props) {
210
212
  //设置背景透明
211
213
  imageryProvider: imageryProvider
212
214
  }, options));
215
+
216
+ // 监听加载是否完成
217
+ var helper = new _cesium.EventHelper();
218
+ helper.add(map.scene.globe.tileLoadProgressEvent, function (e) {
219
+ setLoading === null || setLoading === void 0 || setLoading(true);
220
+ if (e === 0) {
221
+ setLoading === null || setLoading === void 0 || setLoading(false);
222
+ }
223
+ });
224
+
225
+ // 设置cesium请求调度器的最大并发数量
226
+ _cesium.RequestScheduler.maximumRequestsPerServer = 18;
227
+
228
+ // 关闭请求调度器的请求节流
229
+ _cesium.RequestScheduler.throttleRequests = false;
213
230
  map.viewMode = viewMode;
214
231
  map.autoView = autoView; // 自动调整视角
215
232
 
@@ -223,7 +240,7 @@ function Map(props) {
223
240
  map.dark = dark;
224
241
 
225
242
  // 地图fit高度
226
- map.fitViewHeight = 5000;
243
+ map.fitViewHeight = fitViewHeight || 5000;
227
244
 
228
245
  // 底图服务
229
246
  map.baseMap = new _base.BaseMap({
@@ -379,11 +396,16 @@ function Map(props) {
379
396
  if (layer !== null && layer !== void 0 && layer.key && layer.key === (entity === null || entity === void 0 || (_entity$imageryLayer = entity.imageryLayer) === null || _entity$imageryLayer === void 0 ? void 0 : _entity$imageryLayer.key)) {
380
397
  return layer;
381
398
  }
382
- } else if (layer instanceof _cesium.Primitive) {
399
+ } else if (layer instanceof _cesium.Cesium3DTileset && entity instanceof _cesium.Cesium3DTileFeature) {
383
400
  var _entity$primitive;
384
401
  if (layer !== null && layer !== void 0 && layer.key && layer.key === (entity === null || entity === void 0 || (_entity$primitive = entity.primitive) === null || _entity$primitive === void 0 ? void 0 : _entity$primitive.key)) {
385
402
  return layer;
386
403
  }
404
+ } else if (layer instanceof _cesium.Primitive) {
405
+ var _entity$primitive2;
406
+ if (layer !== null && layer !== void 0 && layer.key && layer.key === (entity === null || entity === void 0 || (_entity$primitive2 = entity.primitive) === null || _entity$primitive2 === void 0 ? void 0 : _entity$primitive2.key)) {
407
+ return layer;
408
+ }
387
409
  } else {
388
410
  if (layer !== null && layer !== void 0 && layer.key && layer.key === (entity === null || entity === void 0 ? void 0 : entity.key)) {
389
411
  return layer;
@@ -392,17 +414,33 @@ function Map(props) {
392
414
  });
393
415
  };
394
416
 
417
+ // 获取 3DTiles feature 属性
418
+ map.get3DTileFeatureProperties = function (feature) {
419
+ var properties = {};
420
+ var propertyIds = feature.getPropertyNames();
421
+ var length = propertyIds.length;
422
+ for (var i = 0; i < length; ++i) {
423
+ var propertyId = propertyIds[i];
424
+ properties[propertyId] = feature.getProperty(propertyId);
425
+ }
426
+ return properties;
427
+ };
428
+
395
429
  // 获取entity中数据
396
430
  map.getProperties = function (feature) {
397
- var _feature$_properties, _properties;
398
- if (feature !== null && feature !== void 0 && feature.primitive && (feature === null || feature === void 0 ? void 0 : feature.primitive) instanceof _cesium.Primitive) {
431
+ var _feature$primitive;
432
+ if (feature instanceof _cesium.Cesium3DTileFeature) {
433
+ return map.get3DTileFeatureProperties(feature);
434
+ } else if (feature !== null && feature !== void 0 && (_feature$primitive = feature.primitive) !== null && _feature$primitive !== void 0 && _feature$primitive.data && (feature === null || feature === void 0 ? void 0 : feature.primitive) instanceof _cesium.Primitive) {
399
435
  return feature.primitive.data.find(function (item) {
400
436
  return item.id === feature.id;
401
437
  });
438
+ } else {
439
+ var _feature$_properties, _properties;
440
+ var properties = (feature === null || feature === void 0 || (_feature$_properties = feature._properties) === null || _feature$_properties === void 0 ? void 0 : _feature$_properties.getValue(feature._id)) || (feature === null || feature === void 0 ? void 0 : feature.properties) || {};
441
+ properties = ((_properties = properties) === null || _properties === void 0 ? void 0 : _properties.properties) || properties;
442
+ return properties;
402
443
  }
403
- var properties = (feature === null || feature === void 0 || (_feature$_properties = feature._properties) === null || _feature$_properties === void 0 ? void 0 : _feature$_properties.getValue(feature._id)) || (feature === null || feature === void 0 ? void 0 : feature.properties) || {};
404
- properties = ((_properties = properties) === null || _properties === void 0 ? void 0 : _properties.properties) || properties;
405
- return properties;
406
444
  };
407
445
 
408
446
  // 通过key查询图层
@@ -641,29 +679,39 @@ function Map(props) {
641
679
  // 点击事件
642
680
  handlePoint.setInputAction(function (event) {
643
681
  event.lonLat = map.getPositionLonLat(event);
682
+ map._clickObject = event;
644
683
  registerMapEvent(event, 'onClick');
645
684
  map.hideTip();
646
685
 
647
686
  // 是否禁止冒泡
648
687
  if (!map.cancelBubble) {
649
- var entity = map.pickDataSourcesFeature(event);
650
- var featuresPromise = map.pickImageryLayerFeatures(event);
651
- if (entity) {
652
- map.onClickTemplateAfter && map.onClickTemplateAfter(entity);
653
- registerEvent(entity, 'onClick');
654
- map.showTemplate(entity);
655
- } else if ((0, _cesium.defined)(featuresPromise)) {
656
- (0, _cesium.when)(featuresPromise, function (features) {
657
- features.sort(function (a, b) {
658
- return b.imageryLayer._layerIndex - a.imageryLayer._layerIndex;
688
+ var pick = map.scene.pick(event.position);
689
+ if (pick instanceof _cesium.Cesium3DTileFeature) {
690
+ if (checkClickable(pick)) {
691
+ map.onClickTemplateAfter && map.onClickTemplateAfter(pick);
692
+ registerEvent(pick, 'onClick');
693
+ map.showTemplate(pick);
694
+ }
695
+ } else {
696
+ var entity = map.pickDataSourcesFeature(event);
697
+ var featuresPromise = map.pickImageryLayerFeatures(event);
698
+ if (entity) {
699
+ map.onClickTemplateAfter && map.onClickTemplateAfter(entity);
700
+ registerEvent(entity, 'onClick');
701
+ map.showTemplate(entity);
702
+ } else if ((0, _cesium.defined)(featuresPromise)) {
703
+ (0, _cesium.when)(featuresPromise, function (features) {
704
+ features.sort(function (a, b) {
705
+ return b.imageryLayer._layerIndex - a.imageryLayer._layerIndex;
706
+ });
707
+ var feature = features === null || features === void 0 ? void 0 : features[0];
708
+ if (checkClickable(feature)) {
709
+ return;
710
+ }
711
+ registerEvent(feature, 'onClick');
712
+ map.showTemplate(feature);
659
713
  });
660
- var feature = features === null || features === void 0 ? void 0 : features[0];
661
- if (checkClickable(feature)) {
662
- return;
663
- }
664
- registerEvent(feature, 'onClick');
665
- map.showTemplate(feature);
666
- });
714
+ }
667
715
  }
668
716
  }
669
717
  }, _cesium.ScreenSpaceEventType.LEFT_CLICK);
@@ -868,7 +916,7 @@ function Map(props) {
868
916
  createdMap && createdMap(map);
869
917
  onEvents.createdMap && onEvents.createdMap(map);
870
918
  setMapLoaded(true);
871
- }, (duration + 1) * 1000);
919
+ }, (duration + 0.5) * 1000);
872
920
  } else {
873
921
  var _viewDefault$center2 = _slicedToArray(viewDefault.center, 3),
874
922
  x = _viewDefault$center2[0],
@@ -884,7 +932,7 @@ function Map(props) {
884
932
  createdMap && createdMap(map);
885
933
  onEvents.createdMap && onEvents.createdMap(map);
886
934
  setMapLoaded(true);
887
- }, 1000);
935
+ }, 500);
888
936
  }
889
937
  };
890
938
  var onMouseMove = function onMouseMove(event) {
@@ -950,6 +998,8 @@ Map.propTypes = {
950
998
  showModal: _propTypes["default"].func,
951
999
  wrapDomStyle: _propTypes["default"].object,
952
1000
  mapDomStyle: _propTypes["default"].object,
953
- baseMapOptions: _propTypes["default"].object
1001
+ baseMapOptions: _propTypes["default"].object,
1002
+ setLoading: _propTypes["default"].func,
1003
+ fitViewHeight: _propTypes["default"].number
954
1004
  };
955
1005
  //# sourceMappingURL=index.js.map