features
(마커)가 포함 된 2 layer
의지도가 있습니다. 지도가 충분히 확대 된 경우 1 layer
이 보이지 않게되고 다른 하나가 표시됩니다 (그리고 그 반대). 이처럼 :Openlayers 4 - 기능 클릭시 보이지 않는 레이어 만들기
this.map.getView().on('propertychange', (e: any) => {
if (e.key == "resolution") {
if (this.map.getView().getZoom() >= 17) {
exampleLayer1.setVisible (false);
exampleLayer2.setVisible (true);
} else if(this.map.getView().getZoom() < 17) {
exampleLayer2.setVisible (false);
exampleLayer1.setVisible (true);
}
}
})
내가 지금 추가해야하는 것은 당신이 exampleLayer1
계층에 feature
를 클릭하면지도가 exampleLayer1
사라지게 할 것이다, 해당 기능의 위치에와 센터 확대 것이라고이며, exampleLayer2
표시.
var select_interaction = new ol.interaction.Select();
select_interaction.getFeatures().on("add", (e: any) => {
var feature = e.element;
this.map.getView().setCenter(feature.getGeometry().getCoordinates())
this.map.getView().setZoom(17);
});
this.map.addInteraction(select_interaction);
거의 모든 하나 layer
가 사라지고 다른이 나타납니다 의미, 잘 작동이 들어,이 기능을 사용합니다. 그러나 feature
을 클릭하면 부모 (layer
)가 사라지더라도 사라지지 않습니다. 그런 다음 feature
에서 클릭하면 사라집니다.
클릭하면 feature
을 클릭하면 (feature
클릭)을 보이지 않게 할 수 있습니까?
Tx,이 도움이되었습니다. – FlorisdG