根据圆心和半径的纬度和经度生成圆点



我用(lat,lon(表示圆心。
我有一个半径R,单位是公里。
我的代码

for (var i = 0; i < steps; i++) {
let degrees = (i/steps)*360
let radians = (Math.PI/180)*degrees
let x = lat + radius * Math.cos(radians)
let y = lon + radius * Math.sin(radians)
coordinates.push([x,y])
}

返回一个椭圆形,因为纬度和可变半径不是以公里为单位,而是以坐标为单位。

如何调整此代码以生成一个完美的圆?

对于半径不是很大的圆,您可以使用除以cos(latitude)来校正经度维度,因为子午线/平行比取决于此值。

最新更新