Avançar para o conteúdo principal

C# - Conversor de ângulos (2)

C# - Conversor de ângulos

Este é um programa que faço em várias linguagens de programação. Esta versão é semelhante a uma que fiz no final de 2022 na mesma linguagem.


Uma das operações na engenharia é converter entre várias unidades angulares. Além das tradicionais entre sistema angulares de graus (0-360) e grados (0-400) já necessitei de recorrer a aplicações Web para converter coordenadas planas em geográficas, e o resultado estar num formato decimal ou sexagesimal, e ter de converter para o outro. E para isso usei um programa semelhante ao que se apresenta hoje.


É um programa para consola, ou CLI, ou se quiserem em modo MS-DOS.


A janela inicial é a que fica a aguardar um valor de entrada:



O programa nesta fase analisa a validade dos dados, e determina se o input é feito em decimais ou sexagesimais.

No caso do exemplo acima, é um ângulo em decimal, e não temos de indicar as unidades iniciais.

Assim oferece as várias possibilidades, se entramos um valor em graus ou grados:


outra opção é dar uma entrada em sexagesimais, com espaços entre os dados:


E obtemos um resultado coerente:


Falta ainda despistar alguns inputs, como por exemplo, minutos e segundos iguais ou maiores que 60, e mais umas coisas.


Serve como exercício de CSharp.


https://drive.google.com/file/d/1hs_ZMkGyyvsCg8DZHpqghBMcZK9iR_Sn/view?usp=sharing


Comentários

Mensagens populares deste blogue

ISPOL - Representação de Gabaris

ISPOL - Representação de Gabaris No ISPOL podemos representar ao longo do traçado um contorno e até realizar variações. A representação de um contorno ou gabari pode ser realizada no ISPOL de um modo simples, usando por exemplo um Símbolo (bloco) da biblioteca, ou um ou vários criados à medida para atender aos casos necessários. Na imagem abaixo um exemplo da biblioteca do ISPOL, representado no perfil transversal. Estas secções são constituídas por símbolos/blocos: Podem-se desenhar ao longo do eixo proporcionando a vista típica destas situações, uma espécie de sólido que enche o traçado. Além desta representação "simples" o ISPOL permite realizar transições entre símbolos diferentes, por exemplo para representar os diferentes gabaris em recta e curva. Ou outras situações que se achem necessárias. Permite ainda condicionar a representação destes símbolos por valores de raio. Isto é para um determinado raio. Pode ser usado para indicar de forma automática ao programa que em r...

Python - Automatização em ISPOL

Python - Automatização em ISPOL Com o uso de PyAutoGui podemos automatizar tarefas repetitivas no ISPOL ISTRAM. No trabalho actual, é necessário converter mais de 300 ficheiros. Já houve um trabalho prévio de ler e transformar dados de directrizes em Excel para ficheiros compatíveis com a conversão presente. Este trabalho prévio foi também feito com programação. Tendo os muitos ficheiros com formato TXT que o ISPOL pode ler e converter para CEJ, é necessário ir ao menu de Conversores do ISTRAM e digitar os dados para ler a localização dos ficheiros, número de eixo etc... um trabalho repetitivo. Sendo repetitivo uma hipótese que deve surgir é se existe forma de automatizar / programar. O ISTRAM ISPOL não permite o uso de plugins (como o CAD), por tanto a via seria pela automatização dos movimentos. O pacote PyAutoGUI para Python permite esta simulação de movimentos. https://pyautogui.readthedocs.io/en/latest/ Basicamente "guiamos" o cursor para onde deve clicar e o que introdu...

Python - Larguras de vias em Excel para ISPOL

Python - Larguras de vias em Excel para ISPOL Uma das formas de organizar a informação é usar o Excel. O ISPOL sendo um software em que muita informação é indicada de forma paramétrica, pode gerar alguma dificuldade ou confusão, quando há muitos dados. É o caso das larguras de vias, quando há vias de aceleração ou abrandamento, e diversas situações de vias adicionais. Uma forma de contornar alguma dificuldade é organizar a informação em quadros Excel. O Excel não comunica com o ISPOL, por isso arranja-se um canal de comunicação, a programação em Python. Com alguma experiência na programação, criar um script que realize o que pretendemos não leva assim tanto tempo. Como primeiro passo, ter um ficheiro de Excel com a informação estruturada. Os dados principais podem ser introduzidos com leituras de PKDist do ISPOL e copiados para o Excel. Pode-se ter umas fórmulas nas células para calcular as transições. Cada folha de Excel é relacionada a um eixo. O script ao início pede o número de eix...