Avançar para o conteúdo principal

Mensagens

A mostrar mensagens de junho, 2022

Automatização ISPOL - Larguras - Javascript vs Python

Automatização ISPOL - Larguras - Javascript vs Python Tenho um programa funcional em Python, que desenha as larguras entre vias e a muros. No entanto este não tem interface gráfica. Já tinha feito um post anteriormente com o processo que usei para automatizar estas larguras / distâncias. Com a intenção de dar uma interface gráfica ao programa de desenho de larguras entre vias (ferrovias) e os muros laterais, decidi migrar o programa para Javascript, não sei se se pode empregar o termo refactorar. O objectivo final é o mesmo, produzir o desenho seguinte com as larguras / distâncias entre as vias e os muros. Agora com a mudança de linguagem de programação, de Python a Javascript o código teve de ser refeito, não todo mas uma boa parte. Mas tendo conhecimentos na área a tarefa não é impossível. Há que atender à especificidade de cada linguagem, umas são melhores num aspecto outras noutro. Amostra em Javascript: Amostra em Python: A maior alteração foi na construção da string do tipo 0+000

Escopo ou âmbito de uso das variáveis em Javascript

Escopo ou âmbito de uso das variáveis em Javascript Esta ideia de onde e como se usam as variáveis dentro de um programa é essencial e comum a muitas linguagens de programação. No Javascript tenho normalmente a tendência, errada de não colocar um prefixo na declaração de variável. Como estou a tentar "padronizar" um pouco o modo de escrever código, tenho investigado também o uso das declarações de variáveis LET e VAR. A declaração LET declara uma variável com escopo ou âmbito dentro do bloco de código, enquanto a declaração VAR faz o mesmo mas no âmbito da função... Pela documentação oficial do MDN: let permite que você declare variáveis limitando seu escopo no bloco, instrução, ou em uma expressão na qual ela é usada. Isso é inverso da keyword var, que define uma variável globalmente ou no escopo inteiro de uma função, independentemente do escopo de bloco. https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Statements/let Mas no caso que apresento abaixo, em ve

Registo e controlo de versões e não só

Registo e controlo de versões e não só. Para manter uma linha da evolução e ou alteração das versões de um projecto é necessário algum tipo de registo. Há diversas formas de atingir o mesmo objectivo, manter um registo da evolução do projecto. Podemos com os projectos de ISTRAM ir guardando uns ficheiros ISA com algum tipo de controlo de versões ... pastas ... software dedicado ... Eu por vezes opto por ir fazendo um registo em HTML CSS, onde vou montando umas tabelas e associando umas imagens dos inputs outputs e dos processos, algumas capturas de CAD e de ISTRAM. Tenho uma pasta com os ficheiros "Web": E o conteúdo começa com um índice, proporcionado pelo tipo de linguagem HTML com as hiperligações: Como se vê no dito índice, tenho coisas para saber como "desenhar" o projecto; exemplos de saídas; requisitos; etc ... uma tabela de controlo de versões por data: Isto feito sem ser num software dedicado, pode parecer complexo de fazer mas por outro lado dá-me toda a f

CRUD

CRUD O conceito de CRUD é muito associado à programação mas é um conceito mais geral. O CRUD é um acrónimo inglês para: Create Read Update Delete Ou seja: Criar; Ler; Editar e Apagar. São operações básicas para por exemplo um registo de clientes, deste caso é óbvio o tipo de uso... ou até como é exemplificado por alguns autores, os posts nas redes sociais, já que para cada utilizador é mantido um registo dos posts novos, do que editou, apagou... No sentido da programação, quem se inicia nestes estudos geralmente é-lhe proposto a construção de um sistema deste tipo, seja uma lista de compras um uma app de "to-do". No sentido da engenharia, projecto de vias, também faz o seu sentido, na medida que em que criamos um eixo, vamos sobre ele adicionando e alterando características, lemos um outro, apagamos outro... Cumprimentos.

Atalhos para Windows - Recorte de imagem

Atalhos para Windows - Recorte de imagem Conhecer alguns atalhos de teclado é um impulso importante na produtividade, neste caso no sistema operativo Windows 10. Uma das maneiras de ser mais produtivo é conhecer alguns atalhos usados nos softwares com que trabalhamos. Seja um Word Excel VSCode CAD... e também claro no Windows. Uso bastante a ferramenta de recorte. Sobre qualquer documento que esteja a ser mostrado no ecrã posso fazer um recorte instantâneo e incluir esse recorte num correio do Outlook ou num Word... ou simplesmente no Paint. Para fazer um recorte basta pressionar ao mesmo tempo as teclas SHIFT + WINDOWS + S : São mostradas várias opções, por defeito é o recorte por área rectangular: Depois basta fazer um CTRL + V para colar no programa / espaço desejado. Se fizer WINDOWS + V pode ainda aceder ao histórico de transferências, que inclui os recortes de imagens e as cópias de textos. Se esta opção não estiver activa deve aparecer a seguinte janela para a activar: Agora ao

Compilar ficheiros LON usados no projecto

Compilar ficheiros LON usados no projecto A questão que hoje trago tem a ver com a grande quantidade de ficheiros LON usados num projecto. Num dos projectos em que estou a trabalhar actualmente, usamos dezenas de ficheiros de Longitudinais, na extensão LON, carregados no menu de rasante. Veja-se o exemplo do menu de rasantes: Imagina-se com várias versões ou correcções, ou vários eixos, facilmente se descontrola que ficheiros de perfis são necessários para trabalhar com o projecto correctamente. Estes ficheiros LON não vão junto com o ficheiro ISA de projecto. Aqui a ideia seria então compilar os ficheiros necessários, e copia-los para uma pasta de modo a manter um repositório de ficheiros necessários e actualizados. Na minha pasta de projecto devo ter uns 100 e só devem ser necessários 50 ... Como dado de entrada, grava-se desde o ISPOL um ficheiro de Rasantes, que contém no seu final a lista de ficheiros e descrição vista na imagem mais acima. Construindo um programita com tecnologia

Informação de rasante numa linha em planta - ISPOL

Informação de rasante numa linha em planta - ISPOL A informação gráfica é sempre uma mais valia no projecto de uma obra linear. Entre milhares de inputs, menus, eixos, rasantes... é bom ter uma informação gráfica que nos ajuda a entender o estado do projecto, e ter uma perspectiva diferente sobre o que estamos a fazer. Qualquer tipo de informação gráfica sobre o eixo ajuda bastante nesse sentido. Hoje lembrei-me de expor uma utilidade que não uso muito, e talvez a maior parte dos utilizadores de ISPOL ISTRAM também não usem, atribuir cota a linha da directriz de um eixo, e dar-lhe um significado com escala de cores correspondente quer à rasante ou aos elementos da directriz em planta. Após desenhar a linha de directriz no menu de planta, com um cálcula (e o eixo ter claro, uma rasante definida) podemos usar a utilidade Z->L53. Lembrando que as linhas que definem a directriz são do tipo L53. Aqui podemos escolher dar cor segundo a rasante (no texto do menu como alzado) e/ou planta. A

WebApp JS

 WebApp JS Este é um pequeno modelo de App usando as tecnologias WebStack. Foram diversas ocasiões em que tive de usar a programação para agilizar a introdução de dados e cálculos. Em projectos de maior dimensão é um "must" face à quantidade informação manipulada, e a introdução de dados num programa como o ISPOL, que funciona com ficheiros de texto, é uma mais valia. Assim como o tratamento de dados que o programa devolve. Tenho pequenos-grandes utilitários feitos em Javascript CSS HTML5 que pouparam horas e dias de trabalho. Ultimamente tenho investido na linguagem Python com o mesmo propósito. A linguagem Python com os recursos que dispõe por defeito tem uma grande potência de trabalhar informação mas uma pobre interface. Com ela tenho gerado ficheiros executáveis que posso partilhar com outros colegas, ficando assim com o código original, livre de interferências e alterações não controladas. O Javascript CSS HTML5 têm a mais valia da apresentação gráfica, para a maior par