@vtx/cs-map 1.0.8 → 1.0.9

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 (46) hide show
  1. package/lib/{cesium-3dtiles-layer/Cesium3DTilesLayer.js → cesium-tiles-layer/CesiumTilesLayer.js} +34 -15
  2. package/lib/cesium-tiles-layer/CesiumTilesLayer.js.map +1 -0
  3. package/lib/cesium-tiles-layer/index.js +55 -0
  4. package/lib/cesium-tiles-layer/index.js.map +1 -0
  5. package/lib/cesium-tiles-layer/style/css.js +4 -0
  6. package/lib/cesium-tiles-layer/style/css.js.map +1 -0
  7. package/lib/cesium-tiles-layer/style/index.css +0 -0
  8. package/lib/cesium-tiles-layer/style/index.js +4 -0
  9. package/lib/cesium-tiles-layer/style/index.js.map +1 -0
  10. package/lib/cesium-tiles-layer/style/index.less +0 -0
  11. package/lib/feature-layer/FeatureLayer.js +72 -12
  12. package/lib/feature-layer/FeatureLayer.js.map +1 -1
  13. package/lib/feature-layer/index.js +9 -2
  14. package/lib/feature-layer/index.js.map +1 -1
  15. package/lib/group-layer/GroupLayer.js +2 -12
  16. package/lib/group-layer/GroupLayer.js.map +1 -1
  17. package/lib/highlight-layer/HighlightLayer.js +22 -17
  18. package/lib/highlight-layer/HighlightLayer.js.map +1 -1
  19. package/lib/image-layer/ImageLayer.js +29 -12
  20. package/lib/image-layer/ImageLayer.js.map +1 -1
  21. package/lib/image-layer/index.js +3 -1
  22. package/lib/image-layer/index.js.map +1 -1
  23. package/lib/index.js +7 -0
  24. package/lib/index.js.map +1 -1
  25. package/lib/line-flow-layer/LineFlowLayer.js +2 -6
  26. package/lib/line-flow-layer/LineFlowLayer.js.map +1 -1
  27. package/lib/map/Layers.js +278 -0
  28. package/lib/map/Layers.js.map +1 -0
  29. package/lib/map/Popup.js +24 -11
  30. package/lib/map/Popup.js.map +1 -1
  31. package/lib/map/index.js +137 -75
  32. package/lib/map/index.js.map +1 -1
  33. package/lib/map/material/CircleRippleMaterialProperty.js +89 -0
  34. package/lib/map/material/CircleRippleMaterialProperty.js.map +1 -0
  35. package/lib/marker/Marker.js +0 -1
  36. package/lib/marker/Marker.js.map +1 -1
  37. package/lib/renderer/index.js +15 -5
  38. package/lib/renderer/index.js.map +1 -1
  39. package/lib/tools/layer/index.js +32 -71
  40. package/lib/tools/layer/index.js.map +1 -1
  41. package/lib/tools/style/index.css +7 -0
  42. package/lib/tools/style/index.less +9 -0
  43. package/package.json +1 -1
  44. package/lib/cesium-3dtiles-layer/Cesium3DTilesLayer.js.map +0 -1
  45. package/lib/cesium-3dtiles-layer/index.js +0 -30
  46. package/lib/cesium-3dtiles-layer/index.js.map +0 -1
package/lib/map/index.js CHANGED
@@ -11,13 +11,13 @@ var _cesium = require("cesium");
11
11
  require("./base");
12
12
  require("./material");
13
13
  var _AmapMercatorTilingScheme = _interopRequireDefault(require("./base/imagery/transform/AmapMercatorTilingScheme"));
14
- var _ImageLayer = _interopRequireDefault(require("../image-layer/ImageLayer"));
15
14
  var _getDefaultMapInfo2 = _interopRequireDefault(require("../_util/getDefaultMapInfo"));
16
15
  require("cesium/Build/Cesium/Widgets/widgets.css");
17
16
  var _classnames = _interopRequireDefault(require("classnames"));
18
17
  var _events = require("../events");
19
18
  var _Popup = _interopRequireDefault(require("./Popup"));
20
19
  var _Provider = _interopRequireDefault(require("../_util/Provider"));
20
+ var _Layers = _interopRequireDefault(require("./Layers"));
21
21
  var _EventEmitter = _interopRequireDefault(require("../_util/EventEmitter"));
22
22
  var _useGetMapFeatureInfoByText = _interopRequireDefault(require("./hooks/useGetMapFeatureInfoByText"));
23
23
  var _lodash = _interopRequireDefault(require("lodash"));
@@ -199,95 +199,122 @@ function Map(props) {
199
199
  mapRef.current = map;
200
200
  addImageryProvider();
201
201
 
202
- // 展示提示
203
- map.showTip = function (content) {
204
- setTip(content);
202
+ // 添加 dataSource 和 imagery 图层
203
+ map.layers = new _Layers["default"]({
204
+ map: map
205
+ });
206
+
207
+ // 图层改变的时候
208
+ map.layers.on('change', function (layers) {
209
+ onEvents.layersChange && onEvents.layersChange(layers);
210
+ map.eventEmitter.emit('layersChange', layers);
211
+ });
212
+
213
+ // 图层新增
214
+ map.layers.on('add', function (layer) {
215
+ onEvents.layersAdd && onEvents.layersAdd(layer);
216
+ map.eventEmitter.emit('layersAdd', layer);
217
+ });
218
+
219
+ // 图层移除
220
+ map.layers.on('remove', function (layer) {
221
+ onEvents.layersRemove && onEvents.layersRemove(layer);
222
+ map.eventEmitter.emit('layersRemove', layer);
223
+ });
224
+
225
+ // 图层清空
226
+ map.layers.on('clear', function () {
227
+ onEvents.layersClear && onEvents.layersClear();
228
+ map.eventEmitter.emit('layersClear');
229
+ });
230
+
231
+ // 图层展示隐藏
232
+ map.layers.on('visible', function (layer, visible) {
233
+ map.layers.onChange(); // 触发图层改变
234
+
235
+ // 图层关闭时,隐藏自身的气泡
236
+ if (!visible && map.popupRef) {
237
+ map.hideTemplate(layer);
238
+ }
239
+ onEvents.layersVisible && onEvents.layersVisible(layer, visible);
240
+ map.eventEmitter.emit('layersVisible');
241
+ });
242
+
243
+ // 图层变化
244
+ map.layersChange = function () {
245
+ map.layers.onChange();
205
246
  };
206
247
 
207
- // 隐藏提示
208
- map.hideTip = function () {
209
- setTip(null);
248
+ // 获取 layers 里面的 key 集合
249
+ map.getAllKeys = function () {
250
+ return map.layers.getAllKeys();
210
251
  };
211
252
 
212
- // 查找所有dataSource和imagery图层
213
- map.getAllLayers = function () {
214
- var _map$dataSources, _map$imageryLayers, _map$scene;
215
- var dataSources = (map === null || map === void 0 || (_map$dataSources = map.dataSources) === null || _map$dataSources === void 0 ? void 0 : _map$dataSources._dataSources) || [];
216
- var imageryLayers = (map === null || map === void 0 || (_map$imageryLayers = map.imageryLayers) === null || _map$imageryLayers === void 0 ? void 0 : _map$imageryLayers._layers) || [];
217
- var primitives = (map === null || map === void 0 || (_map$scene = map.scene) === null || _map$scene === void 0 || (_map$scene = _map$scene.primitives) === null || _map$scene === void 0 ? void 0 : _map$scene._primitives) || [];
218
- return [].concat(_toConsumableArray(dataSources), _toConsumableArray(imageryLayers), _toConsumableArray(primitives));
253
+ // 获取当前展示的 keys
254
+ map.getLayersShowKeys = function () {
255
+ return map.layers.getShowKeys();
219
256
  };
220
257
 
221
- // 添加dataSource和imagery图层
222
- map.layers = [];
258
+ // 获取当前隐藏的 keys
259
+ map.getLayersHiddenKeys = function () {
260
+ return map.layers.getHiddenKeys();
261
+ };
223
262
 
224
- // 图层改变
225
- map.layersChange = function () {
226
- map.eventEmitter.emit('layersChange', map.layers);
227
- onEvents.layersChange && onEvents.layersChange(map.layers);
263
+ // 根据 keys 设置图层的显示,其他的隐藏
264
+ map.setLayersShowByKeys = function (_keys) {
265
+ return map.layers.setShowByKeys(_keys);
266
+ };
267
+
268
+ // 根据 keys 设置图层的隐藏,其他的显示
269
+ map.setLayersHideByKeys = function (_keys) {
270
+ return map.layers.setHideByKeys(_keys);
228
271
  };
229
272
 
230
273
  // 添加图层
231
274
  map.addLayer = function (layer) {
232
- // 挂载获取地图的方法
233
- layer.getMap = function () {
234
- return map;
235
- };
236
- if (layer instanceof _cesium.CustomDataSource) {
237
- map.dataSources.add(layer);
238
- } else if (layer instanceof _ImageLayer["default"]) {
239
- map.scene.imageryLayers.add(layer);
240
- }
241
-
242
- // 图层是否含有name字段,作为加入到图层树的判断依据
243
- if (layer.name) {
244
- map.layers.push(layer);
245
- onEvents.addLayer && onEvents.addLayer(layer);
246
- map.layersChange();
247
- }
275
+ return map.layers.addLayer(layer);
248
276
  };
249
277
 
250
278
  // 移除图层
251
279
  map.removeLayer = function (layer) {
252
- if (layer instanceof _cesium.CustomDataSource) {
253
- map.dataSources.remove(layer);
254
- } else if (layer instanceof _ImageLayer["default"]) {
255
- map.scene.imageryLayers.remove(layer);
256
- }
257
- map.layers = map.layers.filter(function (v) {
258
- return v !== layer;
259
- });
260
- onEvents.removeLayer && onEvents.removeLayer(layer);
261
- map.layersChange();
280
+ return map.layers.removeLayer(layer);
262
281
  };
263
282
 
264
283
  // 清除图层和entity
265
284
  map.clearLayers = function () {
266
- var imageryLayers = map.getImageryLayers() || [];
267
- map.dataSources.removeAll();
268
- imageryLayers.map(function (layer) {
269
- if (layer !== null && layer !== void 0 && layer.key) {
270
- map.imageryLayers.remove(layer);
271
- }
272
- });
273
- map.entities.removeAll();
274
- map.layers = [];
275
- onEvents.clearLayer && onEvents.clearLayer();
276
- map.layersChange();
285
+ return map.layers.clearLayers();
286
+ };
287
+
288
+ // 获取 ImageLayer 图层
289
+ map.getImageLayers = function (keys) {
290
+ return map.layers.getImageLayers(keys);
291
+ };
292
+
293
+ // 获取 FeatureLayer 图层
294
+ map.getFeatureLayers = function (keys) {
295
+ return map.layers.getFeatureLayers(keys);
296
+ };
297
+
298
+ // 查找所有dataSource和imagery图层
299
+ map.getAllLayers = function () {
300
+ var _map$dataSources, _map$imageryLayers, _map$scene;
301
+ var dataSources = (map === null || map === void 0 || (_map$dataSources = map.dataSources) === null || _map$dataSources === void 0 ? void 0 : _map$dataSources._dataSources) || [];
302
+ var imageryLayers = (map === null || map === void 0 || (_map$imageryLayers = map.imageryLayers) === null || _map$imageryLayers === void 0 ? void 0 : _map$imageryLayers._layers) || [];
303
+ var primitives = (map === null || map === void 0 || (_map$scene = map.scene) === null || _map$scene === void 0 || (_map$scene = _map$scene.primitives) === null || _map$scene === void 0 ? void 0 : _map$scene._primitives) || [];
304
+ return [].concat(_toConsumableArray(dataSources), _toConsumableArray(imageryLayers), _toConsumableArray(primitives));
277
305
  };
278
306
 
279
307
  // 根据key查找imageryLayers图层
280
- map.getImageryLayers = function (keys) {
308
+ map.getImageryLayers = function (_keys) {
281
309
  var _map$imageryLayers2;
282
- return ((map === null || map === void 0 || (_map$imageryLayers2 = map.imageryLayers) === null || _map$imageryLayers2 === void 0 ? void 0 : _map$imageryLayers2._layers) || []).filter(function (layer) {
283
- if (typeof keys === 'string') {
284
- return layer.key === keys;
285
- } else if (Array.isArray(keys)) {
286
- return keys.includes(layer.key);
287
- } else {
288
- return layer;
289
- }
290
- });
310
+ var layers = (map === null || map === void 0 || (_map$imageryLayers2 = map.imageryLayers) === null || _map$imageryLayers2 === void 0 ? void 0 : _map$imageryLayers2._layers) || [];
311
+ if (_keys && layers.length) {
312
+ var keys = Array.isArray(_keys) ? _keys : [_keys];
313
+ return layers.filter(function (layer) {
314
+ return layer.key && keys.includes(layer.key);
315
+ });
316
+ }
317
+ return layers;
291
318
  };
292
319
 
293
320
  // 通过图形查询所属图层
@@ -359,6 +386,16 @@ function Map(props) {
359
386
  });
360
387
  };
361
388
 
389
+ // 展示提示
390
+ map.showTip = function (content) {
391
+ setTip(content);
392
+ };
393
+
394
+ // 隐藏提示
395
+ map.hideTip = function () {
396
+ setTip(null);
397
+ };
398
+
362
399
  // 展示看板
363
400
  map.showTemplate = function (feature) {
364
401
  popupRef.current.showTemplate(feature);
@@ -368,6 +405,8 @@ function Map(props) {
368
405
  map.hideTemplate = function () {
369
406
  popupRef.current.hideTemplate();
370
407
  };
408
+
409
+ // 鼠标事件控制器
371
410
  var handlePoint = new _cesium.ScreenSpaceEventHandler(map.scene.canvas);
372
411
 
373
412
  // 获取图层上的图形信息
@@ -375,12 +414,14 @@ function Map(props) {
375
414
  if (event !== null && event !== void 0 && event.position) {
376
415
  var position = event.position;
377
416
  var pick = map.scene.pick(position);
378
- if (_lodash["default"].isString(pick === null || pick === void 0 ? void 0 : pick.id)) {
379
- return pick;
417
+ if (_lodash["default"].isObject(pick === null || pick === void 0 ? void 0 : pick.id)) {
418
+ return pick.id;
380
419
  }
381
- return pick === null || pick === void 0 ? void 0 : pick.id;
420
+ return pick;
382
421
  }
383
422
  };
423
+
424
+ // 根据关键字获取图形信息
384
425
  map.getMapFeatureInfoByText = getMapFeatureInfoByText;
385
426
 
386
427
  // 获取wms的图形数据
@@ -394,12 +435,16 @@ function Map(props) {
394
435
 
395
436
  // 注册事件
396
437
  (0, _events.registerEventLayer)(map, props);
438
+
439
+ // 注册地图组件事件
397
440
  function registerMapEvent(e, event) {
398
441
  if (map[event]) {
399
442
  map[event](e);
400
443
  onEvents[event] && onEvents[event](e);
401
444
  }
402
445
  }
446
+
447
+ // 注册图层组件事件
403
448
  function registerEvent(feature, event) {
404
449
  if (feature) {
405
450
  var _feature$event;
@@ -418,6 +463,12 @@ function Map(props) {
418
463
  handlePoint.setInputAction(function (event) {
419
464
  registerMapEvent(event, 'onClick');
420
465
  map.hideTip();
466
+ var cartesian = map.camera.pickEllipsoid(event.position, map.scene.globe.ellipsoid); // Cartesian3对象
467
+ var cartographic = _cesium.Cartographic.fromCartesian(cartesian); // 经纬高对象
468
+ var lng = _cesium.Math.toDegrees(cartographic.longitude);
469
+ var lat = _cesium.Math.toDegrees(cartographic.latitude);
470
+ var location = [lng, lat]; // 即为经纬度数组
471
+ console.log("location:", location);
421
472
  var entity = map.pickDataSourcesFeature(event);
422
473
  var featuresPromise = map.pickImageryLayerFeatures(event);
423
474
  if (entity) {
@@ -445,11 +496,13 @@ function Map(props) {
445
496
  // 鼠标移动
446
497
  var hoverFeature;
447
498
  var getUid = function getUid(feature) {
448
- if (!feature._id) {
499
+ if (feature && !feature._id) {
449
500
  feature._id = window.Math.random();
450
501
  }
451
502
  return feature._id;
452
503
  };
504
+
505
+ // 鼠标移入移除
453
506
  handlePoint.setInputAction(function (event) {
454
507
  registerMapEvent(event, 'onMouseMove');
455
508
  var feature = map.pickDataSourcesFeature({
@@ -481,6 +534,8 @@ function Map(props) {
481
534
  hoverFeature = null;
482
535
  }
483
536
  }, _cesium.ScreenSpaceEventType.MOUSE_MOVE);
537
+
538
+ // 层级事件
484
539
  if (onZoom) {
485
540
  map.camera.moveEnd.addEventListener(function () {
486
541
  var viewRectangle = map.camera.computeViewRectangle();
@@ -494,7 +549,8 @@ function Map(props) {
494
549
  north: north,
495
550
  east: east,
496
551
  south: south,
497
- cameraHeight: cameraHeight
552
+ cameraHeight: cameraHeight,
553
+ viewRectangle: viewRectangle
498
554
  });
499
555
  });
500
556
  }
@@ -544,10 +600,16 @@ function Map(props) {
544
600
  });
545
601
  }
546
602
  };
603
+
604
+ // 自动调整视角
547
605
  map.fitView();
548
- createdMap && createdMap(map);
549
- onEvents.createdMap && onEvents.createdMap(map);
550
- setMapLoaded(true);
606
+
607
+ // 延时触发回调事件
608
+ setTimeout(function () {
609
+ createdMap && createdMap(map);
610
+ onEvents.createdMap && onEvents.createdMap(map);
611
+ setMapLoaded(true);
612
+ }, 3000);
551
613
  };
552
614
  var onMouseMove = function onMouseMove(event) {
553
615
  if (tip) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_cesium","_AmapMercatorTilingScheme","_ImageLayer","_getDefaultMapInfo2","_classnames","_events","_Popup","_Provider","_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$onEvents","onEvents","_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","style","format","tileMatrixSetID","subdomains","minimumLevel","maximumLevel","cia","center","zoom","createdMap","options","_getDefaultMapInfo","getDefaultMapInfo","minZoom","maxZoom","defaultZoomLevel","longitude","latitude","viewDefault","Ion","defaultAccessToken","Viewer","shouldAnimate","animation","baseLayerPicker","fullscreenButton","geocoder","homeButton","timeline","infoBox","sceneModePicker","selectionIndicator","sceneMode","SceneMode","SCENE3D","navigationHelpButton","scene3DOnly","navigationInstructionsInitiallyVisible","showRenderLoopErrors","orderIndependentTranslucency","imageryProvider","UrlTemplateImageryProvider","tilingScheme","AmapMercatorTilingScheme","eventEmitter","EventEmitter","_cesiumWidget","_creditContainer","display","showTip","content","hideTip","getAllLayers","_map$dataSources","_map$imageryLayers","_map$scene","dataSources","_dataSources","primitives","scene","_primitives","layersChange","emit","addLayer","getMap","CustomDataSource","add","ImageryLayer","removeLayer","remove","v","clearLayers","getImageryLayers","removeAll","entities","clearLayer","_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","showTemplate","hideTemplate","handlePoint","ScreenSpaceEventHandler","canvas","pickDataSourcesFeature","event","position","pick","_","isString","pickImageryLayerFeatures","pickRay","camera","getPickRay","registerEventLayer","registerMapEvent","registerEvent","_feature$event","setInputAction","featuresPromise","onClickTemplateAfter","defined","when","features","ScreenSpaceEventType","LEFT_CLICK","trackedEntity","LEFT_DOUBLE_CLICK","hoverFeature","getUid","window","Math","random","endPosition","uid","hoverUid","MOUSE_MOVE","moveEnd","addEventListener","viewRectangle","computeViewRectangle","west","PI","north","east","south","cameraHeight","positionCartographic","fitView","_ref","lng","lat","_ref$height","rest","pitch","flyTo","duration","offset","heading","toRadians","range","destination","Cartesian3","fromDegrees","orientation","roll","_viewDefault$center","x","y","_viewDefault$center$","z","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 UrlTemplateImageryProvider,\n Cartesian3,\n Math,\n Ion,\n WebMapTileServiceImageryProvider,\n defined,\n when,\n ScreenSpaceEventHandler,\n ScreenSpaceEventType,\n ImageryLayerFeatureInfo,\n CustomDataSource,\n Primitive,\n} from 'cesium';\nimport './base';\nimport './material';\nimport AmapMercatorTilingScheme from './base/imagery/transform/AmapMercatorTilingScheme';\nimport ImageryLayer from '../image-layer/ImageLayer';\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 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 onEvents = {},\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 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: new UrlTemplateImageryProvider({\n url:\n '//map.geoq.cn/arcgis/rest/services/ChinaOnlineStreetPurplishBlue/MapServer/tile/{z}/{y}/{x}',\n maximumLevel: 18,\n tilingScheme: new AmapMercatorTilingScheme(),\n }),\n\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 addImageryProvider();\n\n // 展示提示\n map.showTip = content => {\n setTip(content);\n };\n\n // 隐藏提示\n map.hideTip = () => {\n setTip(null);\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 return [...dataSources, ...imageryLayers, ...primitives];\n };\n\n // 添加dataSource和imagery图层\n map.layers = [];\n\n // 图层改变\n map.layersChange = () => {\n map.eventEmitter.emit('layersChange', map.layers);\n onEvents.layersChange && onEvents.layersChange(map.layers);\n };\n\n // 添加图层\n map.addLayer = layer => {\n // 挂载获取地图的方法\n layer.getMap = () => map;\n\n if (layer instanceof CustomDataSource) {\n map.dataSources.add(layer);\n } else if (layer instanceof ImageryLayer) {\n map.scene.imageryLayers.add(layer);\n }\n\n // 图层是否含有name字段,作为加入到图层树的判断依据\n if (layer.name) {\n map.layers.push(layer);\n onEvents.addLayer && onEvents.addLayer(layer);\n map.layersChange();\n }\n };\n\n // 移除图层\n map.removeLayer = layer => {\n if (layer instanceof CustomDataSource) {\n map.dataSources.remove(layer);\n } else if (layer instanceof ImageryLayer) {\n map.scene.imageryLayers.remove(layer);\n }\n\n map.layers = map.layers.filter(v => v !== layer);\n onEvents.removeLayer && onEvents.removeLayer(layer);\n map.layersChange();\n };\n\n // 清除图层和entity\n map.clearLayers = () => {\n let imageryLayers = map.getImageryLayers() || [];\n\n map.dataSources.removeAll();\n\n imageryLayers.map(layer => {\n if (layer?.key) {\n map.imageryLayers.remove(layer);\n }\n });\n\n map.entities.removeAll();\n\n map.layers = [];\n onEvents.clearLayer && onEvents.clearLayer();\n map.layersChange();\n };\n\n // 根据key查找imageryLayers图层\n map.getImageryLayers = keys => {\n return (map?.imageryLayers?._layers || []).filter(layer => {\n if (typeof keys === 'string') {\n return layer.key === keys;\n } else if (Array.isArray(keys)) {\n return keys.includes(layer.key);\n } else {\n return layer;\n }\n });\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.showTemplate = feature => {\n popupRef.current.showTemplate(feature);\n };\n\n // 隐藏看板\n map.hideTemplate = () => {\n popupRef.current.hideTemplate();\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 (_.isString(pick?.id)) {\n return pick;\n }\n return pick?.id;\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 registerEventLayer(map, props);\n\n function registerMapEvent(e, event) {\n if (map[event]) {\n map[event](e);\n onEvents[event] && onEvents[event](e);\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 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 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 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._id) {\n feature._id = window.Math.random();\n }\n\n return feature._id;\n };\n handlePoint.setInputAction(event => {\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 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 });\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 if (entity) {\n map.flyTo(entity, {\n duration: 2,\n offset: {\n heading: Math.toRadians(0.0),\n pitch,\n range: height,\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 const [x, y, z = 80000.0] = viewDefault.center;\n map.camera.flyTo({\n destination: new Cartesian3.fromDegrees(x, y, z),\n orientation: {\n pitch: Math.toRadians(-88.0),\n roll: 0.0,\n },\n duration: 3,\n });\n }\n };\n\n map.fitView();\n\n createdMap && createdMap(map);\n\n onEvents.createdMap && onEvents.createdMap(map);\n\n setMapLoaded(true);\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 dark: PropTypes.bool,\n mapStyle: PropTypes.oneOfType(['vec', 'img']),\n tk: PropTypes.string.isRequired,\n onEvents: PropTypes.object,\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_cesium","_AmapMercatorTilingScheme","_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$onEvents","onEvents","_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","style","format","tileMatrixSetID","subdomains","minimumLevel","maximumLevel","cia","center","zoom","createdMap","options","_getDefaultMapInfo","getDefaultMapInfo","minZoom","maxZoom","defaultZoomLevel","longitude","latitude","viewDefault","Ion","defaultAccessToken","Viewer","shouldAnimate","animation","baseLayerPicker","fullscreenButton","geocoder","homeButton","timeline","infoBox","sceneModePicker","selectionIndicator","sceneMode","SceneMode","SCENE3D","navigationHelpButton","scene3DOnly","navigationInstructionsInitiallyVisible","showRenderLoopErrors","orderIndependentTranslucency","imageryProvider","UrlTemplateImageryProvider","tilingScheme","AmapMercatorTilingScheme","eventEmitter","EventEmitter","_cesiumWidget","_creditContainer","display","Layers","on","layersChange","emit","layersAdd","layersRemove","layersClear","visible","onChange","hideTemplate","layersVisible","getAllKeys","getLayersShowKeys","getShowKeys","getLayersHiddenKeys","getHiddenKeys","setLayersShowByKeys","_keys","setShowByKeys","setLayersHideByKeys","setHideByKeys","addLayer","removeLayer","clearLayers","getImageLayers","getFeatureLayers","getAllLayers","_map$dataSources","_map$imageryLayers","_map$scene","dataSources","_dataSources","primitives","scene","_primitives","getImageryLayers","_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","registerEventLayer","registerMapEvent","registerEvent","_feature$event","setInputAction","cartesian","pickEllipsoid","globe","ellipsoid","cartographic","Cartographic","fromCartesian","lng","CesiumMath","toDegrees","lat","location","console","log","featuresPromise","onClickTemplateAfter","defined","when","features","ScreenSpaceEventType","LEFT_CLICK","trackedEntity","LEFT_DOUBLE_CLICK","hoverFeature","getUid","window","Math","random","endPosition","uid","hoverUid","MOUSE_MOVE","moveEnd","addEventListener","viewRectangle","computeViewRectangle","west","PI","north","east","south","cameraHeight","positionCartographic","fitView","_ref","_ref$height","rest","pitch","flyTo","duration","offset","heading","toRadians","range","destination","Cartesian3","fromDegrees","orientation","roll","_viewDefault$center","x","y","_viewDefault$center$","z","setTimeout","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 UrlTemplateImageryProvider,\n Cartesian3,\n Math,\n Ion,\n WebMapTileServiceImageryProvider,\n defined,\n when,\n ScreenSpaceEventHandler,\n ScreenSpaceEventType,\n ImageryLayerFeatureInfo,\n Primitive,\n Cartographic,\n Math as CesiumMath\n} from 'cesium';\nimport './base';\nimport './material';\nimport AmapMercatorTilingScheme from './base/imagery/transform/AmapMercatorTilingScheme';\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 onEvents = {},\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 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: new UrlTemplateImageryProvider({\n url:\n '//map.geoq.cn/arcgis/rest/services/ChinaOnlineStreetPurplishBlue/MapServer/tile/{z}/{y}/{x}',\n maximumLevel: 18,\n tilingScheme: new AmapMercatorTilingScheme(),\n }),\n\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 addImageryProvider();\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 => {\n return map.layers.addLayer(layer)\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 // 查找所有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 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 registerMapEvent(event, 'onClick');\n map.hideTip();\n\n const cartesian = map.camera.pickEllipsoid(event.position, map.scene.globe.ellipsoid); // Cartesian3对象\n const cartographic = Cartographic.fromCartesian(cartesian); // 经纬高对象\n const lng = CesiumMath.toDegrees(cartographic.longitude);\n const lat = CesiumMath.toDegrees(cartographic.latitude);\n const location = [lng, lat]; // 即为经纬度数组\n console.log(\"location:\", location);\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 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 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 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 if (entity) {\n map.flyTo(entity, {\n duration: 2,\n offset: {\n heading: Math.toRadians(0.0),\n pitch,\n range: height,\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 const [x, y, z = 80000.0] = viewDefault.center;\n map.camera.flyTo({\n destination: new Cartesian3.fromDegrees(x, y, z),\n orientation: {\n pitch: Math.toRadians(-88.0),\n roll: 0.0,\n },\n duration: 3,\n });\n }\n };\n\n // 自动调整视角\n map.fitView();\n\n // 延时触发回调事件\n setTimeout(() => {\n createdMap && createdMap(map);\n\n onEvents.createdMap && onEvents.createdMap(map);\n\n setMapLoaded(true);\n }, 3000)\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 dark: PropTypes.bool,\n mapStyle: PropTypes.oneOfType(['vec', 'img']),\n tk: PropTypes.string.isRequired,\n onEvents: PropTypes.object,\n};\n"],"mappings":"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"}