@vtx/cs-map 1.0.91 → 1.0.92
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.js +14 -0
- package/lib/index.js.map +1 -1
- package/lib/map/index.js +18 -10
- package/lib/map/index.js.map +1 -1
- package/lib/split-screen/index.js +30 -1
- package/lib/split-screen/index.js.map +1 -1
- package/package.json +1 -1
package/lib/index.js
CHANGED
|
@@ -33,6 +33,12 @@ Object.defineProperty(exports, "Dom", {
|
|
|
33
33
|
return _dom["default"];
|
|
34
34
|
}
|
|
35
35
|
});
|
|
36
|
+
Object.defineProperty(exports, "ExcavationAnalysis", {
|
|
37
|
+
enumerable: true,
|
|
38
|
+
get: function get() {
|
|
39
|
+
return _excavationAnalysis["default"];
|
|
40
|
+
}
|
|
41
|
+
});
|
|
36
42
|
Object.defineProperty(exports, "FeatureLayer", {
|
|
37
43
|
enumerable: true,
|
|
38
44
|
get: function get() {
|
|
@@ -159,6 +165,12 @@ Object.defineProperty(exports, "SceneRoam", {
|
|
|
159
165
|
return _sceneRoam["default"];
|
|
160
166
|
}
|
|
161
167
|
});
|
|
168
|
+
Object.defineProperty(exports, "SplitScreen", {
|
|
169
|
+
enumerable: true,
|
|
170
|
+
get: function get() {
|
|
171
|
+
return _splitScreen["default"];
|
|
172
|
+
}
|
|
173
|
+
});
|
|
162
174
|
Object.defineProperty(exports, "Tools", {
|
|
163
175
|
enumerable: true,
|
|
164
176
|
get: function get() {
|
|
@@ -220,5 +232,7 @@ var _legend = _interopRequireDefault(require("./legend"));
|
|
|
220
232
|
var _circleFly = _interopRequireDefault(require("./circle-fly"));
|
|
221
233
|
var _sceneRoam = _interopRequireDefault(require("./scene-roam"));
|
|
222
234
|
var _inundateAnalysis = _interopRequireDefault(require("./inundate-analysis"));
|
|
235
|
+
var _excavationAnalysis = _interopRequireDefault(require("./excavation-analysis"));
|
|
236
|
+
var _splitScreen = _interopRequireDefault(require("./split-screen"));
|
|
223
237
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
224
238
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_map","_interopRequireDefault","require","_useProps","_point","_marker","_polyline","_polygon","_label","_circle","_dom","_wall","_model","_groupLayer","_imageLayer","_featureLayer","_lineFlowLayer","_trailPolylineLayer","_flyLineLayer","_waterSurfaceLayer","_heatmapLayer","_gradationLineLayer","_gifDomLayer","_fenceLayer","_cesiumTilesLayer","_buildingTilesLayer","_pipeTilesLayer","_navigation","_tools","_legend","_circleFly","_sceneRoam","_inundateAnalysis","obj","__esModule"],"sources":["index.js"],"sourcesContent":["export { default as Map } from './map';\n\nexport { default as useProps } from './use-props';\n\nexport { default as Point } from './point';\nexport { default as Marker } from './marker';\nexport { default as Polyline } from './polyline';\nexport { default as Polygon } from './polygon';\nexport { default as Label } from './label';\nexport { default as Circle } from './circle';\nexport { default as Dom } from './dom';\nexport { default as Wall } from './wall';\nexport { default as Model } from './model';\n\nexport { default as GroupLayer } from './group-layer';\nexport { default as ImageLayer } from './image-layer';\nexport { default as FeatureLayer } from './feature-layer';\nexport { default as LineFlowLayer } from './line-flow-layer';\nexport { default as TrailPolylineLayer } from './trail-polyline-layer';\nexport { default as FlyLineLayer } from './fly-line-layer';\nexport { default as WaterSurfaceLayer } from './water-surface-layer';\nexport { default as HeatmapLayer } from './heatmap-layer';\nexport { default as GradationLineLayer } from './gradation-line-layer';\nexport { default as GifDomLayer } from './gif-dom-layer';\nexport { default as FenceLayer } from './fence-layer';\n\nexport { default as CesiumTilesLayer } from './cesium-tiles-layer';\nexport { default as BuildingTilesLayer } from './building-tiles-layer';\nexport { default as PipeTilesLayer } from './pipe-tiles-layer';\n\nexport { default as Navigation } from './navigation';\nexport { default as Tools } from './tools';\nexport { default as Legend } from './legend';\n\nexport { default as CircleFly } from './circle-fly';\nexport { default as SceneRoam } from './scene-roam';\nexport { default as InundateAnalysis } from './inundate-analysis';\n\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":["_map","_interopRequireDefault","require","_useProps","_point","_marker","_polyline","_polygon","_label","_circle","_dom","_wall","_model","_groupLayer","_imageLayer","_featureLayer","_lineFlowLayer","_trailPolylineLayer","_flyLineLayer","_waterSurfaceLayer","_heatmapLayer","_gradationLineLayer","_gifDomLayer","_fenceLayer","_cesiumTilesLayer","_buildingTilesLayer","_pipeTilesLayer","_navigation","_tools","_legend","_circleFly","_sceneRoam","_inundateAnalysis","_excavationAnalysis","_splitScreen","obj","__esModule"],"sources":["index.js"],"sourcesContent":["export { default as Map } from './map';\n\nexport { default as useProps } from './use-props';\n\nexport { default as Point } from './point';\nexport { default as Marker } from './marker';\nexport { default as Polyline } from './polyline';\nexport { default as Polygon } from './polygon';\nexport { default as Label } from './label';\nexport { default as Circle } from './circle';\nexport { default as Dom } from './dom';\nexport { default as Wall } from './wall';\nexport { default as Model } from './model';\n\nexport { default as GroupLayer } from './group-layer';\nexport { default as ImageLayer } from './image-layer';\nexport { default as FeatureLayer } from './feature-layer';\nexport { default as LineFlowLayer } from './line-flow-layer';\nexport { default as TrailPolylineLayer } from './trail-polyline-layer';\nexport { default as FlyLineLayer } from './fly-line-layer';\nexport { default as WaterSurfaceLayer } from './water-surface-layer';\nexport { default as HeatmapLayer } from './heatmap-layer';\nexport { default as GradationLineLayer } from './gradation-line-layer';\nexport { default as GifDomLayer } from './gif-dom-layer';\nexport { default as FenceLayer } from './fence-layer';\n\nexport { default as CesiumTilesLayer } from './cesium-tiles-layer';\nexport { default as BuildingTilesLayer } from './building-tiles-layer';\nexport { default as PipeTilesLayer } from './pipe-tiles-layer';\n\nexport { default as Navigation } from './navigation';\nexport { default as Tools } from './tools';\nexport { default as Legend } from './legend';\n\nexport { default as CircleFly } from './circle-fly';\nexport { default as SceneRoam } from './scene-roam';\nexport { default as InundateAnalysis } from './inundate-analysis';\nexport { default as ExcavationAnalysis } from './excavation-analysis';\nexport { default as SplitScreen } from './split-screen';\n\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,IAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,SAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,MAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,OAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,SAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,QAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,MAAA,GAAAP,sBAAA,CAAAC,OAAA;AACA,IAAAO,OAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,IAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,KAAA,GAAAV,sBAAA,CAAAC,OAAA;AACA,IAAAU,MAAA,GAAAX,sBAAA,CAAAC,OAAA;AAEA,IAAAW,WAAA,GAAAZ,sBAAA,CAAAC,OAAA;AACA,IAAAY,WAAA,GAAAb,sBAAA,CAAAC,OAAA;AACA,IAAAa,aAAA,GAAAd,sBAAA,CAAAC,OAAA;AACA,IAAAc,cAAA,GAAAf,sBAAA,CAAAC,OAAA;AACA,IAAAe,mBAAA,GAAAhB,sBAAA,CAAAC,OAAA;AACA,IAAAgB,aAAA,GAAAjB,sBAAA,CAAAC,OAAA;AACA,IAAAiB,kBAAA,GAAAlB,sBAAA,CAAAC,OAAA;AACA,IAAAkB,aAAA,GAAAnB,sBAAA,CAAAC,OAAA;AACA,IAAAmB,mBAAA,GAAApB,sBAAA,CAAAC,OAAA;AACA,IAAAoB,YAAA,GAAArB,sBAAA,CAAAC,OAAA;AACA,IAAAqB,WAAA,GAAAtB,sBAAA,CAAAC,OAAA;AAEA,IAAAsB,iBAAA,GAAAvB,sBAAA,CAAAC,OAAA;AACA,IAAAuB,mBAAA,GAAAxB,sBAAA,CAAAC,OAAA;AACA,IAAAwB,eAAA,GAAAzB,sBAAA,CAAAC,OAAA;AAEA,IAAAyB,WAAA,GAAA1B,sBAAA,CAAAC,OAAA;AACA,IAAA0B,MAAA,GAAA3B,sBAAA,CAAAC,OAAA;AACA,IAAA2B,OAAA,GAAA5B,sBAAA,CAAAC,OAAA;AAEA,IAAA4B,UAAA,GAAA7B,sBAAA,CAAAC,OAAA;AACA,IAAA6B,UAAA,GAAA9B,sBAAA,CAAAC,OAAA;AACA,IAAA8B,iBAAA,GAAA/B,sBAAA,CAAAC,OAAA;AACA,IAAA+B,mBAAA,GAAAhC,sBAAA,CAAAC,OAAA;AACA,IAAAgC,YAAA,GAAAjC,sBAAA,CAAAC,OAAA;AAAwD,SAAAD,uBAAAkC,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,gBAAAA,GAAA","ignoreList":[]}
|
package/lib/map/index.js
CHANGED
|
@@ -88,6 +88,7 @@ function Map(props) {
|
|
|
88
88
|
baseMapOptions = props.baseMapOptions,
|
|
89
89
|
_props$viewMode = props.viewMode,
|
|
90
90
|
viewMode = _props$viewMode === void 0 ? '2D' : _props$viewMode,
|
|
91
|
+
baseColor = props.baseColor,
|
|
91
92
|
setLoading = props.setLoading;
|
|
92
93
|
var _useState = (0, _react.useState)(false),
|
|
93
94
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -203,11 +204,17 @@ function Map(props) {
|
|
|
203
204
|
//设置背景透明
|
|
204
205
|
imageryProvider: imageryProvider
|
|
205
206
|
}, options));
|
|
207
|
+
|
|
208
|
+
// 设置地球暗色
|
|
206
209
|
if (dark) {
|
|
207
|
-
// 设置地球颜色
|
|
208
210
|
map.scene.globe.baseColor = _cesium.Color.fromCssColorString('#152937');
|
|
209
211
|
}
|
|
210
212
|
|
|
213
|
+
// 设置地球颜色
|
|
214
|
+
if (baseColor) {
|
|
215
|
+
map.scene.globe.baseColor = _cesium.Color.fromCssColorString(baseColor);
|
|
216
|
+
}
|
|
217
|
+
|
|
211
218
|
// 事件订阅
|
|
212
219
|
map.eventEmitter = new _EventEmitter["default"]();
|
|
213
220
|
|
|
@@ -556,7 +563,7 @@ function Map(props) {
|
|
|
556
563
|
};
|
|
557
564
|
|
|
558
565
|
// 鼠标事件控制器
|
|
559
|
-
var
|
|
566
|
+
var handleEvent = new _cesium.ScreenSpaceEventHandler(map.scene.canvas);
|
|
560
567
|
|
|
561
568
|
// 获取图层上的图形信息
|
|
562
569
|
map.pickDataSourcesFeature = function (event) {
|
|
@@ -689,7 +696,7 @@ function Map(props) {
|
|
|
689
696
|
}
|
|
690
697
|
|
|
691
698
|
// 点击事件
|
|
692
|
-
|
|
699
|
+
handleEvent.setInputAction(function (event) {
|
|
693
700
|
event.lonLat = map.getPositionLonLat(event);
|
|
694
701
|
map._clickObject = event;
|
|
695
702
|
registerMapEvent(event, 'onClick');
|
|
@@ -738,7 +745,7 @@ function Map(props) {
|
|
|
738
745
|
}, _cesium.ScreenSpaceEventType.LEFT_CLICK);
|
|
739
746
|
|
|
740
747
|
// 双击事件
|
|
741
|
-
|
|
748
|
+
handleEvent.setInputAction(function (event) {
|
|
742
749
|
map.trackedEntity = undefined; // 取消双击锁定
|
|
743
750
|
|
|
744
751
|
event.lonLat = map.getPositionLonLat(event);
|
|
@@ -757,7 +764,7 @@ function Map(props) {
|
|
|
757
764
|
};
|
|
758
765
|
|
|
759
766
|
// 鼠标移入移出
|
|
760
|
-
|
|
767
|
+
handleEvent.setInputAction(function (event) {
|
|
761
768
|
event.lonLat = map.getPositionLonLat({
|
|
762
769
|
position: event.endPosition
|
|
763
770
|
});
|
|
@@ -940,9 +947,9 @@ function Map(props) {
|
|
|
940
947
|
|
|
941
948
|
// 延时触发回调事件
|
|
942
949
|
setTimeout(function () {
|
|
943
|
-
createdMap && createdMap(map);
|
|
950
|
+
createdMap && createdMap(map, handleEvent);
|
|
944
951
|
addLabelImageryProvider();
|
|
945
|
-
onEvents.createdMap && onEvents.createdMap(map);
|
|
952
|
+
onEvents.createdMap && onEvents.createdMap(map, handleEvent);
|
|
946
953
|
setMapLoaded(true);
|
|
947
954
|
}, (duration + 0.5) * 1000);
|
|
948
955
|
} else {
|
|
@@ -967,9 +974,9 @@ function Map(props) {
|
|
|
967
974
|
|
|
968
975
|
// 延时触发回调事件
|
|
969
976
|
setTimeout(function () {
|
|
970
|
-
createdMap && createdMap(map);
|
|
977
|
+
createdMap && createdMap(map, handleEvent);
|
|
971
978
|
addLabelImageryProvider();
|
|
972
|
-
onEvents.createdMap && onEvents.createdMap(map);
|
|
979
|
+
onEvents.createdMap && onEvents.createdMap(map, handleEvent);
|
|
973
980
|
setMapLoaded(true);
|
|
974
981
|
}, 500);
|
|
975
982
|
}
|
|
@@ -984,7 +991,7 @@ function Map(props) {
|
|
|
984
991
|
style: _objectSpread({
|
|
985
992
|
width: width,
|
|
986
993
|
height: height,
|
|
987
|
-
background: dark ? '#152937' : '#cccccc'
|
|
994
|
+
background: baseColor || dark ? '#152937' : '#cccccc'
|
|
988
995
|
}, wrapDomStyle),
|
|
989
996
|
className: (0, _classnames["default"])('cs-map-container')
|
|
990
997
|
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
@@ -1024,6 +1031,7 @@ Map.propTypes = {
|
|
|
1024
1031
|
maxZoom: _propTypes["default"].number,
|
|
1025
1032
|
defaultPitch: _propTypes["default"].number,
|
|
1026
1033
|
dark: _propTypes["default"].bool,
|
|
1034
|
+
baseColor: _propTypes["default"].string,
|
|
1027
1035
|
mapStyle: _propTypes["default"].oneOfType(['vec', 'img']),
|
|
1028
1036
|
tk: _propTypes["default"].string.isRequired,
|
|
1029
1037
|
onEvents: _propTypes["default"].object,
|
package/lib/map/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_cesium","_ahooks","_HighlightLayer","_base","_getDefaultMapInfo2","_classnames","_events","_Popup","_Provider","_Layers","_EventEmitter","_useGetMapFeatureInfoByText","_lodash","_createFeatureCollection","_getBBoxFromGeojson","_heightAndZoom","_TdtImageryProvider","_IRSImageryProvider","_excluded","_excluded2","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_construct","_isNativeReflectConstruct","Reflect","construct","apply","arguments","o","push","p","bind","_setPrototypeOf","prototype","Boolean","valueOf","setPrototypeOf","_regeneratorRuntime","value","Symbol","iterator","c","asyncIterator","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","asyncGeneratorStep","gen","reject","_next","_throw","key","info","error","_asyncToGenerator","fn","self","args","err","undefined","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","iter","Array","from","isArray","_arrayLikeToArray","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","ownKeys","filter","_objectSpread","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","_toPrimitive","toPrimitive","String","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","minLen","toString","test","len","arr2","Map","props","_props$width","width","_props$height","height","_props$dark","dark","tk","children","onCloseTemplateBefore","onZoom","_props$defaultPitch","defaultPitch","_props$onEvents","onEvents","baseMapUrl","_props$duration","duration","_props$baseMapStyle","baseMapStyle","imageryProvider","style","_props$autoView","autoView","_props$highlightColor","highlightColor","hideHighlight","wrapDomStyle","mapDomStyle","baseMapOptions","_props$viewMode","viewMode","setLoading","_useState","useState","_useState2","mapLoaded","setMapLoaded","_useState3","_useState4","tipVis","setTipVis","_useState5","_useState6","tip","setTip","mapRef","useRef","mapDomRef","tipRef","popupRef","getMapFeatureInfoByText","useGetMapFeatureInfoByText","useEffect","initMap","useUpdateEffect","current","baseMap","setBaseMap","JSON","stringify","addLabelImageryProvider","hideLabel","cia","TdtLabelImageryProvider","imageryLayers","addImageryProvider","IRSLabelImageryProvider","layers","_layers","ciaLayer","find","item","_item$_imageryProvide","_imageryProvider","_layer","remove","center","fitViewHeight","zoom","createdMap","options","_getDefaultMapInfo","getDefaultMapInfo","minZoom","maxZoom","defaultZoomLevel","longitude","latitude","viewDefault","Ion","defaultAccessToken","Imagery","url","crs","map","Viewer","shouldAnimate","animation","baseLayerPicker","fullscreenButton","geocoder","homeButton","timeline","infoBox","sceneModePicker","selectionIndicator","sceneMode","SceneMode","SCENE3D","navigationHelpButton","scene3DOnly","navigationInstructionsInitiallyVisible","showRenderLoopErrors","process","env","NODE_ENV","orderIndependentTranslucency","scene","globe","baseColor","Color","fromCssColorString","eventEmitter","EventEmitter","helper","EventHelper","add","tileLoadProgressEvent","emit","RequestScheduler","maximumRequestsPerServer","throttleRequests","_cesiumWidget","_creditContainer","display","BaseMap","layer","Layers","highlightLayer","HighlightLayer","color","on","layersChange","layersAdd","layersRemove","layersClear","visible","onChange","hideTemplate","layersVisible","getAllKeys","getLayersShowKeys","getShowKeys","getLayersHiddenKeys","getHiddenKeys","setLayersShowByKeys","_keys","setShowByKeys","setLayersHideByKeys","setHideByKeys","addLayer","index","removeLayer","clearLayers","getImageLayers","getFeatureLayers","getImageryLastIndex","_index","getImageryLayers","findIndex","zIndex","_i","getAllLayers","_map$dataSources","_map$imageryLayers","_map$scene","dataSources","_dataSources","primitives","_primitives","concat","_map$imageryLayers2","includes","getLayerByFeature","entity","ImageryLayerFeatureInfo","_entity$imageryLayer","imageryLayer","Cesium3DTileset","Cesium3DTileFeature","_entity$primitive","primitive","Primitive","_entity$primitive2","get3DTileFeatureProperties","feature","properties","getPropertyNames","propertyIds","propertyId","getProperty","getProperties","_feature$primitive","data","id","_feature$_properties","_properties","getValue","_id","getLayerByKey","getLayerById","getLayerByKeys","destroyhighlightLayer","clearFeatures","addHighlightFeature","getVisibleLayersByKeys","show","showTip","content","hideTip","showTemplateByFilter","_ref","_callee","field","_highlightLayer","_callee$","_context","getFeatureByFieldValue","features","showTemplate","_x","_x2","_x3","_x4","handlePoint","ScreenSpaceEventHandler","canvas","pickDataSourcesFeature","event","position","pick","isObject","pickImageryLayerFeatures","pickRay","camera","getPickRay","getCenterPosition","centerResult","pickEllipsoid","Cartesian2","clientWidth","clientHeight","curPosition","Ellipsoid","WGS84","cartesianToCartographic","curLongitude","window","Math","PI","curLatitude","setViewMode","fitView","getViewExtend","params","extend","computeViewRectangle","upperLeft","lowerRight","ellipsoid","upperLeft3","lowerRight3","upperLeftCartographic","lowerRightCartographic","minx","CesiumMath","toDegrees","maxx","miny","maxy","east","north","west","south","heightToZoom","zoomToHeight","registerEventLayer","registerMapEvent","registerEvent","_feature$event","checkClickable","unclickable","viewOnly","setInputAction","lonLat","getPositionLonLat","_clickObject","cancelBubble","template","onClickTemplateAfter","featuresPromise","defined","when","sort","b","_layerIndex","ScreenSpaceEventType","LEFT_CLICK","trackedEntity","LEFT_DOUBLE_CLICK","hoverFeature","getUid","random","endPosition","labelField","tipTemplate","label","uid","hoverUid","MOUSE_MOVE","moveEnd","addEventListener","viewRectangle","cameraHeight","positionCartographic","ceil","_ref2","geoJson","geometryInfo","lng","lat","_ref2$height","rest","pitch","flyTo","offset","heading","toRadians","range","destination","Cartesian3","fromDegrees","orientation","roll","_geoJson","createFeatureCollection","box","getBBoxFromGeojson","padding","unit","Rectangle","_viewDefault$center","x","_viewDefault$center$","z","flyToBoundingSphere","BoundingSphere","HeadingPitchRange","cartesian","cartographic","Cartographic","fromCartesian","setTimeout","_viewDefault$center2","_viewDefault$center2$","setView","onMouseMove","left","nativeEvent","layerX","top","layerY","createElement","background","className","classnames","ref","onMouseOver","onMouseOut","showModal","_default","exports","propTypes","PropTypes","oneOfType","string","number","func","array","bool","mapStyle","isRequired","object","node"],"sources":["map/index.jsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport {\n Viewer,\n SceneMode,\n Cartesian3,\n Ion,\n defined,\n when,\n ScreenSpaceEventHandler,\n ScreenSpaceEventType,\n ImageryLayerFeatureInfo,\n Primitive,\n Cartesian2,\n Ellipsoid,\n Cartographic,\n Math as CesiumMath,\n Rectangle,\n BoundingSphere,\n HeadingPitchRange,\n RequestScheduler,\n Cesium3DTileFeature,\n Cesium3DTileset,\n EventHelper,\n Color\n} from 'cesium';\nimport { useUpdateEffect } from 'ahooks';\nimport HighlightLayer from '../highlight-layer/HighlightLayer';\nimport { BaseMap, Imagery } from './base';\nimport './material';\nimport getDefaultMapInfo from '../_util/getDefaultMapInfo';\nimport 'cesium/Build/Cesium/Widgets/widgets.css';\nimport classnames from 'classnames';\nimport { registerEventLayer } from '../events';\nimport Popup from './Popup';\nimport Provider from '../_util/Provider';\nimport Layers from './Layers';\nimport EventEmitter from '../_util/EventEmitter';\nimport useGetMapFeatureInfoByText from './hooks/useGetMapFeatureInfoByText';\nimport { isObject } from 'lodash';\nimport { createFeatureCollection } from '../feature-layer/createFeatureCollection';\nimport getBBoxFromGeojson from '../_util/getBBoxFromGeojson.js';\nimport { heightToZoom, zoomToHeight } from '../_util/heightAndZoom.js';\nimport {TdtLabelImageryProvider} from \"./base/imagery/tdt/TdtImageryProvider\";\nimport {IRSLabelImageryProvider} from \"./base/imagery/irs/IRSImageryProvider\";\n\nfunction Map(props) {\n const {\n width = '100%',\n height = '100%',\n dark = true,\n tk,\n children,\n onCloseTemplateBefore,\n onZoom,\n defaultPitch = -88.0,\n onEvents = {},\n baseMapUrl,\n duration = 3,\n baseMapStyle = {\n imageryProvider: 'GeoQImageryProvider',\n style: 'Blue',\n },\n autoView = true,\n highlightColor = '#f7ff01',\n hideHighlight,\n wrapDomStyle,\n mapDomStyle,\n baseMapOptions,\n viewMode = '2D',\n setLoading\n } = props;\n\n const [mapLoaded, setMapLoaded] = useState(false);\n const [tipVis, setTipVis] = useState(false);\n const [tip, setTip] = useState(null);\n\n const mapRef = useRef(null);\n const mapDomRef = useRef(null);\n const tipRef = useRef(null);\n const popupRef = useRef();\n const getMapFeatureInfoByText = useGetMapFeatureInfoByText(mapRef);\n\n useEffect(() => {\n initMap();\n\n return () => {\n setLoading?.(false)\n }\n }, []);\n\n useUpdateEffect(() => {\n if (mapRef.current) {\n mapRef.current.baseMap.setBaseMap(baseMapStyle);\n }\n }, [JSON.stringify(baseMapStyle)])\n\n const addLabelImageryProvider = () => {\n if (!baseMapStyle.hideLabel) {\n // 调用影响中文注记服务\n if (baseMapStyle.imageryProvider === 'TdtImageryProvider') {\n let cia = new TdtLabelImageryProvider({tk, ...baseMapStyle});\n mapRef.current.imageryLayers.addImageryProvider(cia); // 添加到cesium图层上\n } else if (baseMapStyle.imageryProvider === 'IRSImageryProvider') {\n let cia = new IRSLabelImageryProvider(baseMapStyle);\n mapRef.current.imageryLayers.addImageryProvider(cia); // 添加到cesium图层上\n }\n } else {\n if (mapRef.current) {\n let layers = mapRef.current.imageryLayers._layers || [];\n const ciaLayer = layers.find(item => item._imageryProvider?._layer === 'cia_w');\n if (ciaLayer) {\n mapRef.current.imageryLayers.remove(ciaLayer);\n }\n }\n }\n };\n\n const initMap = () => {\n const { center, fitViewHeight, dark, zoom, createdMap, ...options } = props;\n\n let { minZoom, maxZoom, defaultZoomLevel, longitude, latitude } = getDefaultMapInfo();\n\n // 全屏\n let viewDefault = {\n center: center ||\n (longitude && latitude && [longitude, latitude]) || [120.081627, 30.89638],\n zoom: zoom || (defaultZoomLevel && Number(defaultZoomLevel)) || 0,\n minZoom: (minZoom && Number(minZoom)) || 0,\n maxZoom: (maxZoom && Number(maxZoom)) || 20,\n };\n Ion.defaultAccessToken =\n 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJhZjc0ZDQ1ZS0wNWNhLTRhMDQtODJmYy03NTcyNDcxYzgzMDUiLCJpZCI6NzE4MTQsImlhdCI6MTYzNTQ3NzgyNX0.4TrdZWPWc9_6jLeGe90bRmBPB14XptwinSewVMu1iCE';\n\n let imageryProvider = new Imagery[baseMapStyle.imageryProvider]({\n style: baseMapStyle.style,\n url: baseMapUrl,\n crs: 'WGS84',\n dark,\n ...baseMapStyle\n });\n\n let map = new Viewer(mapDomRef.current, {\n shouldAnimate: true,\n animation: false, // 控制场景动画的播放速度控件\n baseLayerPicker: false, // 底图切换控件\n fullscreenButton: false, // 全屏控件\n geocoder: false, // 地理位置查询定位控件\n homeButton: false, // 默认相机位置控件\n timeline: false, // 时间滚动条控件\n infoBox: false, //是否显示信息框\n sceneModePicker: false, //是否显示3D/2D选择器\n selectionIndicator: false, // 点击点绿色弹出 是否显示选取指示器组件\n sceneMode: SceneMode.SCENE3D, //设定3维地图的默认场景模式: SceneMode.SCENE2D、SceneMode.SCENE3D、SceneMode.MORPHING\n navigationHelpButton: false, // 默认的相机控制提示控件\n scene3DOnly: true, // 每个几何实例仅以3D渲染以节省GPU内存\n navigationInstructionsInitiallyVisible: false,\n showRenderLoopErrors: process.env.NODE_ENV === 'development', //是否显示渲染错误\n orderIndependentTranslucency: false, //设置背景透明\n imageryProvider,\n\n ...options,\n });\n\n if (dark) {\n // 设置地球颜色\n map.scene.globe.baseColor = Color.fromCssColorString('#152937');\n }\n\n // 事件订阅\n map.eventEmitter = new EventEmitter();\n\n // 监听加载是否完成\n const helper = new EventHelper();\n helper.add(map.scene.globe.tileLoadProgressEvent, (e) => {\n setLoading?.(true);\n map.eventEmitter.emit('loading', e);\n if (e === 0) {\n setLoading?.(false)\n }\n })\n\n // 设置cesium请求调度器的最大并发数量\n RequestScheduler.maximumRequestsPerServer = 18;\n\n // 关闭请求调度器的请求节流\n RequestScheduler.throttleRequests = false;\n\n map.viewMode = viewMode;\n\n map.autoView = autoView; // 自动调整视角\n\n // 去版权信息\n map._cesiumWidget._creditContainer.style.display = 'none'; // 隐藏cesium ion\n\n mapRef.current = map;\n map.dark = dark;\n\n // 地图fit高度\n map.fitViewHeight = fitViewHeight || 5000;\n\n // 隐藏高亮效果\n map.hideHighlight = hideHighlight\n\n // 底图服务\n map.baseMap = new BaseMap({\n map,\n imageryProvider: baseMapStyle.imageryProvider,\n style: baseMapStyle.style,\n layer: imageryProvider,\n options: baseMapOptions,\n });\n\n // 添加 dataSource 和 imagery 图层\n map.layers = new Layers({ map });\n\n // 高亮图层\n map.highlightLayer = new HighlightLayer({\n map,\n color: highlightColor,\n });\n\n // 图层改变的时候\n map.layers.on('change', layers => {\n onEvents.layersChange && onEvents.layersChange(layers);\n map.eventEmitter.emit('layersChange', layers);\n });\n\n // 图层新增\n map.layers.on('add', layer => {\n onEvents.layersAdd && onEvents.layersAdd(layer);\n map.eventEmitter.emit('layersAdd', layer);\n });\n\n // 图层移除\n map.layers.on('remove', layer => {\n onEvents.layersRemove && onEvents.layersRemove(layer);\n map.eventEmitter.emit('layersRemove', layer);\n });\n\n // 图层清空\n map.layers.on('clear', () => {\n onEvents.layersClear && onEvents.layersClear();\n map.eventEmitter.emit('layersClear');\n });\n\n // 图层展示隐藏\n map.layers.on('visible', (layer, visible) => {\n map.layers.onChange(); // 触发图层改变\n\n // 图层关闭时,隐藏自身的气泡\n if (!visible && map.popupRef) {\n map.hideTemplate(layer);\n }\n\n onEvents.layersVisible && onEvents.layersVisible(layer, visible);\n map.eventEmitter.emit('layersVisible');\n });\n\n // 图层变化\n map.layersChange = () => {\n map.layers.onChange();\n };\n\n // 获取 layers 里面的 key 集合\n map.getAllKeys = () => {\n return map.layers.getAllKeys();\n };\n\n // 获取当前展示的 keys\n map.getLayersShowKeys = () => {\n return map.layers.getShowKeys();\n };\n\n // 获取当前隐藏的 keys\n map.getLayersHiddenKeys = () => {\n return map.layers.getHiddenKeys();\n };\n\n // 根据 keys 设置图层的显示,其他的隐藏\n map.setLayersShowByKeys = _keys => {\n return map.layers.setShowByKeys(_keys);\n };\n\n // 根据 keys 设置图层的隐藏,其他的显示\n map.setLayersHideByKeys = _keys => {\n return map.layers.setHideByKeys(_keys);\n };\n\n // 添加图层\n map.addLayer = (layer, index) => {\n return map.layers.addLayer(layer, index);\n };\n\n // 移除图层\n map.removeLayer = layer => {\n return map.layers.removeLayer(layer);\n };\n\n // 清除图层和entity\n map.clearLayers = () => {\n return map.layers.clearLayers();\n };\n\n // 获取 ImageLayer 图层\n map.getImageLayers = keys => {\n return map.layers.getImageLayers(keys);\n };\n\n // 获取 FeatureLayer 图层\n map.getFeatureLayers = keys => {\n return map.layers.getFeatureLayers(keys);\n };\n\n // 获取 Imagery 图层最后一个 index 值\n map.getImageryLastIndex = _index => {\n let index = 1;\n const layers = map.getImageryLayers();\n if (layers?.length) {\n if (_index && layers.findIndex(v => _index < v.zIndex) !== -1) {\n let _i = layers.findIndex(v => _index < v.zIndex) + 1;\n index = _i < index ? _i : index;\n } else {\n index = layers.length;\n }\n }\n\n return index;\n };\n\n // 查找所有dataSource和imagery图层\n map.getAllLayers = () => {\n const dataSources = map?.dataSources?._dataSources || [];\n const imageryLayers = map?.imageryLayers?._layers || [];\n const primitives = map?.scene?.primitives?._primitives || [];\n\n return [...dataSources, ...imageryLayers, ...primitives];\n };\n\n // 根据key查找imageryLayers图层\n map.getImageryLayers = _keys => {\n const layers = map?.imageryLayers?._layers || [];\n\n if (_keys && layers.length) {\n const keys = Array.isArray(_keys) ? _keys : [_keys];\n\n return layers.filter(layer => layer.key && keys.includes(layer.key));\n }\n\n return layers;\n };\n\n // 通过图形查询所属图层\n map.getLayerByFeature = entity => {\n if (!entity) return\n return map.getAllLayers().find(layer => {\n if (entity instanceof ImageryLayerFeatureInfo) {\n if (layer?.key && layer.key === entity?.imageryLayer?.key) {\n return layer;\n }\n } else if (layer instanceof Cesium3DTileset && entity instanceof Cesium3DTileFeature) {\n if (layer?.key && layer.key === entity?.primitive?.key) {\n return layer;\n }\n } else if (layer instanceof Primitive) {\n if (layer?.key && layer.key === entity?.primitive?.key) {\n return layer;\n }\n } else {\n if (layer?.key && layer.key === entity?.key) {\n return layer;\n }\n }\n });\n };\n\n // 获取 3DTiles feature 属性\n map.get3DTileFeatureProperties = (feature) => {\n let properties = {};\n if (feature && feature.getPropertyNames) {\n const propertyIds = feature.getPropertyNames() || [];\n if (propertyIds?.length) {\n const length = propertyIds.length;\n for (let i = 0; i < length; ++i) {\n const propertyId = propertyIds[i];\n properties[propertyId] = feature.getProperty(propertyId);\n }\n }\n }\n\n return properties\n }\n\n // 获取entity中数据\n map.getProperties = feature => {\n if (feature instanceof Cesium3DTileFeature) {\n return map.get3DTileFeatureProperties(feature);\n } else if (feature?.primitive?.data && feature?.primitive instanceof Primitive) {\n return feature.primitive.data.find(item => item.id === feature.id);\n } else {\n let properties =\n feature?._properties?.getValue(feature._id) || feature?.properties || {};\n properties = properties?.properties || properties;\n return properties;\n }\n\n };\n\n // 通过key查询图层\n map.getLayerByKey = key => {\n return map.getAllLayers().find(layer => {\n return key && layer.key && layer.key === key;\n });\n };\n\n // 根据id查询图层\n map.getLayerById = map.getLayerByKey;\n\n // 通过keys查询多个图层\n map.getLayerByKeys = keys => {\n return map.getAllLayers().filter(layer => {\n return layer.key && keys.includes(layer.key);\n });\n };\n map.destroyhighlightLayer = () => {\n map.highlightLayer.clearFeatures();\n };\n // 添加高亮entity\n map.addHighlightFeature = (feature, style) => {\n map.highlightLayer.addHighlightFeature(feature, style);\n };\n // 通过返回值控制是否执行关闭\n map.onCloseTemplateBefore = feature => {\n // 清除高亮\n map.destroyhighlightLayer();\n if (onCloseTemplateBefore) {\n return onCloseTemplateBefore(feature);\n }\n };\n\n // 根据key查找展示的图层\n map.getVisibleLayersByKeys = keys => {\n let layers = map.getAllLayers() || [];\n return layers.filter(layer => {\n if (typeof keys === 'string') {\n return layer.key === keys && layer.show;\n } else if (Array.isArray(keys)) {\n return keys.includes(layer.key) && layer.show;\n } else {\n return layer.show && layer.key;\n }\n });\n };\n\n // 展示提示\n map.showTip = content => {\n setTip(content);\n };\n\n // 隐藏提示\n map.hideTip = () => {\n setTip(null);\n };\n\n // 根据图层条件设置图层选中\n map.showTemplateByFilter = async (key, field, value, _highlightLayer) => {\n let layer = map.getLayerByKey(key);\n if (layer?.show) {\n let obj = layer.getFeatureByFieldValue(field, value);\n if (obj) {\n if (obj.then) {\n obj.then(features => {\n if (features?.length) {\n let feature = features[0];\n map.showTemplate(\n feature.feature,\n _highlightLayer || map.highlightLayer,\n );\n }\n });\n } else {\n map.showTemplate(obj, _highlightLayer || map.highlightLayer);\n }\n } else {\n map.hideTemplate();\n }\n }\n };\n\n // 展示看板\n map.showTemplate = feature => {\n popupRef.current.showTemplate(feature);\n };\n\n // 隐藏看板\n map.hideTemplate = () => {\n popupRef.current.hideTemplate();\n };\n\n // 鼠标事件控制器\n let handlePoint = new ScreenSpaceEventHandler(map.scene.canvas);\n\n // 获取图层上的图形信息\n map.pickDataSourcesFeature = event => {\n if (event?.position) {\n const { position } = event;\n const pick = map.scene.pick(position);\n if (isObject(pick?.id)) {\n return pick.id;\n }\n\n return pick;\n }\n };\n\n // 根据关键字获取图形信息\n map.getMapFeatureInfoByText = getMapFeatureInfoByText;\n\n // 获取wms的图形数据\n map.pickImageryLayerFeatures = event => {\n if (event?.position) {\n const { position } = event;\n const pickRay = map.camera.getPickRay(position);\n\n return map.imageryLayers.pickImageryLayerFeatures(pickRay, map.scene);\n }\n };\n\n // 获取当前地图中心的经纬度\n map.getCenterPosition = () => {\n let centerResult = map.camera.pickEllipsoid(\n new Cartesian2(map.canvas.clientWidth / 2, map.canvas.clientHeight / 2),\n );\n let curPosition = Ellipsoid.WGS84.cartesianToCartographic(centerResult);\n let curLongitude = (curPosition.longitude * 180) / window.Math.PI;\n let curLatitude = (curPosition.latitude * 180) / window.Math.PI;\n return [curLongitude, curLatitude];\n };\n\n // 二三维切换\n map.setViewMode = type => {\n map.viewMode = type;\n map.fitView();\n };\n\n // 获取当前地图视图的边界\n map.getViewExtend = () => {\n let params = {};\n let extend = map.camera.computeViewRectangle();\n if (typeof extend === 'undefined') {\n //2D下会可能拾取不到坐标,extend返回undefined,因此作如下转换\n let canvas = map.scene.canvas;\n let upperLeft = new Cartesian2(0, 0); //canvas左上角坐标转2d坐标\n let lowerRight = new Cartesian2(canvas.clientWidth, canvas.clientHeight); //canvas右下角坐标转2d坐标\n\n let ellipsoid = map.scene.globe.ellipsoid;\n let upperLeft3 = map.camera.pickEllipsoid(upperLeft, ellipsoid); //2D转3D世界坐标\n\n let lowerRight3 = map.camera.pickEllipsoid(lowerRight, ellipsoid); //2D转3D世界坐标\n\n let upperLeftCartographic = map.scene.globe.ellipsoid.cartesianToCartographic(\n upperLeft3,\n ); //3D世界坐标转弧度\n let lowerRightCartographic = map.scene.globe.ellipsoid.cartesianToCartographic(\n lowerRight3,\n ); //3D世界坐标转弧度\n\n let minx = CesiumMath.toDegrees(upperLeftCartographic.longitude); //弧度转经纬度\n let maxx = CesiumMath.toDegrees(lowerRightCartographic.longitude); //弧度转经纬度\n\n let miny = CesiumMath.toDegrees(lowerRightCartographic.latitude); //弧度转经纬度\n let maxy = CesiumMath.toDegrees(upperLeftCartographic.latitude); //弧度转经纬度\n\n params.minx = minx;\n params.maxx = maxx;\n params.miny = miny;\n params.maxy = maxy;\n } else {\n //3D获取方式\n params.maxx = CesiumMath.toDegrees(extend.east);\n params.maxy = CesiumMath.toDegrees(extend.north);\n\n params.minx = CesiumMath.toDegrees(extend.west);\n params.miny = CesiumMath.toDegrees(extend.south);\n }\n\n // 返回屏幕所在经纬度范围\n return params;\n };\n\n // 根据camera高度近似计算当前层级\n map.heightToZoom = heightToZoom;\n\n // 根据当前层级近似计算camera高度\n map.zoomToHeight = zoomToHeight;\n\n // 注册事件\n registerEventLayer(map, props);\n\n // 注册地图组件事件\n function registerMapEvent(e, event) {\n if (map[event]) {\n map[event](e);\n onEvents[event] && onEvents[event](e);\n }\n }\n\n // 注册图层组件事件\n function registerEvent(feature, event) {\n if (feature) {\n let layer = map.getLayerByFeature(feature);\n if (layer?.[event] || feature[event]) {\n let properties = map.getProperties(feature) || {};\n if (feature instanceof ImageryLayerFeatureInfo && feature?.data) {\n properties = {\n ...properties,\n data: feature?.data,\n };\n }\n\n // 触发自身事件\n feature[event]?.(properties);\n\n if (layer?.[event]) {\n layer[event](properties);\n }\n }\n }\n }\n\n // 监测图层是否允许点击\n function checkClickable(feature) {\n let layer = map.getLayerByFeature(feature);\n let unclickable = false;\n // 无法单独设置group内的图层\n // 暂时为了取消行政区划影像图层的点击效果\n if (layer) {\n unclickable = layer.viewOnly || layer.unclickable;\n }\n return unclickable;\n }\n\n // 点击事件\n handlePoint.setInputAction(event => {\n event.lonLat = map.getPositionLonLat(event);\n map._clickObject = event;\n registerMapEvent(event, 'onClick');\n map.hideTip();\n\n // 是否禁止冒泡\n if (!map.cancelBubble) {\n const pick = map.scene.pick(event.position);\n if (pick instanceof Cesium3DTileFeature) {\n let layer = map.getLayerByFeature(pick);\n if (layer) {\n if (layer.unclickable) {\n return\n }\n\n registerEvent(pick, 'onClick');\n\n if (layer.template) {\n map.onClickTemplateAfter && map.onClickTemplateAfter(pick);\n\n map.showTemplate(pick);\n }\n }\n } else {\n const entity = map.pickDataSourcesFeature(event);\n const featuresPromise = map.pickImageryLayerFeatures(event);\n if (entity) {\n\n registerEvent(entity, 'onClick');\n\n let layer = map.getLayerByFeature(entity);\n if (Array.isArray(entity) || (layer && layer.template)) {\n map.onClickTemplateAfter && map.onClickTemplateAfter(entity);\n map.showTemplate(entity);\n }\n\n } else if (defined(featuresPromise)) {\n when(featuresPromise, features => {\n features.sort((a, b) => {\n return b.imageryLayer._layerIndex - a.imageryLayer._layerIndex;\n });\n\n const feature = features?.[0];\n if (checkClickable(feature)) {\n return;\n }\n registerEvent(feature, 'onClick');\n map.showTemplate(feature);\n });\n }\n }\n }\n }, ScreenSpaceEventType.LEFT_CLICK);\n\n // 双击事件\n handlePoint.setInputAction(event => {\n map.trackedEntity = undefined; // 取消双击锁定\n\n event.lonLat = map.getPositionLonLat(event);\n\n registerMapEvent(event, 'onDoubleClick');\n\n const feature = map.pickDataSourcesFeature(event);\n\n registerEvent(feature, 'onDoubleClick');\n }, ScreenSpaceEventType.LEFT_DOUBLE_CLICK);\n\n // 鼠标移动\n let hoverFeature;\n const getUid = feature => {\n if (feature && !feature._id) {\n feature._id = window.Math.random();\n }\n\n return feature._id;\n };\n\n // 鼠标移入移出\n handlePoint.setInputAction(event => {\n event.lonLat = map.getPositionLonLat({ position: event.endPosition });\n\n registerMapEvent(event, 'onMouseMove');\n const feature = map.pickDataSourcesFeature({ position: event.endPosition });\n\n if (feature) {\n let layer = map.getLayerByFeature(feature);\n if (layer && (layer.labelField || layer.tipTemplate)) {\n const {labelField, tipTemplate} = layer;\n const properties = map.getProperties(feature);\n\n let label;\n if (tipTemplate) {\n label = tipTemplate(properties);\n } else {\n label = properties ? properties[labelField] : '';\n }\n\n if (label) {\n map.showTip(label);\n } else {\n map.hideTip();\n }\n } else {\n map.hideTip();\n }\n\n registerEvent(feature, 'onMouseMove');\n\n // 判断是否在图形内移动\n if (hoverFeature) {\n let uid = getUid(feature);\n let hoverUid = getUid(hoverFeature);\n\n // 判断是否进入新的图形\n if (uid !== hoverUid) {\n registerEvent(hoverFeature, 'onMouseLeave');\n\n registerEvent(feature, 'onMouseEnter');\n hoverFeature = feature;\n }\n } else {\n registerEvent(feature, 'onMouseEnter');\n hoverFeature = feature;\n }\n\n registerEvent(feature, 'onMouseMove');\n } else {\n if (hoverFeature) {\n registerEvent(hoverFeature, 'onMouseLeave');\n }\n\n hoverFeature = null;\n map.hideTip();\n }\n }, ScreenSpaceEventType.MOUSE_MOVE);\n\n // 层级事件\n if (onZoom) {\n map.camera.moveEnd.addEventListener(() => {\n let viewRectangle = map.camera.computeViewRectangle();\n const west = (viewRectangle.west / window.Math.PI) * 180; // 左上方(西)\n const north = (viewRectangle.north / window.Math.PI) * 180; //右上方(北)\n const east = (viewRectangle.east / window.Math.PI) * 180; // 右下方(东)\n const south = (viewRectangle.south / window.Math.PI) * 180; // 左下方(南)\n const cameraHeight = map.camera.positionCartographic.height;\n const zoom = map.heightToZoom(window.Math.ceil(height));\n onZoom && onZoom({ west, north, east, south, cameraHeight, viewRectangle, zoom });\n });\n }\n\n // 动态调整视角,不传参数为默认视角,参数可以是图层、图形、数据等\n map.fitView = e => {\n const {\n geoJson,\n geometryInfo,\n data,\n entity,\n lng,\n lat,\n height = 50000,\n options,\n ...rest\n } = e || {};\n let pitch = map.camera.pitch;\n\n // 判断是否点击了图形\n if (entity) {\n if (map.viewMode === '3D') {\n map.flyTo(entity, { duration: 2 });\n } else {\n map.flyTo(entity, {\n duration: 2,\n offset: {\n heading: CesiumMath.toRadians(0.0),\n pitch,\n range: height,\n },\n });\n }\n } else if (lng && lat) {\n map.camera.flyTo({\n destination: new Cartesian3.fromDegrees(Number(lng), Number(lat), height),\n orientation: {\n pitch: CesiumMath.toRadians(-88.0),\n roll: 0.0,\n },\n duration: 2,\n ...rest,\n });\n } else if (data || geometryInfo || geoJson) {\n let _geoJson = geoJson;\n\n if (geometryInfo) {\n _geoJson = createFeatureCollection([{ geometryInfo }]);\n }\n\n if (data) {\n _geoJson = createFeatureCollection(Array.isArray(data) ? data : [data]);\n }\n\n let box = getBBoxFromGeojson(_geoJson, {\n padding: 100,\n unit: 'px', // px | m\n ...options,\n }); // 单位为米\n\n map.camera.flyTo({\n destination: new Rectangle.fromDegrees(...box), //west, south, east, north,\n orientation: {\n pitch:\n map.viewMode === '3D'\n ? CesiumMath.toRadians(-35)\n : CesiumMath.toRadians(defaultPitch),\n roll: 0.0,\n },\n duration: 2,\n ...rest,\n });\n } else {\n let [x, y, z = 80000.0] = viewDefault.center;\n\n if (map.viewMode === '3D') {\n const center = Cartesian3.fromDegrees(x, y);\n const heading = CesiumMath.toRadians(0.0);\n const pitch = CesiumMath.toRadians(-35.0);\n map.camera.flyToBoundingSphere(new BoundingSphere(center, z), {\n offset: new HeadingPitchRange(heading, pitch, z),\n duration: 2,\n });\n } else {\n map.camera.flyTo({\n destination: new Cartesian3.fromDegrees(x, y, z),\n orientation: {\n pitch: CesiumMath.toRadians(defaultPitch),\n roll: 0.0,\n },\n duration: 2,\n });\n }\n }\n };\n\n map.getPositionLonLat = event => {\n const cartesian = map.camera.pickEllipsoid(event.position, map.scene.globe.ellipsoid); // Cartesian3对象\n if (cartesian) {\n const cartographic = Cartographic.fromCartesian(cartesian); // 经纬高对象\n const lng = CesiumMath.toDegrees(cartographic.longitude);\n const lat = CesiumMath.toDegrees(cartographic.latitude);\n return [lng, lat];\n }\n\n return [];\n };\n\n if (duration) {\n // 自动调整视角\n map.fitView();\n\n // 延时触发回调事件\n setTimeout(() => {\n createdMap && createdMap(map);\n\n addLabelImageryProvider();\n\n onEvents.createdMap && onEvents.createdMap(map);\n\n setMapLoaded(true);\n }, (duration + 0.5) * 1000);\n } else {\n const [x, y, z = 80000.0] = viewDefault.center;\n if (map.viewMode === '3D') {\n const center = Cartesian3.fromDegrees(x, y);\n const heading = CesiumMath.toRadians(0.0);\n const pitch = CesiumMath.toRadians(-35.0);\n map.camera.flyToBoundingSphere(new BoundingSphere(center, z), {\n offset: new HeadingPitchRange(heading, pitch, z),\n duration: 0,\n });\n } else {\n map.camera.setView({\n destination: new Cartesian3.fromDegrees(x, y, z),\n });\n }\n\n\n // 延时触发回调事件\n setTimeout(() => {\n createdMap && createdMap(map);\n\n addLabelImageryProvider();\n\n onEvents.createdMap && onEvents.createdMap(map);\n\n setMapLoaded(true);\n }, 500);\n }\n };\n\n const onMouseMove = event => {\n if (tip && tipRef.current) {\n tipRef.current.style.left = `${event.nativeEvent.layerX + 15}px`;\n tipRef.current.style.top = `${event.nativeEvent.layerY + 15}px`;\n }\n };\n\n return (\n <div\n style={{ width, height, background: dark ? '#152937' : '#cccccc', ...wrapDomStyle }}\n className={classnames('cs-map-container')}\n >\n <div\n ref={mapDomRef}\n className={classnames('cs-map')}\n onMouseMove={onMouseMove}\n onMouseOver={() => setTipVis(true)}\n onMouseOut={() => setTipVis(false)}\n style={mapDomStyle}\n >\n {tip && tipVis && (\n <div ref={tipRef} className={classnames('custom-tip')}>\n {tip}\n </div>\n )}\n </div>\n\n {mapLoaded && (\n <Provider\n value={{\n map: mapRef.current,\n showModal: props.showModal,\n }}\n >\n {children}\n {mapRef.current && <Popup ref={popupRef} map={mapRef.current} />}\n </Provider>\n )}\n </div>\n );\n}\n\nexport default Map;\n\nMap.propTypes = {\n width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n createdMap: PropTypes.func,\n onCloseTemplateBefore: PropTypes.func,\n onZoom: PropTypes.func,\n center: PropTypes.array,\n zoom: PropTypes.number,\n minZoom: PropTypes.number,\n maxZoom: PropTypes.number,\n defaultPitch: PropTypes.number,\n dark: PropTypes.bool,\n mapStyle: PropTypes.oneOfType(['vec', 'img']),\n tk: PropTypes.string.isRequired,\n onEvents: PropTypes.object,\n baseMapUrl: PropTypes.string,\n duration: PropTypes.number,\n baseMapStyle: PropTypes.object,\n children: PropTypes.node,\n autoView: PropTypes.bool,\n highlightColor: PropTypes.string,\n viewMode: PropTypes.string,\n showModal: PropTypes.func,\n wrapDomStyle: PropTypes.object,\n mapDomStyle: PropTypes.object,\n baseMapOptions: PropTypes.object,\n setLoading: PropTypes.func,\n fitViewHeight: PropTypes.number,\n hideHighlight: PropTypes.bool,\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_cesium","_ahooks","_HighlightLayer","_base","_getDefaultMapInfo2","_classnames","_events","_Popup","_Provider","_Layers","_EventEmitter","_useGetMapFeatureInfoByText","_lodash","_createFeatureCollection","_getBBoxFromGeojson","_heightAndZoom","_TdtImageryProvider","_IRSImageryProvider","_excluded","_excluded2","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_construct","_isNativeReflectConstruct","Reflect","construct","apply","arguments","o","push","p","bind","_setPrototypeOf","prototype","Boolean","valueOf","setPrototypeOf","_regeneratorRuntime","value","Symbol","iterator","c","asyncIterator","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","isNaN","length","displayName","isGeneratorFunction","constructor","name","mark","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","_catch","delegateYield","asyncGeneratorStep","gen","reject","_next","_throw","key","info","error","_asyncToGenerator","fn","self","args","err","undefined","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","iter","Array","from","isArray","_arrayLikeToArray","_objectWithoutProperties","source","excluded","target","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","ownKeys","filter","_objectSpread","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","_toPrimitive","toPrimitive","String","Number","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","minLen","toString","test","len","arr2","Map","props","_props$width","width","_props$height","height","_props$dark","dark","tk","children","onCloseTemplateBefore","onZoom","_props$defaultPitch","defaultPitch","_props$onEvents","onEvents","baseMapUrl","_props$duration","duration","_props$baseMapStyle","baseMapStyle","imageryProvider","style","_props$autoView","autoView","_props$highlightColor","highlightColor","hideHighlight","wrapDomStyle","mapDomStyle","baseMapOptions","_props$viewMode","viewMode","baseColor","setLoading","_useState","useState","_useState2","mapLoaded","setMapLoaded","_useState3","_useState4","tipVis","setTipVis","_useState5","_useState6","tip","setTip","mapRef","useRef","mapDomRef","tipRef","popupRef","getMapFeatureInfoByText","useGetMapFeatureInfoByText","useEffect","initMap","useUpdateEffect","current","baseMap","setBaseMap","JSON","stringify","addLabelImageryProvider","hideLabel","cia","TdtLabelImageryProvider","imageryLayers","addImageryProvider","IRSLabelImageryProvider","layers","_layers","ciaLayer","find","item","_item$_imageryProvide","_imageryProvider","_layer","remove","center","fitViewHeight","zoom","createdMap","options","_getDefaultMapInfo","getDefaultMapInfo","minZoom","maxZoom","defaultZoomLevel","longitude","latitude","viewDefault","Ion","defaultAccessToken","Imagery","url","crs","map","Viewer","shouldAnimate","animation","baseLayerPicker","fullscreenButton","geocoder","homeButton","timeline","infoBox","sceneModePicker","selectionIndicator","sceneMode","SceneMode","SCENE3D","navigationHelpButton","scene3DOnly","navigationInstructionsInitiallyVisible","showRenderLoopErrors","process","env","NODE_ENV","orderIndependentTranslucency","scene","globe","Color","fromCssColorString","eventEmitter","EventEmitter","helper","EventHelper","add","tileLoadProgressEvent","emit","RequestScheduler","maximumRequestsPerServer","throttleRequests","_cesiumWidget","_creditContainer","display","BaseMap","layer","Layers","highlightLayer","HighlightLayer","color","on","layersChange","layersAdd","layersRemove","layersClear","visible","onChange","hideTemplate","layersVisible","getAllKeys","getLayersShowKeys","getShowKeys","getLayersHiddenKeys","getHiddenKeys","setLayersShowByKeys","_keys","setShowByKeys","setLayersHideByKeys","setHideByKeys","addLayer","index","removeLayer","clearLayers","getImageLayers","getFeatureLayers","getImageryLastIndex","_index","getImageryLayers","findIndex","zIndex","_i","getAllLayers","_map$dataSources","_map$imageryLayers","_map$scene","dataSources","_dataSources","primitives","_primitives","concat","_map$imageryLayers2","includes","getLayerByFeature","entity","ImageryLayerFeatureInfo","_entity$imageryLayer","imageryLayer","Cesium3DTileset","Cesium3DTileFeature","_entity$primitive","primitive","Primitive","_entity$primitive2","get3DTileFeatureProperties","feature","properties","getPropertyNames","propertyIds","propertyId","getProperty","getProperties","_feature$primitive","data","id","_feature$_properties","_properties","getValue","_id","getLayerByKey","getLayerById","getLayerByKeys","destroyhighlightLayer","clearFeatures","addHighlightFeature","getVisibleLayersByKeys","show","showTip","content","hideTip","showTemplateByFilter","_ref","_callee","field","_highlightLayer","_callee$","_context","getFeatureByFieldValue","features","showTemplate","_x","_x2","_x3","_x4","handleEvent","ScreenSpaceEventHandler","canvas","pickDataSourcesFeature","event","position","pick","isObject","pickImageryLayerFeatures","pickRay","camera","getPickRay","getCenterPosition","centerResult","pickEllipsoid","Cartesian2","clientWidth","clientHeight","curPosition","Ellipsoid","WGS84","cartesianToCartographic","curLongitude","window","Math","PI","curLatitude","setViewMode","fitView","getViewExtend","params","extend","computeViewRectangle","upperLeft","lowerRight","ellipsoid","upperLeft3","lowerRight3","upperLeftCartographic","lowerRightCartographic","minx","CesiumMath","toDegrees","maxx","miny","maxy","east","north","west","south","heightToZoom","zoomToHeight","registerEventLayer","registerMapEvent","registerEvent","_feature$event","checkClickable","unclickable","viewOnly","setInputAction","lonLat","getPositionLonLat","_clickObject","cancelBubble","template","onClickTemplateAfter","featuresPromise","defined","when","sort","b","_layerIndex","ScreenSpaceEventType","LEFT_CLICK","trackedEntity","LEFT_DOUBLE_CLICK","hoverFeature","getUid","random","endPosition","labelField","tipTemplate","label","uid","hoverUid","MOUSE_MOVE","moveEnd","addEventListener","viewRectangle","cameraHeight","positionCartographic","ceil","_ref2","geoJson","geometryInfo","lng","lat","_ref2$height","rest","pitch","flyTo","offset","heading","toRadians","range","destination","Cartesian3","fromDegrees","orientation","roll","_geoJson","createFeatureCollection","box","getBBoxFromGeojson","padding","unit","Rectangle","_viewDefault$center","x","_viewDefault$center$","z","flyToBoundingSphere","BoundingSphere","HeadingPitchRange","cartesian","cartographic","Cartographic","fromCartesian","setTimeout","_viewDefault$center2","_viewDefault$center2$","setView","onMouseMove","left","nativeEvent","layerX","top","layerY","createElement","background","className","classnames","ref","onMouseOver","onMouseOut","showModal","_default","exports","propTypes","PropTypes","oneOfType","string","number","func","array","bool","mapStyle","isRequired","object","node"],"sources":["map/index.jsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport {\n Viewer,\n SceneMode,\n Cartesian3,\n Ion,\n defined,\n when,\n ScreenSpaceEventHandler,\n ScreenSpaceEventType,\n ImageryLayerFeatureInfo,\n Primitive,\n Cartesian2,\n Ellipsoid,\n Cartographic,\n Math as CesiumMath,\n Rectangle,\n BoundingSphere,\n HeadingPitchRange,\n RequestScheduler,\n Cesium3DTileFeature,\n Cesium3DTileset,\n EventHelper,\n Color\n} from 'cesium';\nimport { useUpdateEffect } from 'ahooks';\nimport HighlightLayer from '../highlight-layer/HighlightLayer';\nimport { BaseMap, Imagery } from './base';\nimport './material';\nimport getDefaultMapInfo from '../_util/getDefaultMapInfo';\nimport 'cesium/Build/Cesium/Widgets/widgets.css';\nimport classnames from 'classnames';\nimport { registerEventLayer } from '../events';\nimport Popup from './Popup';\nimport Provider from '../_util/Provider';\nimport Layers from './Layers';\nimport EventEmitter from '../_util/EventEmitter';\nimport useGetMapFeatureInfoByText from './hooks/useGetMapFeatureInfoByText';\nimport { isObject } from 'lodash';\nimport { createFeatureCollection } from '../feature-layer/createFeatureCollection';\nimport getBBoxFromGeojson from '../_util/getBBoxFromGeojson.js';\nimport { heightToZoom, zoomToHeight } from '../_util/heightAndZoom.js';\nimport {TdtLabelImageryProvider} from \"./base/imagery/tdt/TdtImageryProvider\";\nimport {IRSLabelImageryProvider} from \"./base/imagery/irs/IRSImageryProvider\";\n\nfunction Map(props) {\n const {\n width = '100%',\n height = '100%',\n dark = true,\n tk,\n children,\n onCloseTemplateBefore,\n onZoom,\n defaultPitch = -88.0,\n onEvents = {},\n baseMapUrl,\n duration = 3,\n baseMapStyle = {\n imageryProvider: 'GeoQImageryProvider',\n style: 'Blue',\n },\n autoView = true,\n highlightColor = '#f7ff01',\n hideHighlight,\n wrapDomStyle,\n mapDomStyle,\n baseMapOptions,\n viewMode = '2D',\n baseColor,\n setLoading\n } = props;\n\n const [mapLoaded, setMapLoaded] = useState(false);\n const [tipVis, setTipVis] = useState(false);\n const [tip, setTip] = useState(null);\n\n const mapRef = useRef(null);\n const mapDomRef = useRef(null);\n const tipRef = useRef(null);\n const popupRef = useRef();\n const getMapFeatureInfoByText = useGetMapFeatureInfoByText(mapRef);\n\n useEffect(() => {\n initMap();\n\n return () => {\n setLoading?.(false)\n }\n }, []);\n\n useUpdateEffect(() => {\n if (mapRef.current) {\n mapRef.current.baseMap.setBaseMap(baseMapStyle);\n }\n }, [JSON.stringify(baseMapStyle)])\n\n const addLabelImageryProvider = () => {\n if (!baseMapStyle.hideLabel) {\n // 调用影响中文注记服务\n if (baseMapStyle.imageryProvider === 'TdtImageryProvider') {\n let cia = new TdtLabelImageryProvider({tk, ...baseMapStyle});\n mapRef.current.imageryLayers.addImageryProvider(cia); // 添加到cesium图层上\n } else if (baseMapStyle.imageryProvider === 'IRSImageryProvider') {\n let cia = new IRSLabelImageryProvider(baseMapStyle);\n mapRef.current.imageryLayers.addImageryProvider(cia); // 添加到cesium图层上\n }\n } else {\n if (mapRef.current) {\n let layers = mapRef.current.imageryLayers._layers || [];\n const ciaLayer = layers.find(item => item._imageryProvider?._layer === 'cia_w');\n if (ciaLayer) {\n mapRef.current.imageryLayers.remove(ciaLayer);\n }\n }\n }\n };\n\n const initMap = () => {\n const { center, fitViewHeight, dark, zoom, createdMap, ...options } = props;\n\n let { minZoom, maxZoom, defaultZoomLevel, longitude, latitude } = getDefaultMapInfo();\n\n // 全屏\n let viewDefault = {\n center: center ||\n (longitude && latitude && [longitude, latitude]) || [120.081627, 30.89638],\n zoom: zoom || (defaultZoomLevel && Number(defaultZoomLevel)) || 0,\n minZoom: (minZoom && Number(minZoom)) || 0,\n maxZoom: (maxZoom && Number(maxZoom)) || 20,\n };\n Ion.defaultAccessToken =\n 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJhZjc0ZDQ1ZS0wNWNhLTRhMDQtODJmYy03NTcyNDcxYzgzMDUiLCJpZCI6NzE4MTQsImlhdCI6MTYzNTQ3NzgyNX0.4TrdZWPWc9_6jLeGe90bRmBPB14XptwinSewVMu1iCE';\n\n let imageryProvider = new Imagery[baseMapStyle.imageryProvider]({\n style: baseMapStyle.style,\n url: baseMapUrl,\n crs: 'WGS84',\n dark,\n ...baseMapStyle\n });\n\n let map = new Viewer(mapDomRef.current, {\n shouldAnimate: true,\n animation: false, // 控制场景动画的播放速度控件\n baseLayerPicker: false, // 底图切换控件\n fullscreenButton: false, // 全屏控件\n geocoder: false, // 地理位置查询定位控件\n homeButton: false, // 默认相机位置控件\n timeline: false, // 时间滚动条控件\n infoBox: false, //是否显示信息框\n sceneModePicker: false, //是否显示3D/2D选择器\n selectionIndicator: false, // 点击点绿色弹出 是否显示选取指示器组件\n sceneMode: SceneMode.SCENE3D, //设定3维地图的默认场景模式: SceneMode.SCENE2D、SceneMode.SCENE3D、SceneMode.MORPHING\n navigationHelpButton: false, // 默认的相机控制提示控件\n scene3DOnly: true, // 每个几何实例仅以3D渲染以节省GPU内存\n navigationInstructionsInitiallyVisible: false,\n showRenderLoopErrors: process.env.NODE_ENV === 'development', //是否显示渲染错误\n orderIndependentTranslucency: false, //设置背景透明\n imageryProvider,\n\n ...options,\n });\n\n // 设置地球暗色\n if (dark) {\n map.scene.globe.baseColor = Color.fromCssColorString('#152937');\n }\n\n // 设置地球颜色\n if (baseColor) {\n map.scene.globe.baseColor = Color.fromCssColorString(baseColor);\n }\n\n // 事件订阅\n map.eventEmitter = new EventEmitter();\n\n // 监听加载是否完成\n const helper = new EventHelper();\n helper.add(map.scene.globe.tileLoadProgressEvent, (e) => {\n setLoading?.(true);\n map.eventEmitter.emit('loading', e);\n if (e === 0) {\n setLoading?.(false)\n }\n })\n\n // 设置cesium请求调度器的最大并发数量\n RequestScheduler.maximumRequestsPerServer = 18;\n\n // 关闭请求调度器的请求节流\n RequestScheduler.throttleRequests = false;\n\n map.viewMode = viewMode;\n\n map.autoView = autoView; // 自动调整视角\n\n // 去版权信息\n map._cesiumWidget._creditContainer.style.display = 'none'; // 隐藏cesium ion\n\n mapRef.current = map;\n map.dark = dark;\n\n // 地图fit高度\n map.fitViewHeight = fitViewHeight || 5000;\n\n // 隐藏高亮效果\n map.hideHighlight = hideHighlight\n\n // 底图服务\n map.baseMap = new BaseMap({\n map,\n imageryProvider: baseMapStyle.imageryProvider,\n style: baseMapStyle.style,\n layer: imageryProvider,\n options: baseMapOptions,\n });\n\n // 添加 dataSource 和 imagery 图层\n map.layers = new Layers({ map });\n\n // 高亮图层\n map.highlightLayer = new HighlightLayer({\n map,\n color: highlightColor,\n });\n\n // 图层改变的时候\n map.layers.on('change', layers => {\n onEvents.layersChange && onEvents.layersChange(layers);\n map.eventEmitter.emit('layersChange', layers);\n });\n\n // 图层新增\n map.layers.on('add', layer => {\n onEvents.layersAdd && onEvents.layersAdd(layer);\n map.eventEmitter.emit('layersAdd', layer);\n });\n\n // 图层移除\n map.layers.on('remove', layer => {\n onEvents.layersRemove && onEvents.layersRemove(layer);\n map.eventEmitter.emit('layersRemove', layer);\n });\n\n // 图层清空\n map.layers.on('clear', () => {\n onEvents.layersClear && onEvents.layersClear();\n map.eventEmitter.emit('layersClear');\n });\n\n // 图层展示隐藏\n map.layers.on('visible', (layer, visible) => {\n map.layers.onChange(); // 触发图层改变\n\n // 图层关闭时,隐藏自身的气泡\n if (!visible && map.popupRef) {\n map.hideTemplate(layer);\n }\n\n onEvents.layersVisible && onEvents.layersVisible(layer, visible);\n map.eventEmitter.emit('layersVisible');\n });\n\n // 图层变化\n map.layersChange = () => {\n map.layers.onChange();\n };\n\n // 获取 layers 里面的 key 集合\n map.getAllKeys = () => {\n return map.layers.getAllKeys();\n };\n\n // 获取当前展示的 keys\n map.getLayersShowKeys = () => {\n return map.layers.getShowKeys();\n };\n\n // 获取当前隐藏的 keys\n map.getLayersHiddenKeys = () => {\n return map.layers.getHiddenKeys();\n };\n\n // 根据 keys 设置图层的显示,其他的隐藏\n map.setLayersShowByKeys = _keys => {\n return map.layers.setShowByKeys(_keys);\n };\n\n // 根据 keys 设置图层的隐藏,其他的显示\n map.setLayersHideByKeys = _keys => {\n return map.layers.setHideByKeys(_keys);\n };\n\n // 添加图层\n map.addLayer = (layer, index) => {\n return map.layers.addLayer(layer, index);\n };\n\n // 移除图层\n map.removeLayer = layer => {\n return map.layers.removeLayer(layer);\n };\n\n // 清除图层和entity\n map.clearLayers = () => {\n return map.layers.clearLayers();\n };\n\n // 获取 ImageLayer 图层\n map.getImageLayers = keys => {\n return map.layers.getImageLayers(keys);\n };\n\n // 获取 FeatureLayer 图层\n map.getFeatureLayers = keys => {\n return map.layers.getFeatureLayers(keys);\n };\n\n // 获取 Imagery 图层最后一个 index 值\n map.getImageryLastIndex = _index => {\n let index = 1;\n const layers = map.getImageryLayers();\n if (layers?.length) {\n if (_index && layers.findIndex(v => _index < v.zIndex) !== -1) {\n let _i = layers.findIndex(v => _index < v.zIndex) + 1;\n index = _i < index ? _i : index;\n } else {\n index = layers.length;\n }\n }\n\n return index;\n };\n\n // 查找所有dataSource和imagery图层\n map.getAllLayers = () => {\n const dataSources = map?.dataSources?._dataSources || [];\n const imageryLayers = map?.imageryLayers?._layers || [];\n const primitives = map?.scene?.primitives?._primitives || [];\n\n return [...dataSources, ...imageryLayers, ...primitives];\n };\n\n // 根据key查找imageryLayers图层\n map.getImageryLayers = _keys => {\n const layers = map?.imageryLayers?._layers || [];\n\n if (_keys && layers.length) {\n const keys = Array.isArray(_keys) ? _keys : [_keys];\n\n return layers.filter(layer => layer.key && keys.includes(layer.key));\n }\n\n return layers;\n };\n\n // 通过图形查询所属图层\n map.getLayerByFeature = entity => {\n if (!entity) return\n return map.getAllLayers().find(layer => {\n if (entity instanceof ImageryLayerFeatureInfo) {\n if (layer?.key && layer.key === entity?.imageryLayer?.key) {\n return layer;\n }\n } else if (layer instanceof Cesium3DTileset && entity instanceof Cesium3DTileFeature) {\n if (layer?.key && layer.key === entity?.primitive?.key) {\n return layer;\n }\n } else if (layer instanceof Primitive) {\n if (layer?.key && layer.key === entity?.primitive?.key) {\n return layer;\n }\n } else {\n if (layer?.key && layer.key === entity?.key) {\n return layer;\n }\n }\n });\n };\n\n // 获取 3DTiles feature 属性\n map.get3DTileFeatureProperties = (feature) => {\n let properties = {};\n if (feature && feature.getPropertyNames) {\n const propertyIds = feature.getPropertyNames() || [];\n if (propertyIds?.length) {\n const length = propertyIds.length;\n for (let i = 0; i < length; ++i) {\n const propertyId = propertyIds[i];\n properties[propertyId] = feature.getProperty(propertyId);\n }\n }\n }\n\n return properties\n }\n\n // 获取entity中数据\n map.getProperties = feature => {\n if (feature instanceof Cesium3DTileFeature) {\n return map.get3DTileFeatureProperties(feature);\n } else if (feature?.primitive?.data && feature?.primitive instanceof Primitive) {\n return feature.primitive.data.find(item => item.id === feature.id);\n } else {\n let properties =\n feature?._properties?.getValue(feature._id) || feature?.properties || {};\n properties = properties?.properties || properties;\n return properties;\n }\n\n };\n\n // 通过key查询图层\n map.getLayerByKey = key => {\n return map.getAllLayers().find(layer => {\n return key && layer.key && layer.key === key;\n });\n };\n\n // 根据id查询图层\n map.getLayerById = map.getLayerByKey;\n\n // 通过keys查询多个图层\n map.getLayerByKeys = keys => {\n return map.getAllLayers().filter(layer => {\n return layer.key && keys.includes(layer.key);\n });\n };\n map.destroyhighlightLayer = () => {\n map.highlightLayer.clearFeatures();\n };\n // 添加高亮entity\n map.addHighlightFeature = (feature, style) => {\n map.highlightLayer.addHighlightFeature(feature, style);\n };\n // 通过返回值控制是否执行关闭\n map.onCloseTemplateBefore = feature => {\n // 清除高亮\n map.destroyhighlightLayer();\n if (onCloseTemplateBefore) {\n return onCloseTemplateBefore(feature);\n }\n };\n\n // 根据key查找展示的图层\n map.getVisibleLayersByKeys = keys => {\n let layers = map.getAllLayers() || [];\n return layers.filter(layer => {\n if (typeof keys === 'string') {\n return layer.key === keys && layer.show;\n } else if (Array.isArray(keys)) {\n return keys.includes(layer.key) && layer.show;\n } else {\n return layer.show && layer.key;\n }\n });\n };\n\n // 展示提示\n map.showTip = content => {\n setTip(content);\n };\n\n // 隐藏提示\n map.hideTip = () => {\n setTip(null);\n };\n\n // 根据图层条件设置图层选中\n map.showTemplateByFilter = async (key, field, value, _highlightLayer) => {\n let layer = map.getLayerByKey(key);\n if (layer?.show) {\n let obj = layer.getFeatureByFieldValue(field, value);\n if (obj) {\n if (obj.then) {\n obj.then(features => {\n if (features?.length) {\n let feature = features[0];\n map.showTemplate(\n feature.feature,\n _highlightLayer || map.highlightLayer,\n );\n }\n });\n } else {\n map.showTemplate(obj, _highlightLayer || map.highlightLayer);\n }\n } else {\n map.hideTemplate();\n }\n }\n };\n\n // 展示看板\n map.showTemplate = feature => {\n popupRef.current.showTemplate(feature);\n };\n\n // 隐藏看板\n map.hideTemplate = () => {\n popupRef.current.hideTemplate();\n };\n\n // 鼠标事件控制器\n let handleEvent = new ScreenSpaceEventHandler(map.scene.canvas);\n\n // 获取图层上的图形信息\n map.pickDataSourcesFeature = event => {\n if (event?.position) {\n const { position } = event;\n const pick = map.scene.pick(position);\n if (isObject(pick?.id)) {\n return pick.id;\n }\n\n return pick;\n }\n };\n\n // 根据关键字获取图形信息\n map.getMapFeatureInfoByText = getMapFeatureInfoByText;\n\n // 获取wms的图形数据\n map.pickImageryLayerFeatures = event => {\n if (event?.position) {\n const { position } = event;\n const pickRay = map.camera.getPickRay(position);\n\n return map.imageryLayers.pickImageryLayerFeatures(pickRay, map.scene);\n }\n };\n\n // 获取当前地图中心的经纬度\n map.getCenterPosition = () => {\n let centerResult = map.camera.pickEllipsoid(\n new Cartesian2(map.canvas.clientWidth / 2, map.canvas.clientHeight / 2),\n );\n let curPosition = Ellipsoid.WGS84.cartesianToCartographic(centerResult);\n let curLongitude = (curPosition.longitude * 180) / window.Math.PI;\n let curLatitude = (curPosition.latitude * 180) / window.Math.PI;\n return [curLongitude, curLatitude];\n };\n\n // 二三维切换\n map.setViewMode = type => {\n map.viewMode = type;\n map.fitView();\n };\n\n // 获取当前地图视图的边界\n map.getViewExtend = () => {\n let params = {};\n let extend = map.camera.computeViewRectangle();\n if (typeof extend === 'undefined') {\n //2D下会可能拾取不到坐标,extend返回undefined,因此作如下转换\n let canvas = map.scene.canvas;\n let upperLeft = new Cartesian2(0, 0); //canvas左上角坐标转2d坐标\n let lowerRight = new Cartesian2(canvas.clientWidth, canvas.clientHeight); //canvas右下角坐标转2d坐标\n\n let ellipsoid = map.scene.globe.ellipsoid;\n let upperLeft3 = map.camera.pickEllipsoid(upperLeft, ellipsoid); //2D转3D世界坐标\n\n let lowerRight3 = map.camera.pickEllipsoid(lowerRight, ellipsoid); //2D转3D世界坐标\n\n let upperLeftCartographic = map.scene.globe.ellipsoid.cartesianToCartographic(\n upperLeft3,\n ); //3D世界坐标转弧度\n let lowerRightCartographic = map.scene.globe.ellipsoid.cartesianToCartographic(\n lowerRight3,\n ); //3D世界坐标转弧度\n\n let minx = CesiumMath.toDegrees(upperLeftCartographic.longitude); //弧度转经纬度\n let maxx = CesiumMath.toDegrees(lowerRightCartographic.longitude); //弧度转经纬度\n\n let miny = CesiumMath.toDegrees(lowerRightCartographic.latitude); //弧度转经纬度\n let maxy = CesiumMath.toDegrees(upperLeftCartographic.latitude); //弧度转经纬度\n\n params.minx = minx;\n params.maxx = maxx;\n params.miny = miny;\n params.maxy = maxy;\n } else {\n //3D获取方式\n params.maxx = CesiumMath.toDegrees(extend.east);\n params.maxy = CesiumMath.toDegrees(extend.north);\n\n params.minx = CesiumMath.toDegrees(extend.west);\n params.miny = CesiumMath.toDegrees(extend.south);\n }\n\n // 返回屏幕所在经纬度范围\n return params;\n };\n\n // 根据camera高度近似计算当前层级\n map.heightToZoom = heightToZoom;\n\n // 根据当前层级近似计算camera高度\n map.zoomToHeight = zoomToHeight;\n\n // 注册事件\n registerEventLayer(map, props);\n\n // 注册地图组件事件\n function registerMapEvent(e, event) {\n if (map[event]) {\n map[event](e);\n onEvents[event] && onEvents[event](e);\n }\n }\n\n // 注册图层组件事件\n function registerEvent(feature, event) {\n if (feature) {\n let layer = map.getLayerByFeature(feature);\n if (layer?.[event] || feature[event]) {\n let properties = map.getProperties(feature) || {};\n if (feature instanceof ImageryLayerFeatureInfo && feature?.data) {\n properties = {\n ...properties,\n data: feature?.data,\n };\n }\n\n // 触发自身事件\n feature[event]?.(properties);\n\n if (layer?.[event]) {\n layer[event](properties);\n }\n }\n }\n }\n\n // 监测图层是否允许点击\n function checkClickable(feature) {\n let layer = map.getLayerByFeature(feature);\n let unclickable = false;\n // 无法单独设置group内的图层\n // 暂时为了取消行政区划影像图层的点击效果\n if (layer) {\n unclickable = layer.viewOnly || layer.unclickable;\n }\n return unclickable;\n }\n\n // 点击事件\n handleEvent.setInputAction(event => {\n event.lonLat = map.getPositionLonLat(event);\n map._clickObject = event;\n registerMapEvent(event, 'onClick');\n map.hideTip();\n\n // 是否禁止冒泡\n if (!map.cancelBubble) {\n const pick = map.scene.pick(event.position);\n if (pick instanceof Cesium3DTileFeature) {\n let layer = map.getLayerByFeature(pick);\n if (layer) {\n if (layer.unclickable) {\n return\n }\n\n registerEvent(pick, 'onClick');\n\n if (layer.template) {\n map.onClickTemplateAfter && map.onClickTemplateAfter(pick);\n\n map.showTemplate(pick);\n }\n }\n } else {\n const entity = map.pickDataSourcesFeature(event);\n const featuresPromise = map.pickImageryLayerFeatures(event);\n if (entity) {\n\n registerEvent(entity, 'onClick');\n\n let layer = map.getLayerByFeature(entity);\n if (Array.isArray(entity) || (layer && layer.template)) {\n map.onClickTemplateAfter && map.onClickTemplateAfter(entity);\n map.showTemplate(entity);\n }\n\n } else if (defined(featuresPromise)) {\n when(featuresPromise, features => {\n features.sort((a, b) => {\n return b.imageryLayer._layerIndex - a.imageryLayer._layerIndex;\n });\n\n const feature = features?.[0];\n if (checkClickable(feature)) {\n return;\n }\n registerEvent(feature, 'onClick');\n map.showTemplate(feature);\n });\n }\n }\n }\n }, ScreenSpaceEventType.LEFT_CLICK);\n\n // 双击事件\n handleEvent.setInputAction(event => {\n map.trackedEntity = undefined; // 取消双击锁定\n\n event.lonLat = map.getPositionLonLat(event);\n\n registerMapEvent(event, 'onDoubleClick');\n\n const feature = map.pickDataSourcesFeature(event);\n\n registerEvent(feature, 'onDoubleClick');\n }, ScreenSpaceEventType.LEFT_DOUBLE_CLICK);\n\n // 鼠标移动\n let hoverFeature;\n const getUid = feature => {\n if (feature && !feature._id) {\n feature._id = window.Math.random();\n }\n\n return feature._id;\n };\n\n // 鼠标移入移出\n handleEvent.setInputAction(event => {\n event.lonLat = map.getPositionLonLat({ position: event.endPosition });\n\n registerMapEvent(event, 'onMouseMove');\n const feature = map.pickDataSourcesFeature({ position: event.endPosition });\n\n if (feature) {\n let layer = map.getLayerByFeature(feature);\n if (layer && (layer.labelField || layer.tipTemplate)) {\n const {labelField, tipTemplate} = layer;\n const properties = map.getProperties(feature);\n\n let label;\n if (tipTemplate) {\n label = tipTemplate(properties);\n } else {\n label = properties ? properties[labelField] : '';\n }\n\n if (label) {\n map.showTip(label);\n } else {\n map.hideTip();\n }\n } else {\n map.hideTip();\n }\n\n registerEvent(feature, 'onMouseMove');\n\n // 判断是否在图形内移动\n if (hoverFeature) {\n let uid = getUid(feature);\n let hoverUid = getUid(hoverFeature);\n\n // 判断是否进入新的图形\n if (uid !== hoverUid) {\n registerEvent(hoverFeature, 'onMouseLeave');\n\n registerEvent(feature, 'onMouseEnter');\n hoverFeature = feature;\n }\n } else {\n registerEvent(feature, 'onMouseEnter');\n hoverFeature = feature;\n }\n\n registerEvent(feature, 'onMouseMove');\n } else {\n if (hoverFeature) {\n registerEvent(hoverFeature, 'onMouseLeave');\n }\n\n hoverFeature = null;\n map.hideTip();\n }\n }, ScreenSpaceEventType.MOUSE_MOVE);\n\n // 层级事件\n if (onZoom) {\n map.camera.moveEnd.addEventListener(() => {\n let viewRectangle = map.camera.computeViewRectangle();\n const west = (viewRectangle.west / window.Math.PI) * 180; // 左上方(西)\n const north = (viewRectangle.north / window.Math.PI) * 180; //右上方(北)\n const east = (viewRectangle.east / window.Math.PI) * 180; // 右下方(东)\n const south = (viewRectangle.south / window.Math.PI) * 180; // 左下方(南)\n const cameraHeight = map.camera.positionCartographic.height;\n const zoom = map.heightToZoom(window.Math.ceil(height));\n onZoom && onZoom({ west, north, east, south, cameraHeight, viewRectangle, zoom });\n });\n }\n\n // 动态调整视角,不传参数为默认视角,参数可以是图层、图形、数据等\n map.fitView = e => {\n const {\n geoJson,\n geometryInfo,\n data,\n entity,\n lng,\n lat,\n height = 50000,\n options,\n ...rest\n } = e || {};\n let pitch = map.camera.pitch;\n\n // 判断是否点击了图形\n if (entity) {\n if (map.viewMode === '3D') {\n map.flyTo(entity, { duration: 2 });\n } else {\n map.flyTo(entity, {\n duration: 2,\n offset: {\n heading: CesiumMath.toRadians(0.0),\n pitch,\n range: height,\n },\n });\n }\n } else if (lng && lat) {\n map.camera.flyTo({\n destination: new Cartesian3.fromDegrees(Number(lng), Number(lat), height),\n orientation: {\n pitch: CesiumMath.toRadians(-88.0),\n roll: 0.0,\n },\n duration: 2,\n ...rest,\n });\n } else if (data || geometryInfo || geoJson) {\n let _geoJson = geoJson;\n\n if (geometryInfo) {\n _geoJson = createFeatureCollection([{ geometryInfo }]);\n }\n\n if (data) {\n _geoJson = createFeatureCollection(Array.isArray(data) ? data : [data]);\n }\n\n let box = getBBoxFromGeojson(_geoJson, {\n padding: 100,\n unit: 'px', // px | m\n ...options,\n }); // 单位为米\n\n map.camera.flyTo({\n destination: new Rectangle.fromDegrees(...box), //west, south, east, north,\n orientation: {\n pitch:\n map.viewMode === '3D'\n ? CesiumMath.toRadians(-35)\n : CesiumMath.toRadians(defaultPitch),\n roll: 0.0,\n },\n duration: 2,\n ...rest,\n });\n } else {\n let [x, y, z = 80000.0] = viewDefault.center;\n\n if (map.viewMode === '3D') {\n const center = Cartesian3.fromDegrees(x, y);\n const heading = CesiumMath.toRadians(0.0);\n const pitch = CesiumMath.toRadians(-35.0);\n map.camera.flyToBoundingSphere(new BoundingSphere(center, z), {\n offset: new HeadingPitchRange(heading, pitch, z),\n duration: 2,\n });\n } else {\n map.camera.flyTo({\n destination: new Cartesian3.fromDegrees(x, y, z),\n orientation: {\n pitch: CesiumMath.toRadians(defaultPitch),\n roll: 0.0,\n },\n duration: 2,\n });\n }\n }\n };\n\n map.getPositionLonLat = event => {\n const cartesian = map.camera.pickEllipsoid(event.position, map.scene.globe.ellipsoid); // Cartesian3对象\n if (cartesian) {\n const cartographic = Cartographic.fromCartesian(cartesian); // 经纬高对象\n const lng = CesiumMath.toDegrees(cartographic.longitude);\n const lat = CesiumMath.toDegrees(cartographic.latitude);\n return [lng, lat];\n }\n\n return [];\n };\n\n if (duration) {\n // 自动调整视角\n map.fitView();\n\n // 延时触发回调事件\n setTimeout(() => {\n createdMap && createdMap(map, handleEvent);\n\n addLabelImageryProvider();\n\n onEvents.createdMap && onEvents.createdMap(map, handleEvent);\n\n setMapLoaded(true);\n }, (duration + 0.5) * 1000);\n } else {\n const [x, y, z = 80000.0] = viewDefault.center;\n if (map.viewMode === '3D') {\n const center = Cartesian3.fromDegrees(x, y);\n const heading = CesiumMath.toRadians(0.0);\n const pitch = CesiumMath.toRadians(-35.0);\n map.camera.flyToBoundingSphere(new BoundingSphere(center, z), {\n offset: new HeadingPitchRange(heading, pitch, z),\n duration: 0,\n });\n } else {\n map.camera.setView({\n destination: new Cartesian3.fromDegrees(x, y, z),\n });\n }\n\n\n // 延时触发回调事件\n setTimeout(() => {\n createdMap && createdMap(map, handleEvent);\n\n addLabelImageryProvider();\n\n onEvents.createdMap && onEvents.createdMap(map, handleEvent);\n\n setMapLoaded(true);\n }, 500);\n }\n };\n\n const onMouseMove = event => {\n if (tip && tipRef.current) {\n tipRef.current.style.left = `${event.nativeEvent.layerX + 15}px`;\n tipRef.current.style.top = `${event.nativeEvent.layerY + 15}px`;\n }\n };\n\n return (\n <div\n style={{ width, height, background: (baseColor || dark ? '#152937' : '#cccccc'), ...wrapDomStyle }}\n className={classnames('cs-map-container')}\n >\n <div\n ref={mapDomRef}\n className={classnames('cs-map')}\n onMouseMove={onMouseMove}\n onMouseOver={() => setTipVis(true)}\n onMouseOut={() => setTipVis(false)}\n style={mapDomStyle}\n >\n {tip && tipVis && (\n <div ref={tipRef} className={classnames('custom-tip')}>\n {tip}\n </div>\n )}\n </div>\n\n {mapLoaded && (\n <Provider\n value={{\n map: mapRef.current,\n showModal: props.showModal,\n }}\n >\n {children}\n {mapRef.current && <Popup ref={popupRef} map={mapRef.current} />}\n </Provider>\n )}\n </div>\n );\n}\n\nexport default Map;\n\nMap.propTypes = {\n width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n createdMap: PropTypes.func,\n onCloseTemplateBefore: PropTypes.func,\n onZoom: PropTypes.func,\n center: PropTypes.array,\n zoom: PropTypes.number,\n minZoom: PropTypes.number,\n maxZoom: PropTypes.number,\n defaultPitch: PropTypes.number,\n dark: PropTypes.bool,\n baseColor: PropTypes.string,\n mapStyle: PropTypes.oneOfType(['vec', 'img']),\n tk: PropTypes.string.isRequired,\n onEvents: PropTypes.object,\n baseMapUrl: PropTypes.string,\n duration: PropTypes.number,\n baseMapStyle: PropTypes.object,\n children: PropTypes.node,\n autoView: PropTypes.bool,\n highlightColor: PropTypes.string,\n viewMode: PropTypes.string,\n showModal: PropTypes.func,\n wrapDomStyle: PropTypes.object,\n mapDomStyle: PropTypes.object,\n baseMapOptions: PropTypes.object,\n setLoading: PropTypes.func,\n fitViewHeight: PropTypes.number,\n hideHighlight: PropTypes.bool,\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -57,6 +57,7 @@ var Item = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
57
57
|
ref: dom,
|
|
58
58
|
style: _objectSpread({
|
|
59
59
|
flex: 1,
|
|
60
|
+
overflow: "hidden",
|
|
60
61
|
border: '1px solid #ccc'
|
|
61
62
|
}, wrapStyle)
|
|
62
63
|
}, /*#__PURE__*/_react["default"].createElement(_map["default"], _extends({}, otherVal, {
|
|
@@ -79,7 +80,35 @@ var SplitScreen = function SplitScreen(props) {
|
|
|
79
80
|
onChange();
|
|
80
81
|
};
|
|
81
82
|
var onChange = function onChange() {
|
|
82
|
-
|
|
83
|
+
var currentViewer;
|
|
84
|
+
// 同步视角
|
|
85
|
+
var syncViewer = function syncViewer(e) {
|
|
86
|
+
var _currentViewer, _e$_view;
|
|
87
|
+
if (currentViewer && ((_currentViewer = currentViewer) === null || _currentViewer === void 0 || (_currentViewer = _currentViewer.scene) === null || _currentViewer === void 0 ? void 0 : _currentViewer.id) !== (e === null || e === void 0 ? void 0 : e.id) && (_e$_view = e._view) !== null && _e$_view !== void 0 && _e$_view.camera) {
|
|
88
|
+
e._view.camera.flyTo({
|
|
89
|
+
destination: currentViewer.camera.position,
|
|
90
|
+
orientation: {
|
|
91
|
+
heading: currentViewer.camera.heading,
|
|
92
|
+
pitch: currentViewer.camera.pitch,
|
|
93
|
+
roll: currentViewer.camera.roll
|
|
94
|
+
},
|
|
95
|
+
duration: 0.0
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
};
|
|
99
|
+
mapListRef.current.map(function (viewer) {
|
|
100
|
+
viewer.onMouseMove = function () {
|
|
101
|
+
currentViewer = viewer;
|
|
102
|
+
};
|
|
103
|
+
|
|
104
|
+
// 先移除监听
|
|
105
|
+
viewer.camera.changed.removeEventListener(syncViewer);
|
|
106
|
+
viewer.scene.preRender.removeEventListener(syncViewer);
|
|
107
|
+
|
|
108
|
+
// 再添加监听
|
|
109
|
+
viewer.camera.changed.addEventListener(syncViewer);
|
|
110
|
+
viewer.scene.preRender.addEventListener(syncViewer);
|
|
111
|
+
});
|
|
83
112
|
};
|
|
84
113
|
return /*#__PURE__*/_react["default"].createElement(Provider, {
|
|
85
114
|
value: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_map","_interopRequireDefault","_excluded","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","prototype","apply","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","Context","React","createContext","Provider","Item","forwardRef","props","ref","children","wrapStyle","createdMapProps","createdMap","otherVal","dom","useRef","mapRef","_useContext","useContext","addMap","removeMap","useEffect","current","useImperativeHandle","map","createElement","style","flex","border","SplitScreen","mode","mapListRef","onChange","item","console","log","mapList","width","height","display","flexDirection","_default","exports"],"sources":["split-screen/index.js"],"sourcesContent":["import React, {useState, useEffect, useImperativeHandle, forwardRef, useRef, useContext} from 'react';\nimport Map from '../map';\n\nconst Context = React.createContext({});\nconst Provider = Context.Provider;\n\nconst Item = forwardRef((props, ref) => {\n const {children, wrapStyle, createdMap: createdMapProps, ...otherVal} = props;\n\n const dom = useRef();\n const mapRef = useRef();\n\n const {addMap, removeMap} = useContext(Context);\n\n // 移除地图\n useEffect(() => {\n return () => {\n removeMap(mapRef.current);\n }\n }, [])\n\n // 暴露给父组件\n useImperativeHandle(ref, () => ({\n dom: dom.current,\n mapRef: mapRef.current,\n }));\n\n // 创建地图\n const createdMap = (map) => {\n mapRef.current = map;\n\n createdMapProps?.(map);\n\n addMap(map);\n }\n return (\n <div ref={dom} style={{flex: 1, border: '1px solid #ccc', ...wrapStyle}}>\n <Map {...otherVal} createdMap={createdMap}>\n {children}\n </Map>\n </div>\n )\n})\n\nconst SplitScreen = (props) => {\n const {mode, children, style} = props;\n\n const mapListRef = useRef([]);\n\n\n const addMap = (map) => {\n mapListRef.current.push(map);\n onChange();\n }\n\n const removeMap = (map) => {\n mapListRef.current = mapListRef.current.filter(item => item !== map);\n onChange();\n }\n\n const onChange = () => {\n console.log(\"mapListRef.current:\", mapListRef.current);\n }\n\n return (\n <Provider\n value={{\n mode,\n mapList: mapListRef.current,\n addMap,\n removeMap\n }}\n >\n <div\n style={{\n width: '100%',\n height: '100%',\n display: 'flex', flexDirection: mode === \"VERTICAL\" ? 'column' : 'row',\n ...style\n }}\n >\n {children}\n </div>\n </Provider>\n )\n}\n\nSplitScreen.Item = Item;\n\nexport default SplitScreen;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireWildcard","require","_map","_interopRequireDefault","_excluded","obj","__esModule","_getRequireWildcardCache","e","WeakMap","r","t","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","prototype","apply","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","_objectSpread","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","value","_toPropertyKey","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","Context","React","createContext","Provider","Item","forwardRef","props","ref","children","wrapStyle","createdMapProps","createdMap","otherVal","dom","useRef","mapRef","_useContext","useContext","addMap","removeMap","useEffect","current","useImperativeHandle","map","createElement","style","flex","overflow","border","SplitScreen","mode","mapListRef","onChange","item","currentViewer","syncViewer","_currentViewer","_e$_view","scene","id","_view","camera","flyTo","destination","position","orientation","heading","pitch","roll","duration","viewer","onMouseMove","changed","removeEventListener","preRender","addEventListener","mapList","width","height","display","flexDirection","_default","exports"],"sources":["split-screen/index.js"],"sourcesContent":["import React, {useState, useEffect, useImperativeHandle, forwardRef, useRef, useContext} from 'react';\nimport Map from '../map';\n\nconst Context = React.createContext({});\nconst Provider = Context.Provider;\n\nconst Item = forwardRef((props, ref) => {\n const {children, wrapStyle, createdMap: createdMapProps, ...otherVal} = props;\n\n const dom = useRef();\n const mapRef = useRef();\n\n const {addMap, removeMap} = useContext(Context);\n\n // 移除地图\n useEffect(() => {\n return () => {\n removeMap(mapRef.current);\n }\n }, [])\n\n // 暴露给父组件\n useImperativeHandle(ref, () => ({\n dom: dom.current,\n mapRef: mapRef.current,\n }));\n\n // 创建地图\n const createdMap = (map) => {\n mapRef.current = map;\n\n createdMapProps?.(map);\n\n addMap(map);\n }\n return (\n <div ref={dom} style={{flex: 1, overflow: \"hidden\", border: '1px solid #ccc', ...wrapStyle}}>\n <Map {...otherVal} createdMap={createdMap}>\n {children}\n </Map>\n </div>\n )\n})\n\nconst SplitScreen = (props) => {\n const {mode, children, style} = props;\n\n const mapListRef = useRef([]);\n\n\n const addMap = (map) => {\n mapListRef.current.push(map);\n onChange();\n }\n\n const removeMap = (map) => {\n mapListRef.current = mapListRef.current.filter(item => item !== map);\n onChange();\n }\n\n const onChange = () => {\n let currentViewer;\n // 同步视角\n const syncViewer = (e) => {\n if (currentViewer && currentViewer?.scene?.id !== e?.id && e._view?.camera) {\n e._view.camera.flyTo({\n destination: currentViewer.camera.position,\n orientation: {\n heading: currentViewer.camera.heading,\n pitch: currentViewer.camera.pitch,\n roll: currentViewer.camera.roll\n },\n duration: 0.0\n })\n\n }\n }\n\n mapListRef.current.map(viewer => {\n viewer.onMouseMove = () => {\n currentViewer = viewer;\n }\n\n // 先移除监听\n viewer.camera.changed.removeEventListener(syncViewer);\n viewer.scene.preRender.removeEventListener(syncViewer);\n\n // 再添加监听\n viewer.camera.changed.addEventListener(syncViewer);\n viewer.scene.preRender.addEventListener(syncViewer);\n })\n }\n\n return (\n <Provider\n value={{\n mode,\n mapList: mapListRef.current,\n addMap,\n removeMap\n }}\n >\n <div\n style={{\n width: '100%',\n height: '100%',\n display: 'flex', flexDirection: mode === \"VERTICAL\" ? 'column' : 'row',\n ...style\n }}\n >\n {children}\n </div>\n </Provider>\n )\n}\n\nSplitScreen.Item = Item;\n\nexport default SplitScreen;\n"],"mappings":"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","ignoreList":[]}
|