是否有人尝试在Openlayers3中使用本地服务器磁贴的区域中绘制多边形?
对于地图上的特定区域,我使用本地服务器磁贴来显示建筑物的计划,而其余的雄蕊瓷砖则使用。
问题在于,一旦绘制了多边形,它可能会“丢失 - 丢失”。如果我尝试在“外部”区域上绘制多边形,那么自定义图块呈现的那一切就可以了。
我在自定义磁贴中使用了zIndex,但没有运气。有什么想法吗?
答案 0 :(得分:1)
我试图在两个局部图块上设置zIndex(低于绘制的特征),并且绘制的特征要比局部图块大,但最后当绘制的特征插入到我添加的矢量图层时地图上的矢量图层,在那里设置zIndex,一旦绘制多边形,使用clear()将其删除。
因此,
构造矢量图层
var stamenTiles = new ol.layer.Tile({
source: new ol.source.Stamen({
layer: 'toner'
})
});
var source = new ol.source.Vector(); //DRAWING
var vector = new ol.layer.Vector({ //DRAWING
source: source,
zIndex: 100 // place the Polygon on top of the local tiles
});
地图对象:
var map = new ol.Map({
target: 'map',
layers: [stamenTiles, vector],
view: new ol.View({
center: ol.proj.fromLonLat([CoordinatesFactory.getLongitude(), CoordinatesFactory.getLatitude()]),
zoom: 19,
minZoom: 19,
maxZoom: 22
})
});
删除绘制的矢量图层
vector.getSource().clear();