mirror of
				https://github.com/jiawanlong/Cesium-Examples.git
				synced 2025-11-03 16:54:16 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			64 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			64 lines
		
	
	
		
			2.6 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>
 | 
						|
</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', {});
 | 
						|
        viewer.scene.debugShowFramesPerSecond = true;
 | 
						|
 | 
						|
        viewer.clock.onTick.addEventListener(() => {
 | 
						|
            let pitch = Cesium.Math.toDegrees(viewer.camera.pitch);
 | 
						|
            if (pitch > -30) {
 | 
						|
                pitch = -30;
 | 
						|
                contrlDea()
 | 
						|
            } else if (pitch < -90) {
 | 
						|
                pitch = -90
 | 
						|
                contrlDea()
 | 
						|
            }
 | 
						|
            viewer.camera.setView({
 | 
						|
                orientation: {
 | 
						|
                    heading: viewer.camera.heading,
 | 
						|
                    pitch: Cesium.Math.toRadians(pitch),
 | 
						|
                    roll: viewer.camera.roll
 | 
						|
                }
 | 
						|
            });
 | 
						|
            // contrlDea()
 | 
						|
        })
 | 
						|
 | 
						|
        
 | 
						|
        function contrlDea() {
 | 
						|
            const cameraController = viewer.scene.screenSpaceCameraController;
 | 
						|
            cameraController, enableLook = false;//禁用惯性滚动
 | 
						|
            cameraController.enableTranslate = false;//禁用惯性平移
 | 
						|
            cameraController.enableRotate = false;//禁用旋转性
 | 
						|
            cameraController.enableZoom = false;//禁用缩放性
 | 
						|
            cameraController.enableTilt = false;//禁用俯仰惯性
 | 
						|
            cameraController.enableInputs = true;
 | 
						|
            // allowDea()
 | 
						|
        }
 | 
						|
 | 
						|
        function allowDea(){
 | 
						|
            const cameraController = viewer.scene.screenSpaceCameraController;
 | 
						|
            cameraController, enableLook = true;//禁用惯性滚动
 | 
						|
            cameraController.enableTranslate = true;//禁用惯性平移
 | 
						|
            cameraController.enableRotate = true;//禁用旋转性
 | 
						|
            cameraController.enableZoom = true;//禁用缩放性
 | 
						|
            cameraController.enableTilt = true;//禁用俯仰惯性
 | 
						|
            // cameraController.enableInputs = false;
 | 
						|
        }
 | 
						|
    </script>
 | 
						|
</body>
 | 
						|
 | 
						|
</html> |