geo_angle()
Aplica-se a: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Calcula o ângulo no sentido horário em radianos entre duas linhas na Terra. A primeira linha é [ponto1, ponto2] e a segunda linha é [ponto2, ponto3].
Sintaxe
geo_angle(
,
p1_longitude p1_latitude,
p2_longitude,
p2_latitude,
p3_longitude p3_latitude,
)
Saiba mais sobre as convenções de sintaxe.
Parâmetros
Nome | Digitar | Obrigatória | Descrição |
---|---|---|---|
p1_longitude | real |
✔️ | O valor da longitude em graus da primeira coordenada geoespacial. Um valor válido está no intervalo [-180, +180]. |
p1_latitude | real |
✔️ | O valor da latitude em graus da primeira coordenada geoespacial. Um valor válido está no intervalo [-90, +90]. |
p2_longitude | real |
✔️ | O valor de longitude em graus da segunda coordenada geoespacial. Um valor válido está no intervalo [-180, +180]. |
p2_latitude | real |
✔️ | O valor da latitude em graus da segunda coordenada geoespacial. Um valor válido está no intervalo [-90, +90]. |
p3_longitude | real |
✔️ | O valor de longitude em graus da segunda coordenada geoespacial. Um valor válido está no intervalo [-180, +180]. |
p3_latitude | real |
✔️ | O valor da latitude em graus da segunda coordenada geoespacial. Um valor válido está no intervalo [-90, +90]. |
Devoluções
Um ângulo em radianos no intervalo [0, 2pi) entre duas linhas [p1, p2] e [p2, p3]. O ângulo é medido CW da primeira linha para a segunda linha.
Observação
- As coordenadas geoespaciais são interpretadas como representadas pelo sistema de referência de coordenadas WGS-84 .
- O dado geodésico usado para medir a distância na Terra é uma esfera. As arestas de linha são geodésicas na esfera.
- Se as coordenadas forem inválidas, a consulta produzirá um resultado nulo.
- Se point1 for igual a point2, a consulta produzirá um resultado nulo.
- Se point2 for igual a point3, a consulta produzirá um resultado nulo.
- Se point1 e point2 forem antípodas, a consulta produzirá um resultado nulo.
- Se point2 e point3 forem antípodas, a consulta produzirá um resultado nulo.
Exemplos
O exemplo a seguir calcula o ângulo em radianos.
print angle_in_radians = geo_angle(0, 10, 0,5, 3,-10)
Saída
angle_in_radians |
---|
2.94493843406882 |
O exemplo a seguir calcula o ângulo em graus.
let angle_in_radians = geo_angle(0, 10, 0,5, 3,-10);
print angle_in_degrees = degrees(angle_in_radians)
Saída
angle_in_degrees |
---|
168.732543198009 |
O exemplo a seguir retorna null porque o 1º ponto é igual ao 2º ponto.
print is_null = isnull(geo_angle(0, 10, 0, 10, 3, -10))
Saída
is_null |
---|
Verdadeiro |