https://openlayers.org/en/latest/apidoc/module-ol_geom_Polygon-Polygon.html
正方形是由圆得到的,关键api: new ol.geom.Polygon.fromCircle()
/* 1、根据圆获取多边形 */
// [10,0] 绘制的坐标原点 5表示半径
const SquareCircle = new ol.geom.Circle([10,0],5)
const Square = new ol.Feature({
/*
第一个参数:Circle(圆对象)
第二个参数:正n边形
第三个参数:旋转的弧度
*/
geometry:new ol.geom.Polygon.fromCircle(SquareCircle,4,Math.PI/4)
})
/* 2、设置样式 */
Square.setStyle(
new ol.style.Style({
fill:new ol.style.Fill({
color:'rgba(255,255,255,.7)'
}),
stroke:new ol.style.Stroke({
color:"#333",
width:3
})
})
)
/* 3、设置数据源 */
var source = new ol.source.Vector({
features:[Square]
})
/* 4、创建图层 */
var vector = new ol.layer.Vector({
source:source
})
/* 5、将图层添加到地图容器中 */
map.addLayer(vector)
π = Math.PI
1° = π/180
45° = π/4;
45° = Math.PI/4;
new ol.geom.Polygon.fromCircle(SquareCircle, 4,Math.PI/4)