Forum QGIS
kontrola QGIS-a z innej aplikacji - Wersja do druku

+- Forum QGIS (http://forum.quantum-gis.pl)
+-- Dział: Desktop GIS (http://forum.quantum-gis.pl/forum-4.html)
+--- Dział: QGIS (http://forum.quantum-gis.pl/forum-5.html)
+--- Wątek: kontrola QGIS-a z innej aplikacji (/thread-607.html)



kontrola QGIS-a z innej aplikacji - damian - 05-12-2011

Witam forumowiczów,
czy istnieje jakiś sposób kontrolowania Quantum Gisa z poziomu innej aplikacji? Chodziło by np o centrowanie widoku w wyznaczonym punkcie lub włączenie warstwy - czyli wystarczyłby jednokierunkowy dostęp do konsoli..

W przypadku części komercyjnego oprogramowania producenci udostępniają biblioteki umożliwiające ich pełne powiązanie z aplikacjami np. na platformę .net.

Daje to ogromne możliwości szerszego zastosowania GIS-u - dlatego zastanawiam się, czy może już coś takiego powstało dla QGIS-a.

Pozdrawiam
Damian


RE: kontrola QGIS-a z innej aplikacji - msieczka - 05-12-2011

W Open Source to podstawa Wink.

Python: http://www.qgis.org/pyqgis-cookbook/.

C++: nie znam podobnego przewodnika jak dla Pythona, ale powinno pomóc http://blog.qgis.org/taxonomy/term/1 + http://www.qgis.org/api/index.html + https://github.com/qgis/qgis-code-examples + https://github.com/qgis/Quantum-GIS i wio (Wolne i Otwarte Oprogramowanie Smile).


RE: kontrola QGIS-a z innej aplikacji - damian - 08-12-2011

Dziękuję, będę miał co testować Smile


RE: kontrola QGIS-a z innej aplikacji - szeyker89 - 05-02-2018

Witam.

Mam pytanie odnośnie otwierania danego rekordu w accessie i po
uruchomieniu funkcji zostanie uruchomiony program QGIS o tym samym
nr rekordu. Link to strony źródłowej:

https://gis.stackexchange.com/questions/246790/how-to-get-data-from-access-to-qgis

Procedura ma przechowywać w pamięci nr ID i po otwarciu QGIS ma
nawiązać do tego właśnie rekordu i uzyskać fokus na danej
działce na mapie.

Mam już połączone ze sobą wzajemnie bazy danych i relacje jeśli
chodzi i zaimplementowaną bazę z Accessa z ID
płaszczyzny/działki.

Proszę o pomoc w QGIS'ie co do przechwycenia ID i uzyskaniu fokusa
danej płaszczyzny/działki.

Kod:
Public Sub connect56()

    Set objShell = CreateObject("WScript.Shell")
    Set colUserEnvVars = objShell.Environment("User") 'nie wiem co     
oznacza user
    colUserEnvVars.Item("AV_ID") = gstr_AV_id    'AV_ID to w     
accesie, a gstr_AV_id w QGIS

    Dim x As Variant
    Dim Path As String
    Dim Project As String

    Path = "C:\Program Files\QGIS 2.18\bin\qgis.bat"     'ścieżka     
do programu
    Project = "H:\test.qgs"   'ścieżka do zapisanego pliku     
programu

    x = Shell(Path + " " + Project, vbNormalFocus)   'formuła     
wyszukująca i fokusująca działkę

    Exit Sub

End Sub

Edit:
Wyświetla mi jedynie komunikat:
Kod:
Warstwa jest nieobsługiwana: Warstwa C:\Users\qwerty\Documents\ nie     
jest poprawna i nie może być dodana do mapy

Z góry dziękuję za Pomoc
Pozdrawiam