cesium飞行到显示指定范围


一、创建范围矩形

var rectangle = new Cesium.Rectangle.fromDegrees(west, south, east, north);

 

 二、相机定位

viewer.camera.flyTo({
  destination: rectangle
});

 

三、使用示例记录一下

需求是从后台获取到的路线,前端绘制在cesium中并需要居中显示。

计算出坐标点中的经度和纬度的最大最小值,即为需要显示的范围。

//arr:坐标点数组
//offset:四周留白距离(可选)
export const flyToLineCenter = (arr,offset)=>{ let long_max=arr[0][0]  //east let long_min=arr[0][0]  //west let lat_max=arr[0][1]   //north let lat_min=arr[0][1]   //south for(let i=0;i<arr.length;i++){ if(arr[i][0]>long_max){ long_max=arr[i][0] } if(arr[i][0]<long_min){ long_min=arr[i][0] } if(arr[i][1]>lat_max){ lat_max=arr[i][1] } if(arr[i][1]<lat_min){ lat_min=arr[i][1] } } let offset_num = offset?offset:0 let rectangle = new Cesium.Rectangle.fromDegrees(long_min-offset_num, lat_min-offset_num, long_max+offset_num, lat_max+offset_num); viewer.camera.flyTo({ destination: rectangle }); }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM