如何将 OpenLayers 多边形转换为圆形?
How do I Convert an OpenLayers Polygon to a Circle?
我有一个绘图功能,在一个案例中,一个人可以使用 OL docs example. When that's saved, the server needed to be have it converted to a polygon, and I was able to do that using fromCircle
中的方法画一个圆。
现在,我需要在圆被转换并保存后使其可修改。但是我没有看到从库中提供的多边形工具中获取圆形几何图形的明确方法。有一个 Polygon.circular
,但这听起来不像我想要的。
我猜想做到这一点的唯一方法是抓住中心和线段点之一,然后手动算出半径?
只要fromCircle
使用边设置为4的倍数和旋转零(默认)中心和半径就可以很容易地转换回圆:
center = ol.extent.getCenter(polygon.getExtent());
radius = ol.extent.getWidth(polygon.getExtent())/2;
我有一个绘图功能,在一个案例中,一个人可以使用 OL docs example. When that's saved, the server needed to be have it converted to a polygon, and I was able to do that using fromCircle
中的方法画一个圆。
现在,我需要在圆被转换并保存后使其可修改。但是我没有看到从库中提供的多边形工具中获取圆形几何图形的明确方法。有一个 Polygon.circular
,但这听起来不像我想要的。
我猜想做到这一点的唯一方法是抓住中心和线段点之一,然后手动算出半径?
只要fromCircle
使用边设置为4的倍数和旋转零(默认)中心和半径就可以很容易地转换回圆:
center = ol.extent.getCenter(polygon.getExtent());
radius = ol.extent.getWidth(polygon.getExtent())/2;