Gaya layer berbeda pada skala berbeda di QGIS?

8

Saya ingin dapat menunjukkan gaya dasar untuk lapisan pada skala besar, misalnya GB-lebar, dengan semua poligon yang sama, tetapi untuk ini berubah pada skala yang lebih kecil, misalnya 1: 25K, untuk membedakan antara poligon.

Idealnya saya ingin dapat melakukan ini tanpa mengubah gaya / memuat gaya yang disimpan, setiap kali saya mengubah skala.

Apakah ini mungkin?

JimS-W
sumber
3
Buka data yang sama dengan dua layer terpisah dan atur rentang skala dari visibilitas dependensi Properties-General-Scale sehingga hanya satu layer yang terlihat pada skala apa pun.
user30184
Selamat datang di gis.stackexchange! Harap perhatikan bahwa pertanyaan yang bagus di situs ini diharapkan menunjukkan beberapa tingkat penelitian di pihak Anda, yaitu apa yang telah Anda coba dan - jika berlaku - kode sejauh ini. Untuk info lebih lanjut, Anda dapat memeriksa faq kami .
underdark

Jawaban:

19

Ya itu mungkin.

Yang Anda butuhkan adalah Styling berbasis aturan dengan aturan skala seperti yang ditunjukkan pada gambar (maaf untuk tata letak jerman) masukkan deskripsi gambar di sini

Ini terlihat seperti ini ketika Anda memperbesar dan memperkecil: masukkan deskripsi gambar di sini perlu diingat, bahwa ketika Anda memperkecil dari tingkat zoom yang ditentukan, layer tidak akan ditampilkan.

EDIT:

Untuk memiliki gaya yang berbeda dalam suatu kategori Anda dapat memperbaiki aturan dengan mengklik kanan pada aturan -> Tambahkan skala dan atur skala yang berbeda. Untuk membuat ini berfungsi, Anda perlu membuat "aturan induk", yang mendefinisikan kelas transparan.

Agar layer terlihat sama, Anda dapat menambahkan aturan tanpa filter dan mengatur skala menjadi lebih kecil sebagai skala yang ditentukan oleh kelas (lihat gambar 3 untuk pengaturan dan gambar 4 untuk hasilnya)

masukkan deskripsi gambar di sini

hasil: masukkan deskripsi gambar di sini

Tertawa
sumber
Bagus, terima kasih. Apakah mungkin untuk 'mengkategorikan' poligon berdasarkan bidang, dalam opsi berbasis aturan? Saya akan berpotensi menampilkan lusinan poligon pada satu waktu, dan ingin dapat mengkategorikannya sehingga masing-masing warna berbeda, tanpa harus mengubah warna untuk setiap poligon / bidang secara manual.
JimS-W
1
@ JimS-W ya itulah yang saya lakukan dengan aturan "id" = 1, "id" = 2 dan seterusnya. Id dapat berupa bidang apa saja di shapefile Anda (lihat edit saya)
LaughU
Terima kasih @ LaughU. Saya menemukan mungkin untuk melakukan apa yang saya inginkan dengan menyempurnakan aturan (dalam opsi Rule-Based) dengan mengklik kanan pada aturan -> Perbaiki Aturan Saat Ini -> Tambahkan kategori ke aturan, dan kemudian mengklasifikasikan berdasarkan fitur INDO. Sayangnya sepertinya itu tidak akan dapat digunakan untuk lapisan khusus ini, karena ada begitu banyak poligon yang terus menabrak QGIS, tetapi akan sangat berguna untuk lapisan lain yang sedang saya kerjakan.
JimS-W
"perlu diingat, bahwa ketika Anda memperkecil dari tingkat zoom yang ditentukan, layer tidak akan ditampilkan." Apakah QGIS memiliki fitur "jika tidak" atau "default" untuk kasus ini?
jpmc26
1
@ jpmc26 Saya tidak tahu apakah QGIS memiliki nilai default tetapi solusinya adalah untuk membungkus level zoom Anda dengan sesuatu seperti dari 1: 100.000 hingga 1: 100.000.000 untuk memastikan itu akan ditampilkan pada skala yang wajar tidak peduli seberapa jauh Anda memperkecil
LaughU