Openlayers 3 OpenLayers 3调整功能的大小

Openlayers 3 OpenLayers 3调整功能的大小,openlayers-3,Openlayers 3,我在应用程序中使用OpenLayers 3和OpenStreetMap。 我已经设法在地图上画出了圆圈向量来画标记,我遇到的问题是,当放大和缩小时,圆圈的大小总是相同的。 如何根据分辨率更改向量的大小 以下是我的向量定义: var dealerSource = new ol.source.Vector(); function dealerStyle(feature) { var style = new ol.style.Style({ image: new ol.styl

我在应用程序中使用OpenLayers 3和OpenStreetMap。 我已经设法在地图上画出了圆圈向量来画标记,我遇到的问题是,当放大和缩小时,圆圈的大小总是相同的。 如何根据分辨率更改向量的大小

以下是我的向量定义:

var dealerSource = new ol.source.Vector();
function dealerStyle(feature) {
    var style = new ol.style.Style({
        image: new ol.style.Circle({
            radius: 6,
            stroke: new ol.style.Stroke({
                color: 'white',
                width: 2
            }),
            anchor: [1.5, 1.5],
            fill: new ol.style.Fill({
                color: 'green'
            })
        })
    });
    return [style];
}

您可以根据缩放级别更改圆的大小(如果您希望这样做的话)

getZoom()以数字形式返回地图的缩放级别,您可以使用它,也可以对其进行变换以适应所需的圆大小

请注意,缩放级别越大,绘制的圆就越大,要进行反向操作,可以将该值替换为:

yourMaxZoomLevel - map.getView().getZoom()

您还可以使用getResolution(),它也会返回一个数字

您可以根据缩放级别更改圆的大小(如果您想这样做的话)

getZoom()以数字形式返回地图的缩放级别,您可以使用它,也可以对其进行变换以适应所需的圆大小

请注意,缩放级别越大,绘制的圆就越大,要进行反向操作,可以将该值替换为:

yourMaxZoomLevel - map.getView().getZoom()

您也可以使用getResolution(),它也会返回一个数字

我希望能够执行的操作与使用OpenLayers 2的示例相同:我希望能够执行的操作与使用OpenLayers 2的示例相同: