我有几个矢量图层有一个多边形,一个有线。我们需要将线添加到附加到多边形的线层(数据库过程需要存储在多边形属性中的多边形ID)Openlayers 2. z轴和选择控制
所以我对lineLayer有一个drawFeature控件,并且selectFeature (在悬停时存储ID而不是仅选择)在polygonLayer上。它实际上工作得很好,除了线图层的z轴较小外,所以它显示了在多边形下绘制的新线条。宁愿让线显示在多边形上。我知道这是因为当selectFeature控件处于活动状态时,它将多边形图层的z-index设置为高于lineLayer。 我使用lineLayer.setZIndex(800)或其他方式手动设置线层的z-index高于多边形层,并且确实使新线绘制在多边形上,但是然后selectFeature事件不会触发。 我已经考虑了几种解决方案,包括将drawFeature添加到我的多边形图层,然后在完成时将该特征移动到线条图层,但它仍然在多边形下呈现,我甚至在我的样式地图的“临时”样式上使用了graphicZIndex在多边形图层上。无济于事(我确实在多边形图层上设置了renderOptions zindexing为真)
我可能会从错误的角度来处理这个问题,所以我愿意提供建议。如果在矢量图层上有一个像getFeatureByPosition(position)这样的函数,我可以抓住sketchStarted上的位置,并对sketchEnded事件进行查询,但到目前为止,我一直无法找到类似的东西。
我现在不在我的开发箱中,以防万一有人想知道为什么没有代码。想要发布这个工作,但基地网络有问题显示登录页面(由于ssl我认为)