Czy QGIS ma jakąkolwiek wtyczkę do współpracy z projektem mapowania What3Words ?
Czy QGIS ma jakąkolwiek wtyczkę do współpracy z projektem mapowania What3Words ?
Odpowiedzi:
Za pomocą prostego opakowania w3w tutaj:
https://github.com/what3words/w3w-python-wrapper
Napisałem niestandardową funkcję python, aby zwrócić what3words podaną lokalizację. Po podłączeniu do silnika wyrażeń możesz zrobić coś takiego, jak generowanie etykiet za pomocą what3words:
Dokonuje się tego za pomocą następującego wyrażenia w oknie dialogowym etykiety warstwy:
concat("name",
' : ',
w3w( transform( $geometry, layer_property(@layer_id, 'crs'), 'EPSG:4326')))
i moja w3w
funkcja wygląda tak (wraz z plikiem z powyższego repozytorium github)
@qgsfunction(args=1, group='Custom')
def w3w(value1, feature, parent):
(long, lat) = value1[0].asPoint()
w3w = what3words(apikey='YOURAPIKEYHERE')
res = w3w.getWords(lat=lat, lng=long)
return "%s" % ".".join(res['words'])
W sumie zajęło mi to około dwudziestu minut.
Ale prawdziwe pytanie brzmi: co chcesz zrobić z what3words?
Boundless napisał niedawno wtyczkę, która integruje What3Words z QGIS. Wtyczka umożliwia zbliżenie do adresu What3Words, a także kliknięcie mapy i wyświetlenie adresu What3Words klikniętego punktu. Uwaga: nie wyświetla siatki What3Words 3mx3m. Szczegółowe informacje można znaleźć tutaj:
http://boundlessgeo.com/2016/03/what3words-in-qgis-down-load-today/
W tej chwili wtyczka musi zostać zainstalowana ręcznie. To naprawdę proste, wystarczy pobrać pliki z GitHub, a następnie skopiować folder „what3words” do katalogu wtyczek na komputerze lokalnym (coś takiego jak C: \ Users \ .qgis2 \ pyton \ plugins \ w systemie Windows), a następnie włączyć wtyczkę poprzez menedżera wtyczek w QGIS.
Jedyne, czego potrzebujesz, to klucz API What3Words, który możesz uzyskać, rejestrując się na tej stronie: http://developer.what3words.com/