我有一个使用 Google 地球的 Windows 窗体应用程序,用户可以在该应用程序中在地图上绘制一个用作地理围栏的多边形。
我想做的是能够缩放到多边形,以便它通过单击按钮很好地适应屏幕。一种缩放以适应功能。
找到多边形的中心并将 Google 地球相机设置为该纬度/经度很容易。
我需要的是一种算法,它采用纬度\经度、屏幕高度\宽度的边界框,然后确定设置相机的高度。
有没有人有这个算法或知道在哪里可以找到?
谢谢!!
我有一个使用 Google 地球的 Windows 窗体应用程序,用户可以在该应用程序中在地图上绘制一个用作地理围栏的多边形。
我想做的是能够缩放到多边形,以便它通过单击按钮很好地适应屏幕。一种缩放以适应功能。
找到多边形的中心并将 Google 地球相机设置为该纬度/经度很容易。
我需要的是一种算法,它采用纬度\经度、屏幕高度\宽度的边界框,然后确定设置相机的高度。
有没有人有这个算法或知道在哪里可以找到?
谢谢!!
要“放大到多边形”或任何其他KmlObject
,使用earth-api-utility-library可能是最简单的。
请参阅方法createBoundsView、setToBoundsView,尤其是flyToObject
例如,对象在哪里ge
,GEPlugin
并且polygon
是一个KmlPolygon
.
var gex = new GEarthExtensions(ge);
gex.util.flyToObject(polygon, { boundsFallback: true, aspectRatio: 1 } );