Bagaimana cara klip basemap OSM dengan poligon?

10

Saya telah membuat peta di qgis 2.0. Peta menggunakan plug-in OpenLayers untuk menambahkan lapisan OSM sebagai basemap. Saya ingin membatasi basemap agar hanya terlihat di dalam poligon tertentu yang didefinisikan dalam lapisan shapefile. Bagaimana saya mencapai ini?

Llaves
sumber
1
Anda harus menggunakan layer osm WMS (dikonversi ke layer geo-raster lokal) maka Anda dapat menggunakan Raster> Extraction> Clipper dan menggunakan opsi Mask dengan poligon Anda. lihat docs.qgis.org/2.0/html/id/docs/user_manual/plugins/…
Mapperz
Saya pikir saya akan mencoba metode Anda, tetapi tidak berhasil. Saya membuat proyek baru, dengan CRS EPSG standar: 4326. Saya menambahkan batas shapefile poligon saya (washington, DC), yang berada di State-Plane, tetapi saya telah mengaktifkan proyek ulang on-the-fly. Saya kemudian mencari server WMS OSM dan memilih OSM yang berkabel dengan deskripsi WMS. Saya terhubung, pilih layer 7 (jalan raya), dan klik "Tambah". Nama layer muncul di panel lapisan, tetapi tidak ada yang muncul di peta. Jika saya memperbesar ke tingkat lapisan, saya jauh di tempat mana pun (bujur -121 °, DC sekitar -77, yang merupakan tempat poligon saya), tetapi melihat jalan.
Llaves

Jawaban:

10

Cara ini berfungsi untuk saya:

  1. Buat polygon shapefile di seluruh dunia yang membentang dari + 180 ° E hingga -179,99 ° E dan dari + 85,5 ° N hingga -85,5 ° N dengan file teks yang berisi

    Nr; WKT

    1; POLYGON ((180 85.5, -179.9 85.5, -179.99 -85.5, 180 -85.5, 180 85.5))

  2. Tambahkan file itu sebagai Text delimited layer, menggunakan titik koma sebagai pemisah dan WGS84 sebagai CRS.

  3. Simpan layer sebagai shapefile di CRS poligon Anda, tambahkan itu ke kanvas dan hapus layer file teks.

  4. Kurangi shapefile poligon Anda dari itu, dan atur isi poligon yang tersisa menjadi 100% putih.

  5. Letakkan di atas layer Openlayers, dan hanya area yang diinginkan yang akan terlihat untuk semua level zoom:

masukkan deskripsi gambar di sini

AndreJ
sumber
1
Saya mempertimbangkan hal ini, tetapi bertanya-tanya apakah ada solusi yang lebih "elegan" seperti yang diberikan Mapperz di atas. Tapi ini berhasil, dan tidak seperti solusi Mapperz, ia tetap terhubung ke layer, jadi detailnya berskala secara dinamis saat Anda zoon.
Llaves