O problema
O plugin OpenLayers do QGIS permite acrescentar nos projectos camadas de fontes tais como Bing e Google: as camadas acrescentadas desta forma são obviamente muito úteis mas este datasources possuem algumas desvantagens:
- nos layouts de impressão, uma vez que os mesmos forem exportados para PDF/imagem (ou impressos em papel) há um desvio entre as imagens e as features raster/vectoriais presentes no projecto
- este camadas não podem ser usadas como input para operações de geoprocessamento ou analise
- não se pode definir a transparência geral assim como nenhuma outra propriedade das camadas (visibilidade baseada em escala, transparência de pixeis com valor especifico, etc.)
A solução
- Não usar o plugin OpenLayers
- Gravar os seguintes ficheiros xml (carregar no link com o botão direito do rato “gravar link como”). A seguir acrescentar este ficheiros/camadas no QGIS como se fossem rasters:
O primeiro link é o datasource para as imagens Bing Maps/Virtual Earth e pode ser usado directamente. O segundo link é o datasource para camadas Google. Este ficheiro deverá ser editado com um editor de texto para: 1) mudar o CRS de 900913 para 3857, 2) escolher a camada Google que se pretende visualizar. Por exemplo o ficheiro deverá ser editado da seguinte forma para visualizar as imagens de satélite/aéreas:
<GDAL_WMS> <!-- Data is subject to term of use detailed at http://code.google.com/intl/nl/apis/maps/terms.html and http://www.google.com/intl/en_ALL/help/terms_maps.html --> <Service name="TMS"> <!-- <ServerUrl>http://mt.google.com/vt/lyrs=m&x=${x}&y=${y}&z=${z}</ServerUrl>--> <!-- Map --> <ServerUrl>http://mt.google.com/vt/lyrs=s&x=${x}&y=${y}&z=${z}</ServerUrl> <!-- Satellite --> <!-- <ServerUrl>http://mt.google.com/vt/lyrs=y&x=${x}&y=${y}&z=${z}</ServerUrl> --> <!-- Hybrid --> <!-- <ServerUrl>http://mt.google.com/vt/lyrs=t&x=${x}&y=${y}&z=${z}</ServerUrl> --> <!-- Terrain --> <!-- <ServerUrl>http://mt.google.com/vt/lyrs=p&x=${x}&y=${y}&z=${z}</ServerUrl> --> <!-- Terrain, Streets and Water --> </Service> <DataWindow> <UpperLeftX>-20037508.34</UpperLeftX> <UpperLeftY>20037508.34</UpperLeftY> <LowerRightX>20037508.34</LowerRightX> <LowerRightY>-20037508.34</LowerRightY> <TileLevel>20</TileLevel> <TileCountX>1</TileCountX> <TileCountY>1</TileCountY> <YOrigin>top</YOrigin> </DataWindow> <Projection>EPSG:3857</Projection> <BlockSizeX>256</BlockSizeX> <BlockSizeY>256</BlockSizeY> <BandsCount>3</BandsCount> <MaxConnections>5</MaxConnections> <Cache /> </GDAL_WMS>
As camadas acrescentadas desta forma são rasters WMS, sendo portanto possível: visualizar a escalas arbitrarias, reprojectar, mudar transparência, configurar a visibilidade baseada em escalas, etc.
O mais importante é que estas camadas não irão criar problemas de desvios quando usadas no print composer do QGIS.
Notas:
- o sistema de coordenadas deste camadas é o com código EPSG 3857, ou seja Google Mercator
- a resolução deste camadas é respectivamente: Google Satellite: 15cm , Bing Aerial: 30cm
- o QGIS permite fazer a operação save as (“gravar como”) também para camadas rasters. Isso significa que é possível gravar localmente (sob forma de ficheiros GeoTIFF) mapas com imagens Google/Bing (gravar localmente desta forma áreas grandes com resolução elevada irá significar tempos de processamento muito compridos).
- ler com atenção as condições de uso deste provedores de dados. O autor e o grupo QGIS-PT não se responsabilizam para o uso impróprio deste mapas
- para mais informações: http://www.gdal.org/frmt_wms.html