openlayers 根据中心点和半径得到实际距离的圆(平面)

时间:2024-03-28 09:54:53

在平面坐标系3857 下 使用 ol.geom.Circle(center,radiu) 绘制的圆会比实际测量小一圈,

这种情况下需要指定地球参数来获得准确的圆形:

ol.geom.Polygon.circular(sphere, center, radius, opt_n) 

其中sphere 为椭球半径 4326 坐标系的sphere 为 ol.Sphere(6378137)

     center 为中心点经纬度坐标

    radius 为半径距离,单位米

    opt_n 为割圆步长默认32

    let circle = new ol.geom.Polygon.circular(new ol.Sphere(6378137),[110.1,35.2],500,64)

 

openlayers 根据中心点和半径得到实际距离的圆(平面)