|  |  |  | @ -1,10 +1,17 @@ | 
		
	
		
			
				|  |  |  |  | // Viewer初始化
 | 
		
	
		
			
				|  |  |  |  | import { Viewer, TileMapServiceImageryProvider } from 'cesium' | 
		
	
		
			
				|  |  |  |  | import { | 
		
	
		
			
				|  |  |  |  |   Viewer, | 
		
	
		
			
				|  |  |  |  |   TileMapServiceImageryProvider, | 
		
	
		
			
				|  |  |  |  |   ImageryLayer, | 
		
	
		
			
				|  |  |  |  |   RequestScheduler, | 
		
	
		
			
				|  |  |  |  |   SceneMode, | 
		
	
		
			
				|  |  |  |  |   buildModuleUrl, | 
		
	
		
			
				|  |  |  |  | } from 'cesium' | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  | //离线地球底图
 | 
		
	
		
			
				|  |  |  |  | const earth_native = TileMapServiceImageryProvider.fromUrl( | 
		
	
		
			
				|  |  |  |  |   // 'node_modules/cesium/Build/CesiumUnminified/Assets/Textures/NaturalEarthII',
 | 
		
	
		
			
				|  |  |  |  |   Cesium.buildModuleUrl('Assets/Textures/NaturalEarthII'), | 
		
	
		
			
				|  |  |  |  |   buildModuleUrl('Assets/Textures/NaturalEarthII'), | 
		
	
		
			
				|  |  |  |  | ) | 
		
	
		
			
				|  |  |  |  | /** | 
		
	
		
			
				|  |  |  |  |  * Viewer初始化 | 
		
	
	
		
			
				
					|  |  |  | @ -20,7 +27,7 @@ function initViewer(container: string | Element): Viewer { | 
		
	
		
			
				|  |  |  |  |     timeline: false, //是否显示时间线控件
 | 
		
	
		
			
				|  |  |  |  |     animation: false, //是否显示动画控件
 | 
		
	
		
			
				|  |  |  |  |     sceneModePicker: true, //是否显示投影方式控件
 | 
		
	
		
			
				|  |  |  |  |     sceneMode: Cesium.SceneMode.SCENE3D, //设置场景模式,3D球体
 | 
		
	
		
			
				|  |  |  |  |     sceneMode: SceneMode.SCENE3D, //设置场景模式,3D球体
 | 
		
	
		
			
				|  |  |  |  |     // terrain: Cesium.Terrain.fromWorldTerrain(),
 | 
		
	
		
			
				|  |  |  |  |     baseLayerPicker: false, //是否显示图层选择控件
 | 
		
	
		
			
				|  |  |  |  |     requestRenderMode: true, //启用请求渲染模式
 | 
		
	
	
		
			
				
					|  |  |  | @ -28,8 +35,9 @@ function initViewer(container: string | Element): Viewer { | 
		
	
		
			
				|  |  |  |  |     fullscreenButton: false, //右下角 全屏控件
 | 
		
	
		
			
				|  |  |  |  |     orderIndependentTranslucency: false, | 
		
	
		
			
				|  |  |  |  |     contextOptions: { webgl: { alpha: true } }, | 
		
	
		
			
				|  |  |  |  |     maximumRenderTimeChange: Infinity, // 无操作时自动渲染帧率,设为数字会消耗性能,Infinity为无操作不渲染
 | 
		
	
		
			
				|  |  |  |  |     // mapProjection: new Cesium.WebMercatorProjection(),
 | 
		
	
		
			
				|  |  |  |  |     baseLayer: Cesium.ImageryLayer.fromProviderAsync(earth_native, {}), | 
		
	
		
			
				|  |  |  |  |     baseLayer: ImageryLayer.fromProviderAsync(earth_native, {}), | 
		
	
		
			
				|  |  |  |  |   }) | 
		
	
		
			
				|  |  |  |  |   //去除cesium logo,隐藏版本信息
 | 
		
	
		
			
				|  |  |  |  |   const creditContainer = viewer.cesiumWidget.creditContainer as HTMLDivElement | 
		
	
	
		
			
				
					|  |  |  | @ -59,8 +67,8 @@ function perfViewer(viewer: Viewer) { | 
		
	
		
			
				|  |  |  |  |   viewer.scene.sun.show = false | 
		
	
		
			
				|  |  |  |  |   viewer.scene.skyBox.show = false | 
		
	
		
			
				|  |  |  |  |   // 优化加载WMTS图层速度
 | 
		
	
		
			
				|  |  |  |  |   Cesium.RequestScheduler.maximumRequestsPerServer = 18 // 设置cesium请求调度器的最大并发数量
 | 
		
	
		
			
				|  |  |  |  |   Cesium.RequestScheduler.throttleRequests = false //关闭请求调度器的请求节流
 | 
		
	
		
			
				|  |  |  |  |   RequestScheduler.maximumRequestsPerServer = 18 // 设置cesium请求调度器的最大并发数量
 | 
		
	
		
			
				|  |  |  |  |   RequestScheduler.throttleRequests = false //关闭请求调度器的请求节流
 | 
		
	
		
			
				|  |  |  |  | } | 
		
	
		
			
				|  |  |  |  | 
 | 
		
	
		
			
				|  |  |  |  | export { initViewer, perfViewer } | 
		
	
	
		
			
				
					|  |  |  | 
 |