我正在使用Gmap.Get强大的映射工具来开发企业软件。如何利用多边形点计算Gmap.Net中的多边形中心?
发布于 2015-08-01 05:09:53
使用以下代码计算Gmap.Net中多边形的中心:
Private Function CalculateCenterOfPolygon(polyPoints As List(Of PointLatLng)) As PointLatLng
Dim centerPoint As New PointLatLng()
Dim sum As Integer = 0
Dim Lat As Double = 0
Dim Lng As Double = 0
For Each point As PointLatLng In polyPoints
sum += 1
Lat += point.Lat
Lng += point.Lng
Next
Lat = Lat / sum
Lng = Lng / sum
centerPoint.Lat = Lat
centerPoint.Lng = Lng
Return centerPoint
End Function发布于 2020-01-16 07:18:03
用多边形的点计算RectLatLng。
double lat = points.Max(item => item.Lat);
double lng = points.Min(item => item.Lng);
double height = lat - points.Min(item => item.Lat);
double width = points.Max(item => item.Lng) - lng;
var rect = new RectLatLng(lat, lng, width, height);而rect.LocationMiddle是中心。
https://stackoverflow.com/questions/31758466
复制相似问题