Você está aqui: Java ::: Topografia e Geoprocessamento ::: Passos Iniciais |
Como converter Rumo em Azimute em Java - Java para Topografia e Engenharia CivilQuantidade de visualizações: 901 vezes |
É muito comum, nos códigos que estamos escrevendo para cálculos de Topografia e Engenharia Civil, termos que lidar com conversões de Rumo para Azimute e vice-versa. A palavra azimute, de origem árabe, significa "as direções", e é sempre determinado no sentido horário. Muito utilizado na Topografia, em levantamentos topográficos, o azimute é o ângulo entre o norte magnético, e um ponto levantado, ou entre o norte e um lado de um determinado polígono. Seu valor varia de 0º a 360º. Não esqueça, sempre partindo do norte. O Rumo, por sua vez, é o menor ângulo formado pelo alinhamento norte sul e a direção considerada. Seu valor varia de 0º a 90º e é obtido a partir do norte ou do sul por leste e oeste. Como o rumo expressa o ângulo sempre em função do quadrante em que ele se encontra, temos que acrescentar as siglas NE, SE, SW, NW. A primeira letra indica a origem a partir da qual a contagem é realizada e a segunda letra indica a direção do giro ou quadrante. Dessa forma, valores em rumo quase sempre vêm descritos como graus, minutos e segundos, variando de 0º a 90º e precedidos ou antecedidos pelas siglas discutidas acima. Veja na figura a seguir uma exemplicação de azimute e rumo: ![]() Veja agora o código Java completo que pede para o usuário informar a direção em rumo e mostra a direção correspondente em azimute: package estudos; import java.util.Scanner; public class Estudos { public static void main(String[] args) { // para ler a entrada do usuário Scanner entrada = new Scanner(System.in); // vamos pedir para o usuário informar o valor do rumo System.out.print("Informe o valor do rumo: "); double rumo = Double.parseDouble(entrada.nextLine()); // agora vamos pedir a sigla System.out.print("Informe a sigla [NE, SE, SW, NW]: "); String sigla = entrada.nextLine(); // agora vamos converter rumo em azimute double azimute = 0; if(sigla.equals("NE")){ // estamos no primeiro quadrante: 0º a 90º azimute = rumo; } else if(sigla.equals("SE")){ // estamos no segundo quadrante: 90º1' a 180º azimute = 180 - rumo; } else if(sigla.equals("SW")){ // estamos no terceiro quadrante: 180º1' a 270º azimute = 180 + rumo; } else if(sigla.equals("NW")){ // estamos no quarto quadrante: 270º1' a 360º azimute = 360 - rumo; } // mostramos o resultado System.out.println("O azimute para o rumo informado é: " + azimute); } } Ao executar este código Java nós teremos o seguinte resultado: Informe o valor do rumo: 35 Informe a sigla [NE, SE, SW, NW]: SE O azimute para o rumo informado é: 145.0 Note que o nosso código Java está considerando apenas os graus, ou seja, não incluímos os minutos e segundos. Em outras dicas do site eu mostro como converter graus, minutos e segundos em graus decimais antes de efetuar os cálculos. |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
Python - Como criar um relógio analógico no Pygame - Código completo com variáveis e comentários em português |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |