Czy istnieje sposób w QGIS, aby zapobiec nakładaniu się etykiet tekstowych na ikony stosowane do oznaczania warstwy punktowej?
Na poniższej przykładowej mapie są dwie warstwy:
- Warstwa dróg, która jest oznakowana przy użyciu nowego silnika do etykietowania.
- Warstwa punktowa, która wykorzystuje ikony svg do wyświetlania tarcz autostrady.
Mam do tego inne zastosowania, takie jak zapobieganie nakładaniu się ikon stacji kolejowej. W tym przykładzie mógłbym po prostu przenieść punkt, jednak w innych przypadkach, takich jak stacja metra, nie jest to realne rozwiązanie.
Możliwe rozwiązanie, które rozważam, obejmowałoby:
- Dodanie kolumny do pliku dbf warstwy punktowej.
- Wypełnianie dodanej kolumny wartością Null lub spacją.
- Włączanie etykietowania [nowego stylu] QGIS dla dodanej kolumny.
Czy to jest dobra droga, czy jest lepsza metoda?
Informacje QGIS: Używam wersji 1.7.4 i ostatnio skompilowanej wersji 1.8 w systemie Mac OS 10.7.4. Dostępne są również wersje dla systemów Linux i Windows.
Aktualizacja postępów : Metoda opisana powyżej działa, chociaż wymagane są dwie modyfikacje procesu.
- Zamiast używać znaku spacji lub wartości Null , należy użyć spacji niełamliwej . Podczas testowania znalazłem, pola z Null nie są renderowane, a pola z tylko spacjami są konwertowane na Null . (Zobacz tę stronę Wikipedii, aby uzyskać informacje na temat wpisywania spacji niełamliwych ).
- Podczas ustawiania ustawień etykietowania warstw na karcie Zaawansowane ustaw opcję Umieszczenie na Over Point . Ustaw także Priorytet tak, aby był wyższy niż jakiekolwiek inne warstwy z etykietami.
W zależności od rozmiaru użytej ikony może być konieczne przeprowadzenie pewnych eksperymentów, aby wszystko działało zgodnie z oczekiwaniami. W zależności od okoliczności może być łatwiej używać wielu znaków, niż próbować zwiększyć wagę i / lub rozmiar czcionki.
Testowane z QGIS 1.7 i niedawno skompilowanym 1.8 na Mac OS 10.7.4.