W weekend autorzy udostępnili kolejną wersję aplikacji QGIS, nazwaną Brighton. Jest to kolejna z rzędu wersja, w której szczególny nacisk położono na rozwój kompozytora wydruków oraz narzędzi do stylizacji warstw. Na pewno ucieszy to osoby przygotowujące w QGIS wiele map. Oczywiście zmiany dotknęły również inne elementy tej aplikacji, usuniętych zostało wiele błędów, dodano nowe lub rozwinięto istniejące już funkcjonalności. Dzięki temu praca w QGIS powinna być jeszcze wygodniejsza.
Redaktorzy bloga o urbanistyce i gospodarce przestrzennej URBNEWS stworzyli tutorial do najnowszej wersji QGIS. Polecamy i cieszymy się, że kolejna grupa użytkowników chce się dzielić swoją wiedzą na temat QGIS.
Tutorial QGIS: 1. Pierwsze kroki z QGIS
Tutorial QGIS: 2. Układy współrzędnych
Tutorial QGIS: 3. Warstwa wektorowa
Tutorial QGIS: 5. Kalibracja warstwy rastrowej
Tutorial QGIS: 6. Wektoryzacja
Tutorial QGIS: 7. Geoprocessing
Tutorial QGIS: 9. Etykietowanie cz. 1.
Tutorial QGIS: 10. Etykietowanie cz. 2.
W weekend została wydana nowa wersja aplikacji QGIS oznaczona numerem 2.4. Nazwa Chugiak stanowi uhonorowanie dla autora QGIS Gary’ego Shermana, który mieszka w miejscowości na Alasce o takiej właśnie nazwie.
Autorzy jak zwykle przygotowali stronę z wizualnym przeglądem zmian, gdzie można znaleźć szczegółowe opisy wszystkich znaczących nowych funkcjonalności. Wersje binarne są już dostępne na oficjalnej stronie projektu http://qgis.org, w repozytoriach dystrybucji Linux Fedora, Debian i Ubuntu oraz poprzez instalator OSGeo4W.
Jest to druga z kolei wersja wydana w nowym cyklu wydawniczym. Przypomnijmy, że teraz QGIS wydawany jest co ok. 4 miesiące, wersje mające numer kończący się na liczby nieparzyste oznaczają teraz niestabilne wydania rozwojowe (stąd brak oficjalnej wersji 2.3), natomiast liczby parzyste określają oficjalne, stabilne wersje przeznaczone do powszechnego użytku. Dzięki bardzo aktywnej społeczności, w okresie poprzedzającym oficjalne wydanie aplikacji, programiści usunęli wiele błędów oraz doszlifowali nowo dodane i istniejące funkcjonalności.
Jak zwykle nowe wydanie przynosi wiele ciekawych funkcjonalności oraz usprawnień. Poniżej opisano kilka wybranych z długiej listy.
QGIS potrafi teraz wykorzystać moc komputerów wyposażonych procesory wielordzeniowe. Każda wczytana warstwa jest teraz renderowana niezależnie od pozostałych, dzięki czemu wyświetlenie kompozycji w oknie mapy trwa znacznie krócej. Proces renderowania można również przerwać w każdej chwili, dzięki czemu interfejs jest bardziej responsywny. W połączeniu z generalizacja obiektów, wprowadzoną w QGIS 2.2, renderowanie warstw w oknie mapy jest wyraźnie szybsze i płynniejsze.
W trybie edycji warstwy w oknie tabeli atrybutów pojawia się dodatkowy pasek narzędzi służący do szybkiej zmiany wartości pól – analogicznie jak ma to miejsce Kalkulatorze pól, ale bez konieczności otwierania nowego okna.
W plikach QLR (QGIS Layer Definition) można przechowywać informacje dotyczące symbolizacji i ustawień danej warstwy. W pliku przechowywana jest również ścieżka do warstwy na dysku lub w bazie danych, dzięki czemu można ją wczytać do wielu projektów zachowując wszystkie ustawienia. Więcej informacji można znaleźć w artykule Nathana Woodrow’a – autora tej funkcjonalności.
Okno z informacjami o obiekcie jest teraz dokowalne, dzięki czemu nie zasłania okna QGIS. W oknie można również szybko zmienić tryb wyboru obiektu do identyfikacji (wcześniej trzeba było to ustawiać w opcjach co było niewygodne) oraz sposób wyświetlania wyników dla rastrów (drzewo, tabela, wykres).
Nowy sposób wypełnienia poligonów – gradient wyliczany jest na podstawie kształtu danego obiektu. Podobnie jak przy zwykłym wypełnieniu gradientem można ustawić przejście pomiędzy dwoma kolorami lub wybrać jedną z palet kolorów. Dodatkowe informacje można znaleźć w artykule Nyalla Dawson’a.
Czyli odwrotne renderowanie poligonów. Pozwala stylizować obszar poza danym poligonem. W ten sposób łatwo można uzyskać efekt maski, szczególnie przydatny przy tworzeniu serii wydruków za pomocą narzędzia Atlas w Kompozytorze wydruków.
Funkcja pozwalająca tworzyć otoczki wokół punktów. W przeciwieństwie do Convex Hull otoczki te są wklęsłe, a ich kształt uzależniony jest od ustawienia odpowiedniej tolerancji. Efekt działania można zobaczyć pod tym adresem. Funkcja ta została dodana przez programistę GIS Support, Piotra Pociaska.
o których warto wspomnieć to m.in.:
Najnowsza, stabilna wersja QGIS, oznaczona numerem 2.2, została oficjalnie udostępniona wszystkim użytkownikom. A co się stało z QGIS 2.1? (poprzednia oficjalna wersja miała numer 2.0). Zaszły pewne zmiany: od teraz, wersje mające numer kończący się na liczby nieparzyste oznaczają teraz niestabilne wydania rozwojowe, natomiast liczby parzyste określają oficjalne, stabilne wersje. Dodatkowo kolejne wydania 2.x będą udostępniane regularnie co 4 miesiące. Więcej szczegółów, w tym daty kolejnych wydań, można znaleźć na oficjalnej stronie projektu. Należy podkreślić, że daty dotyczą jedynie kodu źródłowego. Binarne wersje instalacyjne powinny się pojawiać w ciągu kilku dni od ogłoszenia nowej wersji. W momencie pisania niniejszego artykułu QGIS 2.2 dostępny jest już poprzez instalator OSGeo4W.
Dzięki dodaniu możliwości upraszczania obiektów w locie wyświetlanie warstw wektorowych jest teraz zauważalnie szybsze. Im bardziej skomplikowana jest warstwa tym przyspieszenie renderowania jest większe. Opcję generalizacji można ustawić dla całego projektu jak również dla pojedynczych warstw. Należy jednak pamiętać, że przy ustawieniu wyższych progów upraszczania mogą pojawić się artefakty jak, np. dziury pomiędzy poligonami.
Dzięki złączeniom tabel QGIS umożliwia definiowanie relacji wiele do jednego. W QGIS 2.2 dodane zostało narzędzie do tworzenie relacji jeden do wielu. Dokładny opis tej funkcjonalności (w języku angielskim) można znaleźć na blogu Matthiasa Kuhna.
Po raz kolejny sporo nowości można znaleźć w kompozytorze wydruków. Każdy element kompozytora można teraz obrócić o dowolny kąt. Przy zapisywaniu kompozycji do pliku graficznego możliwe jest wygenerowanie pliku wpasowania, dzięki czemu utworzony obraz można wczytać jako raster z zachowaną georeferencją. Narzędzie Atlas zostało rozbudowane m.in. o możliwość podglądu wszystkich stron przed wygenerowaniem pliku wynikowego.
Usprawnieniu uległa także symbolizacja warstw. Możliwe jest teraz odwrócenie kolejności w palecie kolorów bez konieczności tworzenia nowej palety. Ciekawe efekty można uzyskać dzięki nowym opcjom dostępnym przy wypełnieniu obiektów gradientem barw. Więcej szczegółów można znaleźć pod tym adresem. Symbolizacja Wartość unikalna i Symbol stopniowy pozwalają kategoryzować dane na podstawie wyrażeń zdefiniowanych przez użytkownika. Pozwala to klasyfikować atrybuty na podstawie więcej niż jednej kolumny lub zdefiniowanych formuł.
Powyżej opisane zostały wybrane funkcje dodane w QGIS 2.2. Pełniejszy opis można znaleźć w formie wizualnej pod tym adresem.
Wtyczka Processing (do wersji QGIS 1.8 SEXTANTE) zawiera wiele pomocnych narzędzi usprawniających pracę z danymi przestrzennymi w QGIS. Jednym z nich jest mechanizm pozwalający na tworzenie i uruchamianie przez użytkowników skryptów napisanych w języku programowania Python. Dzięki temu aby dodać nową funkcjonalność nie trzeba tworzyć nowej wtyczki, a przy tym martwić się o zbudowanie interfejsu, właściwe wypełnienie metadanych itp. Skrypty traktowane są przez Processing w ten sam sposób jak pozostałe algorytmy. Można je więc uruchomić w oknie dialogowym lub w trybie wsadowym jak również wykorzystać w graficznym modelarzu. Co więcej, w skryptach można wykorzystać już istniejące algorytmy.
Aby stworzyć nowy skrypt należy w oknie Narzędzia geoprocessingu rozwinąć pozycję Scripts ->Tools i podwójnie kliknąć na Create new script. Zostanie wyświetlony edytor skryptu. Posiada on kilka funkcji ułatwiających pisanie kodu źródłowego jak kolorowanie i autouzupełnianie składni, zwijanie/rozwijanie bloków kodu czy numerowanie linii. W górnej części okna dostępne są przyciski umożliwiające m.in. zapis zmian, edycję pomocy czy uruchomienie skryptu.
Na początku kodu można określić nazwę grupy, w której będzie wyświetlany skrypt w oknie Narzędzi geoprocessingu:
[code lang=”python”]##Nazwa grupy=group[/code]
Jeśli sami nie określimy grupy to skrypt zostanie przypisany do grupy User scripts.
Następnie należy określić pola do wprowadzania przez użytkownika niezbędnych parametrów. Każdy parametr określa się w jednej linii zaczynającej się znakami ##, następnie należy podać jego nazwę, typ danych oraz, w niektórych przypadkach, opcje:
[code lang=”python”]##nazwa_zmiennej=typ_danych [opcje][/code]
Nazwy zmiennych nie powinny zawierać spacji – zamiast niej należy wpisać podkreślnik – wtyczka automatycznie zamieni go w spację. Nie należy również korzystać ze znaków specjalnych, w tym polskich znaków diakrytycznych. Opcje pozwalają m.in. na ustawienie domyślnych wartości lub typu geometrii warstwy wektorowej, w większości przypadków nie są one jednak wymagane. Należy je oddzielić od typu danych pojedynczą spacją. Aktualnie dostępne są następujące typy danych:
Liczby rzeczywiste należy podawać z kropką;
Tak przedstawiają się powyższe kontrolki w oknie skryptu:
Dane wyjściowe określa się w taki samo sposób jak wejściowe. Jako typ danych należy podać output, natomiast jako opcję należy wpisać wybrany rodzaj:
[code lang=”python”]##warstwa_wyjsciowa=output vector
##liczba_iteracji=output number[/code]
Skrypt może mieć określonych wiele danych wyjściowych. Wartości przyjmowane przez zmienne wyjściowe to, w zależności od ich rodzaju, ścieżka dostępu do pliku (1-5), liczba (6) lub łańcuch znaków (7).
Dostęp do parametrów określonych przez użytkownika odbywa się poprzez odwołanie do zmiennej za pomocą zdefiniowanej na początku nazwy (stąd zakaz korzystania w nazwach zmiennych ze spacji i znaków specjalnych). Część danych jak liczby czy łańcuchy znaków są określone wprost tzn. w formie podanej w oknie skryptu. Aby mieć dostęp do pozostałych można skorzystać z dodatkowych funkcji udostępnianych przez wtyczkę Processing które ułatwiają pracę z danymi wejściowymi:
Poniższy przykład pozwala zapisać do pliku tekstowego unikalne wartości z tabeli atrybutów warstwy wektorowej:
[code lang=”python”]##input=vector
##pole=field input
##plik=output file
wektor = processing.getObject(input)
wartosci = processing.uniqueValues(wektor, pole)
f = open(plik, ‘w’)
try:
for wartosc in wartosci:
f.write(‘%s\n’ % str(wartosc))
finally:
f.close()
[/code]
Drugą grupą funkcji pomocniczych są funkcje pozwalające tworzyć nowe warstwy rastrowe, wektorowe i tabele. Znajdują się one w module processing.core.
[code lang=”python”]##input=vector
##output=output vector
from processing.core.VectorWriter import VectorWriter
vectorLayer = processing.getObject(input)
writer = VectorWriter(output, vectorLayer.dataProvider().encoding(), vectorLayer.pendingFields(),vectorLayer.wkbType(), vectorLayer.crs())
features = processing.features(vectorLayer)
for feat in features:
writer.addFeature(feat)
del writer[/code]
Istnieje również możliwość wykorzystania dostępnych algorytmów wtyczki Processing. W tym celu należy wywołać funkcję runalg z odpowiednimi parametrami:
[code lang=”python”]##input_raster=raster
##input_wektor=vector
##warstwa_wyjsciowa=output vector
wektor = processing.getObject(input_wektor)
raster = processing.getObject(input_raster)
processing.runalg(‘qgis:pointsfromlines’, raster, wektor, warstwa_wyjsciowa)[/code]
W powyższym przykładzie zmienne raster i wektor to odpowiednio instancje klas QgsRasterLayer i QgsVectorLayer uzyskane dzięki funkcji getObject.
W jaki sposób można uzyskać informacje o algorytmach? I w tym przypadku z pomocą przychodzi wtyczka Processing. Najprościej jest z nich korzystać za pomocą Konsoli Pythona QGIS.
Funkcja alglist wyświetla wszystkie dostępne algorytmy:
[code lang=”python”]>>> processing.alglist()
Add autoincremental field—————>qgis:addautoincrementalfield
Add field to attributes table———–>qgis:addfieldtoattributestable
Advanced Python field calculator——–>qgis:advancedpythonfieldcalculator
Basic statistics for numeric fields—–>qgis:basicstatisticsfornumericfields
Basic statistics for text fields——–>qgis:basicstatisticsfortextfields
Clip————————————>qgis:clip
…[/code]
Po lewej stronie wyświetlany jest krótki opis algorytmu, a po prawej stronie jego nazwa, którą należy użyć jako pierwszy parametr funkcji runlag. Możliwe jest ograniczenie wyników poprzez podanie tekstu (fragmentu nazwy lub opisu) jako parametru funkcji alglist() np.:
[code lang=”python”]>>> processing.alglist(‘buffer’)
Fixed distance buffer——————->qgis:fixeddistancebuffer
Variable distance buffer—————->qgis:variabledistancebuffer
Grid buffer—————————–>saga:gridbuffer
Grid proximity buffer——————->saga:gridproximitybuffer
…[/code]
Aby uzyskać szczegółowe informacje odnośnie konkretnego algorytmu należy skorzystać z funkcji alghelp np.:
[code lang=”python”]>>> processing.alghelp(‘qgis:fixeddistancebuffer’)
ALGORITHM: Fixed distance buffer
INPUT
DISTANCE
SEGMENTS
DISSOLVE
OUTPUT [/code]
Funkcja ta wyświetla opis algorytmu oraz jego parametry. Jeśli algorytm ma parametry typu <ParameterSelection>, czyli wybór z góry określonych opcji, dodatkowo na końcu znajduje się spis dostępnych wartości.
[code lang=”python”]>>> processing.alghelp("saga:slopeaspectcurvature")
ALGORITHM: Slope, aspect, curvature
ELEVATION
METHOD
SLOPE
ASPECT
CURV
HCURV
VCURV
METHOD(Method)
0 – [0] Maximum Slope (Travis et al. 1975)
1 – [1] Maximum Triangle Slope (Tarboton 1997)
2 – [2] Least Squares Fitted Plane (Horn 1981, Costa-Cabral & Burgess 1996)
3 – [3] Fit 2.Degree Polynom (Bauer, Rohdenburg, Bork 1985)
4 – [4] Fit 2.Degree Polynom (Heerdegen & Beran 1982)
5 – [5] Fit 2.Degree Polynom (Zevenbergen & Thorne 1987)
6 – [6] Fit 3.Degree Polynom (Haralick 1983)[/code]
Opcje te można wylistować również funkcją algoptions(nazwa_algorytmu). Aby je ustawić należy podać numer danej opcji według kolejności:
[code lang=”python” gutter=”false”]processing.runlag("saga:slopeaspectcurvature", raster, 1, nachylenie, …)[/code]
W powyższym przykładzie zostanie użyta metoda Maximum Triangle Slope.
W trakcie działania skryptu może zdarzyć się, że chcemy wyświetlić dodatkowe informacje o aktualnym postępie pracy. Jest to szczególnie przydatne przy czasochłonnych operacjach. Z pomocą przychodzi moduł progress, który udostępnia metody pozwalające ustawić procentowe zaawansowanie obliczeń lub opis aktualnych działań:
[notice]Funkcje setCommand, setDebugInfo i setConsoleInfo wyświetlą informacje w oknie tylko jeśli w opcjach Geoprocesingu zaznaczona jest opcja Show extra info in Log panel. Są one pomocne głównie przy tworzeniu skryptu, w ostatecznej wersji należy używać setInfo lub setText.[/notice]
Przykładowe użycie powyższych funkcji:
[code lang=”python”]from time import sleep
progress.setInfo(‘setInfo(tekst)’)
progress.setInfo(‘setInfo(tekst, True)’, True)
progress.setCommand(‘setCommand(tekst)’)
progress.setDebugInfo(‘setDebugInfo(tekst)’)
progress.setConsoleInfo(‘setConsoleInfo(tekst)’)
for i in range(10):
progress.setPercentage(i*10)
progress.setText(‘setPercentage: %d’ % (i*10))
sleep(0.5)[/code]
Jeżeli po uruchomieniu algorytmu wystąpi krytyczny błąd uniemożliwiający dalsze działanie należy go przerwać. W tym celu można wykorzystać klasę GeoAlgorithmExecutionException, która pozwala przerwać działanie skryptu oraz wyświetlić odpowiedni komunikat:
[code lang=”python”]##dzielnik=number 0
from processing.core.GeoAlgorithmExecutionException import GeoAlgorithmExecutionException
if dzielnik == 0:
raise GeoAlgorithmExecutionException(u’Dzielenie przez zero!’)
…
[/code]
Edytor pomocy pozwala przygotować opis algorytmu i jego parametrów. Można go wywołać przyciskiem . W górnej części wyświetlony jest podgląd pomocy. Poniżej, z lewej strony znajduje się lista elementów do edycji. Dostępne pozycje:
Po wybraniu pozycji w prawej części okna można wpisać treść pomocy dla danego elementu. Pliki pomocy mają taką samą nazwę jak skrypt, ale mają rozszerzenie .help.
Stworzone skrypty widoczne są w oknie Narzędzia geoprocessingu pod pozycją Scripts . Po zapisaniu można je używać jak pozostałe algorytmy lub wykorzystać w graficznym modelarzu lub innym skrypcie.
Domyślnie przechowywane one są w katalogu konfiguracyjnym QGIS /.qgis2/processing/scripts/. Ścieżkę tą można zmienić w opcjach geoprocesingu. Można je kopiować i przenosić na inne komputery jak zwykłe pliki.
Po wielu miesiącach wytężonej pracy wydana została nowa wersja QGIS oznaczona numerem 2.0 i nazwą Dufour. Przynosi ona wiele zmian dla użytkowników, zarówno w istniejących dotychczas funkcjonalnościach jak i nowych narzędziach ułatwiających pracę z danymi przestrzennymi. Należy zaznaczyć że aplikacja zmieniła swoja nazwę, od wersji 2.0 Quantum GIS został przemianowany na QGIS.
Najważniejsza zmiana nie jest widoczna dla użytkownika od razu po uruchomieniu aplikacji. Jej efektem jest to, że wtyczki z wcześniejszych wersji oprogramowania nie działają w nowej wersji. Jest to związane ze znacznymi zmianami w API, które jest teraz bardziej przejrzyste i logiczne dla programistów. Na szczęście większość wtyczek została już przepisana i jest dostępna przez (również zaprojektowany od nowa) menedżer wtyczek, a liczba kompatybilnych rozszerzeń sukcesywnie rośnie.
Interfejs użytkownika został odświeżony. Zmieniono wygląd większości ikon, zakładki w oknach dialogowych zostały zastąpione przez listę wyświetlaną z lewej strony danego okna, udoskonalono konsolę Pythona i narzędzie do etykietowania obiektów. Zarządzanie stylami warstw wektorowych odbywa się teraz z pomocą rozwijanej listy, a nie kolejnych okien dialogowych. Również obsługa warstw rastrowych została gruntownie przebudowana. Wtyczkę SEXTANTE zintegrowano z QGIS i przemianowano na Processing (przetłumaczone w polskiej wersji na Narzędzia). Narzędzia geoprocessingu można teraz wywołać z poziomu konsoli, która jest wywoływana poprzez kombinację klawiszy Ctrl+Alt+M.
Wśród nowych funkcjonalności chyba najefektowniejszą jest dodanie możliwości przenikania się warstw (tzw. blend mode), przykłady wykorzystania można znaleźć pod tymi adresami:
Nowa wtyczka Kontrola topologii pozwala na sprawdzanie wzajemnych zależności pomiędzy obiektami lub warstwami co pozwala na odnalezienie i ewentualne usunięcie błędów geometrycznych. Dodano natywne sterowniki pozwalające na bezpośrednią obsługę baz danych Oracle i usługi Web Coverage Service.
Zmiany nie ominęły również kompozytora wydruków. Dzięki integracji wtyczki Atlas można generować serie wydruków w oparciu o wybraną warstwę, dodano prowadnice i przyciąganie do obiektów ułatwiające odpowiednie rozmieszczenie kompozycji czy wsparcie dla wielokolumnowych legend. Kompozytor pozwala od teraz tworzyć również wielostronicowe dokumenty.
Razem z wydaniem nowej wersji QGIS odświeżona została strona główna projektu http://qgis.org/.
Powyżej przedstawiono jedynie część zmian jakie wprowadzono w QGSI 2.0. W serwisie Flickr dostępne są galerie zrzutów ekranowych przedstawiające QGIS 2.0 w akcji (QGIS i przykładowe mapy – linki z oficjalnego polskiego bloga projektu).
Najnowszą wersję można ściągnąć z tej strony. Dostępna jest wersja 32 i 64 bitowa. Dla systemów Windows jest ona również dostępna przez instalator OSGeo4W.
W dniach 11-14 kwietnia odbył się zjazd twórców programu Quantum GIS. Spotkanie zorganizowane zostało w miejscowości Valmiera na Łotwie.
Wielkimi krokami zbliża się termin wydania Quantum GIS w wersji 2.0, który wyznaczony został na 7 czerwca 2013 r. Kolejna wersja wprowadza wiele zmian, nie tylko związanych z dodaniem nowych funkcjonalności, ale również modyfikację wewnętrznej struktury programu (m.in. API związanym z obsługą warstw wektorowych). Od początku kwietnia do głównej gałęzi rozwojowej programu nie są dodawane nowe funkcje (nie licząc kilku kilku wybranych elementów nad którymi jeszcze trwają prace), programiści skupiają się na dopracowaniu nowych rozwiązań i usunięciu zidentyfikowanych błędów. Zagadnienia poruszone na spotkaniu dotyczyły m.in.:
Ponadto omówiono zmiany na stronie głównej Quantum GIS, uaktualnienie dokumentacji oraz nowe sposoby dofinansowania projektu i kierunki dalszego jego rozwoju.
Kolejne spotkanie planowane jest we wrześniu 2013 r. w Brighton, w południowej części Wielkiej Brytanii.
Na różnych blogach już pojawiają się informacje o nowych funkcjonalnościach:
Dzięki Konsoli Pythona, wbudowanej w Quantum GIS, użytkownik może korzystać z udostępnionego przez tą aplikację API do przeglądania i manipulowania danymi przestrzennymi. Podczas uruchamiania programu automatycznie wczytywane są moduły qgis.core i qgis.utils, dzięki czemu od razu po otworzeniu Konsoli można korzystać z dostępnych w nich klas i funkcji.
Jeśli często korzystamy z konsoli, możemy usprawnić swoją pracę poprzez dostosowanie modułów wczytywanych podczas startu Quantum GIS. Aby tego dokonać należy zmodyfikować plik console.py znajdujący się w katalogu qgis_path\python\qgis, gdzie qgis_path to katalog, w którym został zainstalowany QGIS (np. C:\OSGeo4W\apps\qgis).
[notice]Jeśli używamy wersji rozwojowej master należy zmodyfikować plik console_sci.py znajdujący się w katalogu qgis_path\python\console. Należy pamiętać, że w przypadku aktualizacji oprogramowania, np. instalatorem OSGeo4W, plik ten zostanie nadpisany, a wprowadzone zmiany utracone![/notice]
W powyższym pliku należy znaleźć linię:
[code lang=”python” firstline=”33″]_init_commands = ["from qgis.core import *", "import qgis.utils"][/code]
Zmienna _init_commands to lista zawierająca polecenia, które zostaną wykonane podczas pierwszego uruchamiania Konsoli Pythona podczas danej sesji. Jak widać najpierw wczytywane są wszystkie klasy z moduły qgis.core, a następnie moduł qgis.utils. Dodając nowe pozycje do listy można w prosty sposób dostosować zestaw modułów ładowanych przy starcie QGIS, np. zmieniając linię kodu na:
[code lang=”python” firstline=”33″]_init_commands = ["from qgis.core import *", "import qgis.utils",
"from qgis.utils import iface"][/code]
dostęp do aktualnej instancji klasy QgisInterface będzie znacznie prostszy – wystarczy wpisać iface.activeLayer() aby uzyskać dostęp do aktualnie zaznaczonej warstwy na liście (normalnie należy wpisać qgis.utils.iface.activeLayer()). W ten sposób można załadować dowolne dostępne moduły Pythona jak np. PyQt4 czy math.
Python jest obiektowym językiem programowanie, który dzięki swojej prostocie i efektywności zyskuje coraz więcej zwolenników. Potwierdzeniem tego faktu jest przyznanie po raz kolejny nagrody dla najlepszego języka programowania i najlepszego języka skryptowego w 2012 r. w plebiscycie Readers’ Choice Awards magazynu Linux Journal. Główne cechy tego języka to:
Od kilku dni pod adresem http://plugins.qgis.org/plugins/ dostępna jest nowa funkcja, dzięki której każdy użytkownik może oceniać wtyczki do QGIS. Aby oddać głos nie trzeba być zalogowanym w serwisie. Wystarczy wejść na powyższą stronę, wybrać plugin i zaznaczyć odpowiednią liczbę gwiazdek. Maksymalnie można przyznać 5 gwiazdek.
Ocena wtyczki brana jest pod uwagę przy tworzeniu rankingu wtyczek dostępnym pod tym adresem. W rankingu brane są pod uwagę również liczba oddanych głosów i liczba ściągnięć wtyczki. Autorem nowej funkcjonalności jest Alessandro Pasotti.