Estou tentando atualizar meu mapa do Openlayers 2.12 para o Openlayers 3 para aproveitar os fantásticos efeitos de transição em camadas transparentes (algo que OL2 e Leaflet não podem fazer de maneira atraente). Isso e eu não quero atrasar a atualização dos meus sites quando o OL3 for lançado oficialmente. No meu site atual (OL2.12), uso caixas de seleção em um menu HTML simples para alternar a visibilidade da camada. Eu empurro cada camada para uma matriz (espero ter certeza de que o OL3 agora gera automaticamente uma matriz para as camadas chamadas 'camadas') e cada caixa de seleção chama essa função (as caixas de seleção recebem um valor representativo do número da matriz de camadas ):
function layerswitch(evt){
layers[evt.value].setVisibility(evt.checked);
}
No OL3, isso não funciona mais e não consigo encontrar nenhum exemplo ou documentação que detalha como definir a visibilidade da camada.
fonte
Aragão, sua resposta me apontou na direção certa. Abaixo está o meu código imundo final para adicionar camadas a uma matriz e controlá-las.
Em um arquivo javascript, inicializei o mapa e usei uma função para alternar a visibilidade da seguinte maneira:
No HTML, usei caixas de seleção simples (exemplo de alternância poli1):
fonte
Abaixo está um link para um complemento do OpenLayers 3, com um comutador de camada no estilo ol2.
https://github.com/walkermatt/ol3-layerswitcher
fonte