Avançar para o conteúdo principal

Mensagens

A mostrar mensagens de junho, 2024

C# - ISPOL intervalos de desenho perfis longitudinais

CSharp - ISPOL intervalos de desenho perfis longitudinais Sempre que há muita digitação há erro. Para gerar vários perfis longitudinais com intervalos irregulares criei um pequeno programa para que o ISPOL possa ler esses intervalos com a menor intervenção humana possível. Esta imagem, ilustra a área de trabalho, rectangulo verde, e até onde já se desenhavam os meus perfis longitudinais. Ora tudo o que é repetitivo merece uma pausa e ponderação se é possível ir pelo caminho da programação. Eu já tinha os intervalos (e outra informação que não interessa explicar) num Excel. Assim pensei em passar para um Excel limpo apenas a informação que me interessa que seja lida pelo programa. Nome do ficheiro corresponde a uma folha de desenho e uma para cada perfil desenhado. PK inicial e final ao intervalo que se desenhará no ISPOL. Os ficheiros gravados no menu de Longitudinais são em formato de texto. Com uma meia hora / hora de programação consegui fazer um programa que leia o Excel. E que gra...

Autocad e Chat GPT - o não oráculo

Autocad e Chat GPT - o não oráculo Sem entrar em profundidade nos vídeos e posts sobre o uso da Inteligência Artificial no fluxo de trabalho do Autocad não teremos claro do que se trata. Imagem criada com IA Dall-E Podemos ver vários thumbnails de vídeos no Youtube e vários artigos na net que prometem conectar o Chat GPT ao Autocad, fazer maravilhas pelo fluxo de trabalho e produtividade. Alguns até incluem BIM. Com estes ingredientes poderíamos pensar que temos pela frente uma espécie de oráculo ou máquina inteligente que nos vai ajudar (ou quem sabe substituir) no desenho de CAD. É logo de desconfiar, pois na Net há muito hype - fazer barulho para ter visualizações. Decidi assistir a um desses vídeos, que afinal nada entregam a mais, que um utilizador médio avançado de CAD não possa entregar. Com a ressalva de haver outros métodos apresentados que realmente aumentem a produtividade. https://youtu.be/9ZKSnMFoq14?si=riyfmN6l3VKh5j3u "How ChatGPT Improved My AutoCAD Workflow FOREVE...

HTML CSS - Box Model

HTML CSS - Box Model Uma das bases para se entender o funcionamento do CSS é o modelo de caixa, ou box model. Em qualquer navegador, depois de clicado o botão direito aparece a opção inspeccionar. Depois no separador elementos vai aparecer no fundo o Box Model. Abrir uma página vazia ajuda a encontrar. Box Model - Google Chrome Podemos jogar um pouco com o Box Model, para aprender (e complicar) criando um HTML simples: HTML Apenas tem linkado o ficheiro CSS e um div com um título H1 CSS No CSS apenas estão activadas propriedades para o div com a classe página. A correspondencia tal qual como está entre o CSS e o que é mostrado na página com o Bom Model é a seguinte: No CSS não tenho a propriedade margin 5 px mas o Box Model indica 8 px. Na verdade esse margin é relativo ao elemento HTML que não está definido e se apresenta com um valor por defeito. Como perceber isso? primeiro colocar uma linha a rodear o elemento div, e depois se clicar dentro do conteúdo do DIV (H1) e inspeccionar ...

Android Studio Jellyfish

Android Studio Jellyfish Um regresso ao Android Studio para avaliar a capacidade de computação e facilidade de uso. Há muito tempo que não uso o Android Studio. Foi uma das primeiras plataformas que testei para construir aplicações Android. Depois face ao peso e complexidade fui experimentando outras plataformas. A plataforma com que obtive mais sucesso foi com o Kodular, que agora vai migrar para o MIT... Apesar de ser uma plataforma nocode ou lowcode com ela consegui fazer os meus programas de interface HTML CSS JS e monetizar com o AdMob. Interface site Android Studio Nem vou ler as especificações mínimas para correr bem o AS. Neste PC Windows tenho:      Processador N200      RAM 4 Gb      Disco 15Gb 1Gb e pouco de Download: Ao início da instalação a janela de opções indica que serão 3.6 Gb de instalação: Opções de instalação Anémonas  E o primeiro arranque por defeito após instalar o programa e ênfase na IA da google: Primeira execu...

BIM - Mais uma opinião do estado da arte, atrasada...

BIM - Mais uma opinião do estado da arte, atrasada... A aplicação da metodologia BIM, que permitiria uma industrialização da construção está e continuará com a adopção atrasada. Imagem gerada em Copilot Na aparente onda de projectos rodo-ferroviários que temos pela frente, partimos sem um uso corrente da metodologia BIM. Partimos sem ter passado pelas dores e erros de crescimento da adopção desta metodologia. Mesmo que fosse decretada obrigatória hoje, que para os projectos de linhas de alta velocidade, ou requalificações, ou até no caso mais simples para edificações (e bem falta fazem) seria impossível de concretizar. São precisos anos de preparação, preparar as pessoas e "hardware" no sector privado e mais difícil será ainda fazer o mesmo por parte das entidades do estado. Já uma vez fiz um post com a procura da palavra BIM no PRR, e resulta num zero. Vamos assistindo a espaçados eventos em Portugal, nos quais se expõem casos de uso de empresas, muito específicos, ou então ...

CSharp - Organizar o código

CSharp - Organizar o código Uma das formas de organizar o código é estruturar no mesmo ficheiro por Namespaces e Classes, outra é com DLL. Exemplo saída cálculos 1)  DLL A criação de Bibliotecas DLL (biblioteca de vínculo dinâmico  microsoft)  pode ser uma forma de dividir e organizar o código. As DLL funcionam como um módulo externo, um conjunto de código que se coloca num ficheiro diferente do principal. Com esta organização podemos também reaproveitar o código das DLL para outros projectos. Por exemplo uma biblioteca semelhante à apresentada no exemplo pode servir para vários projectos de engenharia. Código para o DLL Compilação do DLL; referencia; execução Referencia ao Namespace do DLL Output 2)  Interna Dentro de um mesmo ficheiro de código, é possível organizar o código, por NameSpaces e/ou por Classes. No código abaixo dentro da classe Converte está o código do exercício anterior para a mesma classe, nada mudou. A variante aqui é chamar desde um Namespace ded...