Giter Site home page Giter Site logo

septima / qgis-geosearch Goto Github PK

View Code? Open in Web Editor NEW
9.0 7.0 7.0 246 KB

QGIS plugin with a search box which enables the user to quickly zoom to named places in Denmark

License: GNU General Public License v3.0

Python 84.50% Makefile 10.33% Batchfile 3.73% Shell 1.45%

qgis-geosearch's Introduction

Geosearch DK

QGIS-plugin der tilføjer en søgeboks der anvender offentlige data, som tillader brugeren lynhurtigt at zoome til navngivne steder i Danmark - f.eks. adresser, stednavne, kommuner.

Pluginet er udviklet af Septima og stilles frit og gratis til rådighed for QGIS-brugere under GNU General Public License v3.0, se nærmere i afsnittet Ophavsret og videredistribution.

OBS - Er dit plugin stoppet med at virke efter 31. august 2023?

Styrelsen for Dataforsyning og Infrastruktur (SDFI) har pr. 31. august 2023 nedlagt den hidtil anvendte API-tjeneste Geosearch, og erstattet den med den nye tjeneste Gsearch. Du skal opdatere til den nye version af pluginet (version 2.0.0) for at dit plugin bruger Gsearch - og derfor virker efter 31. august 2023. Du henter den nye version fra QGIS' plugin repository - dette er lettest at hente direkte fra QGIS. Læs mere om dette i afsnittet Opdatering af pluginet.

Læs nyheden om ændringen i dette plugin på Septimas hjemmeside eller detaljer om Gsearch i projektets koderepository.

Installation af pluginet

Pluginet er tilgængeligt fra QGIS' officielle plugin repository, dermed finder en installation af QGIS selv en kompatibel version af pluginet.

Det letteste er at installere pluginet via QGIS. Dette gør du således:

  • Under menuen 'Plugins', vælg 'Administrér og Installér Plugins...' (I den engelske version af QGIS hedder denne menu 'Manage and Install Plugins...')
  • I Plugins-dialogen, søg efter 'Geosearch DK'
  • Vælg 'Geosearch DK' i listen (så denne bliver markeret med blå)
  • Klik på 'Installér Plugin'. Derefter installeres pluginet.

Install-geosearchdk

Pluginet installerer et QGIS-panel med en søgeboks, der som udgangspunkt lægger sig oven for kortvinduet. Panelet kan flyttes, så det f.eks. ligger oven for lagpanelet i stedet. På denne placering fylder det ikke så meget, men er stadig let tilgængeligt.

Hvis man trykker på krydset i Geosearch DK-panelet bliver det deaktiveret og forsvinder helt fra visningen, men kan nemt genaktiveres ved at sætte flueben ved det under menupunktet Visning->Paneler (på engelsk View->Panels).

Pluginet distribueres med et fungerende token til Dataforsyningen. Det er muligt at angive sit eget token (dvs. autentificere som en bestemt bruger) under pluginets indstillinger, som findes ved at gå til menupunktet Indstillinger->Indstillinger->Geosearch DK (engelsk Settings->Options) eller bruge genvejen via skruenøgle-ikonet i panelet.

Opdatering af pluginet

Nye versioner af pluginet udstilles via QGIS' officielle plugin repository. I Plugin Manageren vil opdateringer fremgå under punktet Upgradeable. Automatisk advisering om opgraderbare plugins kan aktiveres under Settings i Plugin Manageren.

Vil du selv opdatere dit plugin, så gør således:

  • Åbn pluginsdialogen
  • Søg efter 'GeosearchDK'
  • Vælg GeosearchDK i listen
  • Klik på 'Opgradér Plugin'. Derefter opgraderes pluginet til den nyeste version.

geosearchopgraderplugin

Indstillinger

Du kan lave en række indstillinger i pluginets indstillingsfane, som du kan åbne ved at klikke på skruenøgle-ikonet (eller gå til menupunktet Indstillinger->Indstillinger->Geosearch DK (engelsk Settings->Options)): geosearchdk-opensettings

Følgende indstillinger kan foretages i pluginets indstillingsdialog:

  • Token til Dataforsyningen (Opret token her) - sørg for at du er logget ind øverst til højre og opret derefter et token under "Administrer token til webservices og API'er"
  • Kommunefilter. Indtast et eller flere kommunenumre adskilt af komma. Der vises nu kun søgeresultater fra de listede kommuner.
  • Typefilter. Vis kun søgeresultater af bestemte typer, f.eks. adresser, matrikelnumre, stednavne etc.

geosearchsettings

Oplever du fejl eller har du ønsker til forbedringer eller ny funktionalitet?

Der er allerede en række forslag til forbedringer i projektets Issuetracker.

Har du en idé til en forbedring eller har du måske opdaget en bug i pluginet, så vil Septima med glæde tilbyde sin bistand.

Du kan registrere din idé eller bug i projektets Issuetracker. Her kan du også se eksisterende registreringer af idéer og bugs.

Ophavsret og videredistribution

Pluginet er udviklet af Septima, som er primær ophavsretsindehaver men som har givet tilladelse til distribution under betingelserne i Open Source/Fri Software-licensen GNU General Public License v3.0 eller senere (GPL3.0-or-later).

Det indeholder dog også kode fra projektet QGIS Setting Manager (under stien src/geosearch_dk/config/qgissettingmanager/) som kan distribueres under licensen GNU General Public License v2.0 eller senere (GPL2.0-or-later).

Ophavsretsinformation og licensbetingelser for en konkret fil kan altid ses i toppen af den enkelte fil.

qgis-geosearch's People

Contributors

asgerpetersen avatar frederikssund avatar klavspc avatar miewinstrup avatar mikini avatar telling avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

qgis-geosearch's Issues

Use Kortforsyningen Token

Kortforsyningen now supports tokens instead of user/password. Remove user/pass setting and implement token instead

Idea: let the user add custom search ressources from local layers

A nice feature would be, to be able to add custom search ressources to GeoSearch. If the company / organization have their own "objects of interest" in a layer f.ex.
"project areas", they should be able to define this layer as a search ressource in the configuration file, by defining the path to the layer and which features in the layer to search f.ex. "Project ID".

Move hidden options to main settings dialog.

As it is now some options are set through the "Advanced" tab of the main QGIS settings dialog and some options (like token and filters) are set through a custom widget.

Move all options to the custom dialog.

Use appropriate QGIS widgets for selecting colors etc.

Nemmere matrikelsøgning

Er det muligt at lave det således, at man vinger af når man gerne vil lave matrikelsøgning, så pluginnet kun lister matrikler i dropdown? Alternativt kunne det laves sådan, at hvis brugeren starter med tal i søgningen, så ved geosearch at den skal starte med at liste matrikler.

Ballerup Kommune

Inkludér gerne en kopi af GPL-3.0-licensen i repositoriet

Hejsa, tak for at vedligeholde og opdatere dette plugin.
Lige et par detaljer omkring licensering og GPL.

Det er god stil at hjælpe modtageren af kildekoden til et GPL-licenseret program med at overholde følgende del GPL's afsnit 4 ved at inkludere en kopi af licensen som en del kildekoden;

"You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you [..] give all recipients a copy of this License along with the Program"

På denne måde har vedkommende overholdt dette ved blot at videreformidle det modtagne, og behøver ikke gøre yderligere ifht. at gøre opmærksom på programmets licens.

Dette gøres normalt ved at inkludere en fil kaldet COPYING i roden af repositoriet som indeholder ASCII-tekstudgaven af den relevante GPL-licens. Se mere om dette i licensens "How to Apply These Terms"-afsnit eller det tilsvarende afsnit i det separate "How to Use GNU Licenses"-dokument. Tekst-udgaver af licenserne kan findes ved at følge linket til den enkelte licens fra FSF's licens-liste, for GPL-3.0 er det denne.

Og igen god stil, men ikke påkrævet, et at gøre slutbrugeren af programmet opmærksom på licensen og placere et link til denne i "About"-dialogen (altså her i teksten i show_about_dialog(), (en)).

Fejl ved søgning efter bl.a. vandløb og hospitaler

Når jeg forsøger at søge efter et hospital (fx bispebjerg eller rigshospitalet) får jeg følgende fejl:
image

Hospitalet bliver ikke vist, men der bliver nogenlunde zoomet til rette sted.

Fejlen opstår ikke ved søgning efter monumenter (fx frihedsstøtten, strandposter).

QGIS version 3.2

Note d. 27/9: Samme fejl opstod da jeg ville søge efter et vandløb fx 'Kanalen (Vandløb i Bjerringbro)'

Måde at fjerne markering i kort

Når bruger har valgt et søgeresultet, markeres søgeresultatet med rødt i kortet.

Denne markering kan pt ikke fjernes på anden måde end at genstarte projektet.

Forslag til løsning:
Når teksten i søgeboksen ændres (inkl når den slettes) fjernes markeringen i kortet.

Vil skulle laves særskilt for QGIS 1.8 og QGIS 2.0.

muncodes list is None

Har prøvet at installere pluginet i QGIS 2.12.3 på Ubuntu 14.04, men får følgende fejlmeddelelse.

An error has occured while executing Python code: 

TypeError: 'NoneType' object is not iterable 
Traceback (most recent call last):
  File "/home/baffioso/.qgis2/python/plugins/geosearch_dk/autosuggest.py", line 171, in autoSuggest
    qurl = self.geturl_func( term )
  File "/home/baffioso/.qgis2/python/plugins/geosearch_dk/searchbox.py", line 131, in geturl
    area=','.join(['muncode0'+str(k) for k in self.config['muncodes']])
TypeError: 'NoneType' object is not iterable

Vil andre evt. teste på linux? Kan være det bare er mig, som har rod i den generelle QGIS installation (har dog ikke problemer med andre plugins).

Begræns søgning til kommunenr

Tilføj konfiguration til settings-dialog. Bruger skal kunne indtaste kommunenr (evt liste af), hvorefter søgninger begrænses til disse

import future fails on OSX

Hi, i'm very new at this.

i've installed Qgis 3 and are now trying to install geo search_dk the plug in. but i am getting this message,
skaermbillede 2018-04-27 kl 15 46 47

Can anybody help me figuring this out?

Thank you in advance!

mapRenderer() is deprecated

warning:/Users/asger/.qgis2/python/plugins/geosearch_dk/searchbox.py:65: DeprecationWarning: QgsMapCanvas.mapRenderer() is deprecated
              self.qgisIface.mapCanvas().mapRenderer().hasCrsTransformEnabled.connect(self.setupCrsTransform)

Uncaught TypeError: can only concatenate str (not "NetworkError") to str

Steps to reproduce:

Not sure what type of network error it was. But I was just doing a regular search (typing into the search box) and boom!

Traceback (most recent call last):
  File "/Users/asger/Library/Application Support/QGIS/QGIS3/profiles/default/python/plugins/geosearch_dk/autosuggest.py", line 181, in handleNetworkData
    'Server returned: ' + reply.error(), __package__
TypeError: can only concatenate str (not "NetworkError") to str

geosearch_dk 1.2.0, QGIS 3.16.3-Hannover on Darwin 20.3.0

Warning om metoder der vil blive fjernet i fremtidige version.

QGIS version: 3.2 (og 3.3)

Jeg får en række warnings vedr. en række metoder der bruges i pluginet, men som vil blive fjernet i fremtidige versioner. Dette er ikke et problem lige pt., men bliver på et tidspunkt et problem.

Advarselsbeskederne er:
2018-09-27T17:39:57 WARNING warning:C:/Users/Mie/AppData/Roaming/QGIS/QGIS3\profiles\Mie/python/plugins\geosearch_dk\pluginmetadata.py:30: DeprecationWarning:

         This method will be removed in future versions. Use 'parser.read_file()' instead.
         
         
         traceback: File "", line 1, in 
          File "C:/OSGEO4~1/apps/qgis-dev/./python\qgis\utils.py", line 299, in loadPlugin
          __import__(packageName)
          File "C:/OSGEO4~1/apps/qgis-dev/./python\qgis\utils.py", line 671, in _import
          mod = _builtin_import(name, globals, locals, fromlist, level)
          File "", line 961, in _find_and_load
          File "", line 950, in _find_and_load_unlocked
          File "", line 655, in _load_unlocked
          File "", line 678, in exec_module
          File "", line 205, in _call_with_frames_removed
          File "C:/Users/Mie/AppData/Roaming/QGIS/QGIS3\profiles\Mie/python/plugins\geosearch_dk\__init__.py", line 21, in 
          from . import pluginmetadata
          File "C:/OSGEO4~1/apps/qgis-dev/./python\qgis\utils.py", line 671, in _import
          mod = _builtin_import(name, globals, locals, fromlist, level)
          File "", line 1009, in _handle_fromlist
          File "", line 205, in _call_with_frames_removed
          File "", line 961, in _find_and_load
          File "", line 950, in _find_and_load_unlocked
          File "", line 655, in _load_unlocked
          File "", line 678, in exec_module
          File "", line 205, in _call_with_frames_removed
          File "C:/Users/Mie/AppData/Roaming/QGIS/QGIS3\profiles\Mie/python/plugins\geosearch_dk\pluginmetadata.py", line 34, in 
          metadata = plugin_metadata()
          File "C:/Users/Mie/AppData/Roaming/QGIS/QGIS3\profiles\Mie/python/plugins\geosearch_dk\pluginmetadata.py", line 30, in plugin_metadata
          config.readfp(codecs.open( os.path.dirname( __file__ ).replace("\\", "/") + '/metadata.txt', 'r', 'utf8'))
          File "C:\OSGEO4~1\apps\Python36\lib\configparser.py", line 758, in readfp
          DeprecationWarning, stacklevel=2

2018-09-27T17:39:57 WARNING warning:C:/Users/Mie/AppData/Roaming/QGIS/QGIS3\profiles\Mie/python/plugins\geosearch_dk\pluginmetadata.py:30: ResourceWarning:

         unclosed file 
         
         
         traceback: File "", line 1, in 
          File "C:/OSGEO4~1/apps/qgis-dev/./python\qgis\utils.py", line 299, in loadPlugin
          __import__(packageName)
          File "C:/OSGEO4~1/apps/qgis-dev/./python\qgis\utils.py", line 671, in _import
          mod = _builtin_import(name, globals, locals, fromlist, level)
          File "", line 961, in _find_and_load
          File "", line 950, in _find_and_load_unlocked
          File "", line 655, in _load_unlocked
          File "", line 678, in exec_module
          File "", line 205, in _call_with_frames_removed
          File "C:/Users/Mie/AppData/Roaming/QGIS/QGIS3\profiles\Mie/python/plugins\geosearch_dk\__init__.py", line 21, in 
          from . import pluginmetadata
          File "C:/OSGEO4~1/apps/qgis-dev/./python\qgis\utils.py", line 671, in _import
          mod = _builtin_import(name, globals, locals, fromlist, level)
          File "", line 1009, in _handle_fromlist
          File "", line 205, in _call_with_frames_removed
          File "", line 961, in _find_and_load
          File "", line 950, in _find_and_load_unlocked
          File "", line 655, in _load_unlocked
          File "", line 678, in exec_module
          File "", line 205, in _call_with_frames_removed
          File "C:/Users/Mie/AppData/Roaming/QGIS/QGIS3\profiles\Mie/python/plugins\geosearch_dk\pluginmetadata.py", line 34, in 
          metadata = plugin_metadata()
          File "C:/Users/Mie/AppData/Roaming/QGIS/QGIS3\profiles\Mie/python/plugins\geosearch_dk\pluginmetadata.py", line 30, in plugin_metadata
          config.readfp(codecs.open( os.path.dirname( __file__ ).replace("\\", "/") + '/metadata.txt', 'r', 'utf8'))

Tillad konfiguration i ini-fil i plugin-dir

På Windows gemmes pluginets konfiguration i registreringsdatabasen, hvilket i nogle tilfælde besværliggør udrulning.

Dette kan afhjælpes ved at pluginet checker, om der eksisterer en konfigurationsfil i plugin-dir. Hvis en sådan fil findes, benyttes den, i modsat fald benyttes defaultplacering.

SDFI nedlægger tjenesten `Geosearch`

Septima har udviklet og vedligeholdt pluginet, siden vi publicerede første version af pluginet i maj 2013. Med årene er det blevet en naturlig del af mange danske QGIS-brugeres værktøjskasse.

SDFI har annonceret, at de nedlægger søge-tjenesten Geosearch pr 31.05.2023 31.08.2023 (Ny dato annonceret 24. april). Da QGIS Geosearch DK (dette plugin) benytter SDFIs tjeneste, betyder det, at pluginet må ændres for fortsat at kunne fungere.

SDFI har publiceret en ny tjeneste kaldet gsearch, som skulle erstatte Geosearch. Desværre er der så store ændringer i funktionsmåden mellem Geosearch og GSearch, at det er en både vanskelig og bekostelig affære at genskabe dele af pluginets funktionalitet med den nye service. Visse dele af funktionaliteten kan slet ikke genskabes.

Vi (i Septima) har været i god og hyppig dialog med SDFI om problematikken. En del af dialogen har foregået gennem issues på Gsearch GitHub repo:

Særligt SDFIdk/gsearch#180 medfører en relativt omfattende (og dermed bekostelig) omskrivning af koden i pluginet. Mens feks SDFIdk/gsearch#179 betyder, at brugeroplevelsen for brugere der benytter filtrering på kommune vil blive stærkt forringet.

Vi har stor forståelse for, at Geosearch til QGIS kan være et vigtigt arbejdsredskab (Vi bruger det rigtig meget selv i Septima!). Derfor gik vi også straks i gang med at planægge opgraderingen til gsearch. Desværre har det jo vist sig, at forskellene på Geosearch og Gsearch er så store, at vi ikke kan afsætte de nødvendige ressourcer selv.

Hvis der er nogen der ønsker at være med i delfinansiering, så skriv til [email protected].

For at gøre opgaven lidt mindre, kan der eventuelt laves en simplificeret udgave af pluginet, så der i det mindste kan søges i adresser når SDFI lukker Geosearch.

Network Error: Remote qlrSSL handshake failed

I am having troubles using the QGIS (3) PlugIn 'Kortforsyningen' (2.4), on my Mac Running high Sierra, 10.13.4.
I get all kinds of weird network connection errors.... and no maps :-)

Konfiguration af søgeressourcer

Tillad brugeren at vælge mellem søgeressourcer i konfigurationsdialogen.

Det kunne være en liste med flueben, så brugeren feks kunne fjerne hakket i "matrikel", hvis søgning i matrikler er irrelevant.

En sidegevinst ved at fjerne irrelevante ressourcer er, at svaret alt andet lige vil komme hurtigere.

Publicér via officiel QGIS plugin repo

Det lader til, at pluginet kopieres mellem brugere i stedet for installation via vores repo. Det betyder, at brugerne aldrig gøres opmærksom på opdateringer.

Switch to gsearch

Dataforsyningen retires geosearch by the end of may 2023 as stated here https://trello.com/c/URyuB8L6/177-opdatering-25012023-geosearch-lukker-31052023-anvend-i-stedet-gsearch.

The new service is called gsearch and is documented here https://docs.dataforsyningen.dk/#gsearch-gsearch. Note that the search endpoint is difficult to find in the docs. I searched the docs for resources to find it. This is and example of a request querying multiple resources in one go:

https://api.dataforsyningen.dk/rest/gsearch/v1.0/search?resources=postnummer,adresse,husnummer&token=XXX&q=jer&limit=10

Tasks:

Tydeligere markering af fremsøgt adresse

Det lille røde kryds kan i et teknisk grundkort ofte være svær at få øje på. Hvis markeringen kunne blive tydeligere, fx en udfyldt firkant, cirkel eller noget andet, som man bedre kan få øje på. Farven rød synes jeg stadig er god at bruge til det formål.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.