mirror of
				https://github.com/jiawanlong/Cesium-Examples.git
				synced 2025-11-04 09:14:17 +00:00 
			
		
		
		
	
		
			
	
	
		
			58 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
		
		
			
		
	
	
			58 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| 
								 | 
							
								<!--********************************************************************
							 | 
						||
| 
								 | 
							
								* by jiawanlong
							 | 
						||
| 
								 | 
							
								*********************************************************************-->
							 | 
						||
| 
								 | 
							
								<!DOCTYPE html>
							 | 
						||
| 
								 | 
							
								<html>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								<head>
							 | 
						||
| 
								 | 
							
								    <meta charset="UTF-8" />
							 | 
						||
| 
								 | 
							
								    <link rel="stylesheet" href="./../../cesium/Cesium1.98/Widgets/widgets.css">
							 | 
						||
| 
								 | 
							
								    <script type="text/javascript" src="./../../cesium/Cesium1.98/Cesium.js"></script>
							 | 
						||
| 
								 | 
							
								    <script src="./latlng.js"></script>
							 | 
						||
| 
								 | 
							
								    <script src="./analyser.js"></script>
							 | 
						||
| 
								 | 
							
								    <script src="./viewshed.js"></script>
							 | 
						||
| 
								 | 
							
								</head>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								<body style="margin: 0; overflow: hidden; background: #fff; width: 100%; height: 100%; position: absolute; top: 0">
							 | 
						||
| 
								 | 
							
								    <div id="map" style="margin: 0 auto; width: 100%; height: 100%"></div>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    <script type="text/javascript">
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        Cesium.Ion.defaultAccessToken = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI3ZjQ5ZGUzNC1jNWYwLTQ1ZTMtYmNjYS05YTY4ZTVmN2I2MDkiLCJpZCI6MTE3MTM4LCJpYXQiOjE2NzY0NDUyODB9.ZaNSBIfc1sGLhQd_xqhiSsc0yr8oS0wt1hAo9gbke6M'
							 | 
						||
| 
								 | 
							
								        const viewer = new Cesium.Viewer('map', {
							 | 
						||
| 
								 | 
							
								            contextOptions: {
							 | 
						||
| 
								 | 
							
								                requestWebgl1: true,
							 | 
						||
| 
								 | 
							
								            },
							 | 
						||
| 
								 | 
							
								        });
							 | 
						||
| 
								 | 
							
								        // 开启帧率
							 | 
						||
| 
								 | 
							
								        viewer.scene.debugShowFramesPerSecond = true;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        // 加载默认地形
							 | 
						||
| 
								 | 
							
								        viewer.terrainProvider = Cesium.createWorldTerrain({
							 | 
						||
| 
								 | 
							
								            requestWaterMask: true, // 请求水掩膜以实现水体效果
							 | 
						||
| 
								 | 
							
								            requestVertexNormals: true // 请求法线以实现光照效果
							 | 
						||
| 
								 | 
							
								        });
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        // 深度监测
							 | 
						||
| 
								 | 
							
								        viewer.scene.globe.depthTestAgainstTerrain = true;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        var viewsheds = [];
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        var options = {
							 | 
						||
| 
								 | 
							
								            qdOffset: 2,
							 | 
						||
| 
								 | 
							
								            zdOffset: 2
							 | 
						||
| 
								 | 
							
								        };
							 | 
						||
| 
								 | 
							
								        var viewshed2 = new viewshed(viewer, options);
							 | 
						||
| 
								 | 
							
								        viewsheds.push(viewshed2);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								        function click_clear() {
							 | 
						||
| 
								 | 
							
								            viewsheds.forEach((element) => {
							 | 
						||
| 
								 | 
							
								                element.clear();
							 | 
						||
| 
								 | 
							
								            });
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    </script>
							 | 
						||
| 
								 | 
							
								</body>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								</html>
							 |