Ocena wątku:
  • 0 Głosów - 0 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
Kąt linii
18-05-2014, 16:00,
#1
Kąt linii
Witam,
Zwracam się do Was z kolejnym pytaniem: Warstwa wektorowa składa się z linii. Udało mi się określić długość poszczególnych odcinków (polecenie $length) wrzucając otrzymane wartości do utworzonej kolumny "DŁUGOŚĆ". Analogicznie chciałbym jeszcze dokładnie określić kąty poszczególnych odcinków dodając je do kolumny "KĄT" ale za nic nie mogę znaleźć stosownego polecenia w kalkulatorze pól. Najlepiej, aby kątem odniesienia (zero stopni) był odcinek poziomy. Prosiłbym o pomoc.
Pozdrawiam
20-05-2014, 18:50,
#2
RE: Kąt linii
W kalkulatorze chyba się nie da, ale da się to zrobić w Konsoli Pythona: http://gis.stackexchange.com/questions/2...4430#24430
Nie za bardzo potrafię posługiwać się tym narzędziem, może ktoś bardziej obeznany będzie potrafił wyjaśnić krok po kroku jak to ugryźć.
21-05-2014, 09:23, (Ten post był ostatnio modyfikowany: 21-05-2014, 09:25 {2} przez randyX.)
#3
RE: Kąt linii
Jeśli nie ma dla Ciebie znaczenie czy obrót jest 90 czy 270 stopni (kierunek ten sam tylko ewentualnie zwrot przeciwny) to w kalkulatorze pól:

Kod:
case when (xat(1)-xat(0))=0 then 0 else (case when (180*atan((yat(0) - yat(1))/ (xat(1)-xat(0))  ))/$pi <0 then ((180*atan((yat(0) - yat(1))/ (xat(1)-xat(0))  ))/$pi)+180 else (180*atan((yat(0) - yat(1))/ (xat(1)-xat(0))  ))/$pi end) end

Gdzie "0" jest w pionie (jak przy azymutach)..

Obrót jest liczony od punktu początkowego do końcowego linii.
Do zmiany kierunków linii są jakieś narzędzia dostępne w QGIS (nie pamiętam jaka wtyczka)


aha... działa w QGIS 2.2.
W 1.8.0 nie działa ze względu na "$pi"
21-05-2014, 18:56, (Ten post był ostatnio modyfikowany: 21-05-2014, 19:59 {2} przez andrutt.)
#4
RE: Kąt linii
Dzięki za pomoc, nie sądziłem, że to tak skomplikowane, ale pobawię się kodem.
Właśnie przetestowałem i działa na QGIS 2.0.1 Smile Jeszcze raz dzięki za pomoc, o to mi chodziło.


Podobne wątki
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Rysowanie linii po istniejącej linii lukasz0830 7 15 061 14-11-2018, 23:51
Ostatni post: jerresso

Skocz do: