Buscamos por internet para así traerte la respuesta a tu duda, si continúas con dudas deja un comentario y contestaremos con mucho gusto.
Solución:
Las nuevas versiones de QGIS vienen con una función de azimut lista para usar:
Puede usar la pestaña del editor de funciones en la calculadora de campo y hacer que su azimut funcione así:
from qgis.core import *
from qgis.gui import *
@qgsfunction(args="auto", group='Custom')
def azimuth(x1,y1,x2,y2,feature,parent):
p1 = QgsPoint(x1,y1)
p2 = QgsPoint(x2,y2)
a = p1.azimuth(p2)
if a < 0:
a += 360
return a
Una vez que lo ejecute/guarde (y solo para asegurarse de reiniciar la calculadora), debería poder usar esta función en la pestaña de expresión escribiéndola o seleccionándola de la lista Funciones en personalizado como:
azimuth(x1,y1,x2,y2) #or variation azimuth("x1","y1","x2","y2")
Todo el crédito por esto es para Anita Graser y su Cómo crear contornos iluminados, al estilo Tanaka.
Si entiendes que ha resultado de ayuda este artículo, te agradeceríamos que lo compartas con más juniors de esta forma contrubuyes a dar difusión a nuestro contenido.