Quantcast
Channel: Forum QGIS - Wszystkie działy
Viewing all 769 articles
Browse latest View live

Zaokrąglanie współrzędnych w QGIS

$
0
0
Czy istnieje w QGIS-ie jakiś sposób lub wtyczka, która by mogła zaokrąglić do dwóch miejsc po przecinku współrzędne w dowolnej warstwie, czyli de facto doprowadzić je do zapisu stosowanego w geodezji.

comboBox w konsoli Pythona

$
0
0
Cześć, za cel postawiłem sobie napisanie wtyczki do Qgisa. W pierwszej kolejności chcę uzyskać działający kod w konsoli i tutaj pojawia się problem z wykorzystaniem rozwijanej listy z comboBox, kod się wykonuje do końca ale fakt wybory z listy jest pomijany (pętla przyjmuje domyślna wartość, czyli pierwszą i dla niej liczy). Może ktoś mnie nakieruje gdzie popełniam błąd, to są moje pierwsze kroki z programowaniem.
fragment kodu...
Kod:
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from qgis.core import *
layer = iface.activeLayer()
#dodaj nowe puste kolumny
layer.dataProvider().addAttributes([QgsField('pow_mat', QVariant.Double),
                                    QgsField('Xgk', QVariant.Double),
                                    QgsField('Ygk', QVariant.Double),
                                    QgsField('v', QVariant.Double),
                                    QgsField('u', QVariant.Double)
                                    ])
layer.updateFields()
#ustaw index
idx_pow_mat = layer.fieldNameIndex('pow_mat')
idx_Xgk = layer.fieldNameIndex('Xgk')
idx_Ygk = layer.fieldNameIndex('Ygk')
idx_v = layer.fieldNameIndex('v')
idx_u = layer.fieldNameIndex('u')
#oblicz powierzchnie i umiesc ja w kolumnie pow_mat
layer.startEditing()
for f in layer.getFeatures():
  area = f.geometry().area()
  layer.changeAttributeValue(f.id(),idx_pow_mat, area)

layer.commitChanges()
#utworz rozwijana liste wyboru strefy
cb = QComboBox()
cb.addItems(['5','6','7','8'])
cb.resize(250,35)
cb.setWindowTitle('Wybierz strefe')
cb.show()
#ustaw zmienna z rozwijanej listy
list = [""]
layer.startEditing()
#wykonaj oblicze w oparciu o wybor z rozwijanej listy
for k in list:
  Pas = int(cb.currentText())
  if Pas == 5:
    for e in layer.getFeatures():
      e2 = QgsExpression("pow_mat+500000")
      e2.prepare(layer.pendingFields())
      value_e2 = e2.evaluate(e)
      layer.changeAttributeValue(e.id(), idx_Xgk, value_e2)
  elif Pas == 6:
    for e in layer.getFeatures():
      e2 = QgsExpression("pow_mat+6000000")
      e2.prepare(layer.pendingFields())
      value_e2 = e2.evaluate(e)
      layer.changeAttributeValue(e.id(), idx_Ygk, value_e2)
  elif Pas == 7:
    for e in layer.getFeatures():
      e2 = QgsExpression("pow_mat+7000000")
      e2.prepare(layer.pendingFields())
      value_e2 = e2.evaluate(e)
      layer.changeAttributeValue(e.id(), idx_Xgk, value_e2)
  elif Pas == 8:
    for e in layer.getFeatures():
      e2 = QgsExpression("pow_mat+8000000")
      e2.prepare(layer.pendingFields())
      value_e2 = e2.evaluate(e)
      layer.changeAttributeValue(e.id(), idx_Ygk, value_e2)
    pass#zajety, poczekaj na nacisniecie klawisza
  layer.commitChanges()

layer.startEditing()
#wyrazenie kolumna razy jakas wartosc
e3 = QgsExpression("Ygk*2")
e4 = QgsExpression("Xgk*4")

e3.prepare(layer.pendingFields())
e4.prepare(layer.pendingFields())

for l in layer.getFeatures():
  value_e3 = e3.evaluate(l)
  layer.changeAttributeValue(l.id(), idx_u, value_e3)

for o in layer.getFeatures():
  value_e4 = e4.evaluate(o)
  layer.changeAttributeValue(o.id(), idx_v, value_e4)

layer.commitChanges()

Aha, kod działa na warstwie poligonowej, docelowo ma tworzyć nowe kolumny w oparciu o kolumny pomocnicze, które na końcu są usuwane. Użytkownik ma jedynie wybrać jedną wartość spośród 4 dostępnych (rozwijana list) w oparciu o którą dokonuje się jedno z obliczeń. Na chwilę obecna wygląda to trochę chaotycznie, ale mam nadzieję że uda mi się to uprościć i zrobić z tego działający skrypt i wtyczkę.

Obrys Rastra jako wektor

$
0
0
Witam,

Mam mały problem.

Chciałbym z rastra uzyskać poligon (otoczkę) który pokrywałby się z granicami tego rastra? Jakoś nic mądrego nie przychodzi mi do głowy.

Dzięki Wink

Forum o GMT

$
0
0
Jak sądzicie - czy warto byłoby utworzyć oddzielne forum o Generic Mapping Tools?

Serdeczności,
joahim

autouzupełnianie

$
0
0
Czy jest taka możliwość żeby w atrybutach zapisywała się data ostatniej edycji obiektu?

dodawanie tabeli z bazy postgres

$
0
0
Cześć,


czy spotkał się ktoś może z tematem dodawania za pomocą konsoli pythona tabeli z bazy postgresowej do projektu w QGIS?

W przypadku tabel zawierających geometrię - nie ma problemu:


uri = QgsDataSourceURI()
uri.setConnection("host","port","db","user","pass")
uri.setDataSource("schema","table","geom_column","","key_col")
vlayer = QgsVectorLayer(uri.uri(), "nazwa_po_zaladowaniu","postgres")
QgsMapLayerRegistry.instance().addMapLayer(vlayer)

Co w przypadku gdy nie mam geometrii w żadnej kolumnie?

QGIS- instalacja wtyczki itp

$
0
0
Witam, chcę obliczyć najbliższą odległość punktów od poligonów i linii. Spr w internecie, m.in. na tym forum i pojawiły się informacje o dwóch sposobach:
1. Instalacja wtyczki Closest feature Finder
2. Użycie funkcji v.distance w GRASSie
Odnośnie pierwszego sposobu to po pobraniu pliku z internetu nie bardzo wiem co zrobić żeby móc używać tej wtyczki w QGIS-ie… wrzucić plik do folderu „wtyczki” i co dalej…?
Dodanie adresu tej wtyczki do repozytoriów wtyczek, powoduje, że wyskakuje błąd „odpowiedź serwera jest poprawna (200 OK), lecz nie wydaje się zawierać metadanych wtyczek. Jest to najprawdopodobniej spowodowane przez proxy lub błędny adres URL repozytorium. Możesz skonfigurować ustawienia proxy w głównych opcjach QGIS-a”.
Jeśli chodzi o funkcje v.distance to już wgl nie wiem jak się za to zabrać. Czy mógłby ktoś napisać po kolei jak wykonać potrzebną mi analizę na warstwach wektorowych wykonanych w QGIS-ie?
Bardzo proszę o pomoc.

QGIS- closest feature finder

$
0
0
Witam, chcę obliczyć najbliższą odległość punktów od poligonów i linii. Spr w internecie, m.in. na tym forum i pojawiła się informacja o wtyczce Closest feature Finder

po pobraniu pliku z internetu nie bardzo wiem co zrobić żeby móc używać tej wtyczki w QGIS-ie… wrzucić plik do folderu „wtyczki” i co dalej…?
Dodanie adresu tej wtyczki do repozytoriów wtyczek, powoduje, że wyskakuje błąd „odpowiedź serwera jest poprawna (200 OK), lecz nie wydaje się zawierać metadanych wtyczek. Jest to najprawdopodobniej spowodowane przez proxy lub błędny adres URL repozytorium. Możesz skonfigurować ustawienia proxy w głównych opcjach QGIS-a”.

Bardzo proszę o pomoc.

Formularze i relacje

$
0
0
Witam,

Chciałbym na formularzu z informacjami o obiekcie wyświetlić dane z innej tabeli zawierającej dane w PDF. Jest budynek i pewna dokumentacja do niego w plikach PDF zapisanych w bazie danych.

Jaka jest możliwość zrealizowania tego w QGIS ?

Próbowałem stworzyć w QTDesigner własny formularz do prezentacji danych z warstwy budynków. Jest w tym narzędziu kontrolka pozwalająca na dodanie tabeli. Ale nigdzie nie znalazłem jak tą tabelę wypełnić danymi.

Pozdrawiam
ML

stały rozstaw punktów wzdłuż linii

$
0
0
Drodzy Koledzy,

Mam warstwę liniową "obrys obiektu" - o obwodzie 200 m.
potrzebuje na tym obwodzie stworzyć warstwę punktową - 60 punktów i rozmieścić punkty w jednakowym rozstawie (200/60).

Proszę o radę.

pozdrawiam serdecznie.

korekty globalne Układu 1965 w gridach NTv2

$
0
0
Cześć

Temat trochę bardziej GRASSowy, ale generalnie dotyczy wszystkich narzędzi opartych na PROJ.4 - w tym QGISa. Piszę więc tutaj żeby do kogokolwiek dotarło, bo na GRASSowym forum totalne pustki.

Osoby, które zetknęły się z zagadnieniem różnic pomiędzy tzw. "teoretycznym" a "empirycznym" Układem 1965 i ich redukcji za pomocą tzw. "korekt globalnych" autorstwa Romana Kadaja prawdopodobnie zainteresuje moja implementacja tego rozwiązania z użyciem gridów transformacyjnych NTv2. Szczegóły na mojej stronie.

Korekty globalne pozwalają w istotnym stopniu poprawić dopasowanie teroretycznego Układu 1965 do empirycznego. Trzeba mimo to pamiętać, że zazwyczaj nie są cudownym środkiem na te zniekształcenia. Zarówno Kadaj jak i inni autorzy (np. http://www.infraeco.pl/pl/art/a_16170.htm?plik=932, http://www.numerus.net.pl/transformacja.html) wskazują na jego ograniczoną przydatność w niektórych zastosowaniach i częstą konieczność dodatkowego użycia korekt lokalnych, jeżeli zależy nam na dużej dokładności. Myślę jednak, że dobrze mieć korekty globalne PUWG 1965 w arsenale FOSSGIS. Wiele krajowych narzędzi już dawno zaimplementowało to rozwiązanie.

W dużym skrócie: żeby skorzystać z gridów realizujących korekty globalne Układu 1965 w QGISie należy zdefiniować 5 układów współrzędnych użytkownika w formacie PROJ.4, o parametrach jak w EPSG:3120, 2172-2175, ale z sekcją towgs84 zastąpioną przez nadgrids ze ścieżką do pliku grida. Link do plików jest na mojej stronie.

Na zkończenie dodam, że stosując opracowaną przeze mnie metodę można użyć dowolnego źródła do stworzenia potrzebnego nam grida różnic współrzędnych w formacie NTv2. Np. najnowszego TRANSPOLa 2.06, który oferuje empiryczne korekty wszystkich polskich układów opartych na elipsoidzie Krasowskiego o precyzji znacznie przekraczającej omawiane tu korekty globalne, jak i np. poprawki między PL-ETRF89 i PL-ETRF2000. Dzięki temu PROJ.4 a za nim QGIS, GRASS et consortes mogą uzyskać możlliwość wykonywania równie precyzyjnych przeliczeń. Pewnie kiedyś do tego siądę. Póki co mamy "korekty globalne" a' la Roman Kadaj. Zawsze to coś Smile. Jeśli komuś się przydadzą - dajcie proszę znać. Może zmotywuje mnie to do kontynuowania tematu.

Znajdowanie odpowiedniej lokalizacji przy pomocy QGIS

$
0
0
Witam
Na forum jestem nowa więc z góry przepraszam za ewentualne pomyłki. Z QGIS i ogólne z GIS-em mam niewiele wspólnego (nie moja branża), jednak dowiedziałam się że przy pomocy programy takiego jak QGIS możliwe jest wyznaczenie lokalizacji pod inwestycję. Nie wiem natomiast na ile jest to skomplikowane i czy taki laik jak ja poradziłby sobie z takim zadaniem. Czy mogłabym liczyć na jakieś sugestie, podpowiedzi od czego zacząć? Czy może ktoś polecić jakieś podręczniki lub inne materiały dzięki którym będę mogła od podstaw poznać ten program? A może ktoś z Was wie o jakimś kursie/szkoleniu dzięki któremu będę mogła nauczyć się wykonywać takie zadania.

Będę wdzięczna za każdą podpowiedź

Pozdrawiam

Podziałka- problem

$
0
0
Witam wszystkich Smile Chciałbym prosić Was o pomoc. Miałem do wykonania mapki, do pracy licencjackiej. Po zwektoryzowaniu, przeszedłem do druku. Mój problem polega na tym, gdy dodaje podziałkę, ona ucieka mi na skos. Nie wiem co to może być za przyczyna, dodam,że każda warstwa i cały projekt mają ten sam układ współrzędnych. Pozdrawiam Wink

P.S W załączniku dodaje fotkę podziałki Wink

.jpg  gis.jpg (Rozmiar: 189,16 KB / Pobrań: 4)

10 czerwca 2016 - Kraków - kurs podstawowy QGIS 2.14

$
0
0
Zapraszamy w piątek 10 czerwca 2016 do Krakowa, na kurs podstawowy QGIS 2.14.

Szkolenie zostanie przeprowadzone na najnowszej wersji stabilnej z długoterminowym wsparciem.
QGIS 2.14 nadaje się znakomicie do prac wykonywanych przez firmy komercyjne.

Szkolenie prowadzone jest w formie warsztatów i daje solidne podstawy do wykonywania większości zadań.

Tematyka kursu i szczegóły rejestracji na stronie szkoleń.

11 czerwca 2016 - Kraków - kurs podstawowy QGIS 2.14

$
0
0
Zapraszamy w sobotę 11 czerwca 2016 do Krakowa, na kurs podstawowy QGIS 2.14.

Szkolenie zostanie przeprowadzone na najnowszej wersji stabilnej z długoterminowym wsparciem.
QGIS 2.14 nadaje się znakomicie do prac wykonywanych przez firmy komercyjne.

Szkolenie prowadzone jest w formie warsztatów i daje solidne podstawy do wykonywania większości zadań.

Tematyka kursu i szczegóły rejestracji na stronie szkoleń.

projekt tylko do odczytu

$
0
0
Witam
Jestem nowym użytkownikiem programu QGIS, używam wersji 2.14.1 Essen.
Utworzyłem kawałek projektu i chciałbym go udostępnić pewnym osobom ale tylko do odczytu (mam obawy aby czegoś nie namieszały).
I teraz właściwe pytanie: Czy jest możliwość zapisania projektu z prawami dostępu tylko do odczytu?
Szukałem na forum i w samym programie ale takiego wątku nie znalazłem, może jest zbyt banalny.
Dzięki za ewentualne podpowiedzi.

Problem z rastrami

$
0
0
Witam wszystkich forumowiczów.
Mam następujący problem: ilekroć wrzucam do projektu raster, w momencie gdy skaluje mapę Qgis się zawiesza. Pracuje na wersji 2.14.3. Próbowałem pracować na wersji stabilnej ale problem nie zniknął. Mam zainstalowanego Win 10 czterordzeniowy procek, 16Gb ramu.

"Hatches" jak w ArcGis

$
0
0
Czy w Qgis jest odpowiednik "hatches'ów" z ArcGis ?

Oznaczam długości linii w km i w miarę zmniejszania skali, dynamicznie zmienia mi się szczegółowość oznaczeń długości pokazując poszczególne hektometry.


.png  0.PNG (Rozmiar: 1,29 KB / Pobrań: 2)

.png  1.PNG (Rozmiar: 5,73 KB / Pobrań: 2)

.png  2.PNG (Rozmiar: 5,54 KB / Pobrań: 2)

Mógłbym to rozwiązać tworząc warstwy z poszczególnymi stopniami szczegółowości i pokazywać/ukrywać ale ... może jest qgisowa wersja hatchesów?

zmiana koloru rastra

$
0
0
Po skorzystaniu z kalkulatora rastra stworzyłem raster gdzie wyświetlone są tylko piksele reprezentujące teren < 110 m - są one czarne. Jak zmienić kolor na np niebieski ?

W właściwościach stylu warstwy mam:

Sposób wyświetlania: jednokanałowy szary
Kanał: kanał 1 (szary)
Gradient koloru: tu moge zmienić biały w czarny i na odwrót
min:0
max:0,999

Jak zrobić np jednokanałowy pseudokolor, żeby wybrane przeze mnie tereny stały się "niebieskie" a reszta biała a najlepiej przeźroczysta bo to będzie warstwa ?

Liczenie objętości

$
0
0
Czy istnieje możliwość liczenia objętości na pdst. NMT albo warstwic (poligonów) w Qgis ?
Viewing all 769 articles
Browse latest View live