Poszukuję wtyczki QGIS do pracy z What3Words

Odpowiedzi:

25

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:

wprowadź opis zdjęcia tutaj

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 w3wfunkcja 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?

Spacedman
źródło
11

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/

Ian Holmes
źródło