Avançar para o conteúdo principal

JavaScript - Autocad Uma alternativa ao C#

JavaScript - Autocad Uma alternativa ao C#

Na exploração de alternativas para a programação em Autocad, o JavaScript pode em alguns casos ser um caminho viável.

Menu Pavimentos
Exemplo para um Menu de Pavimentos

No exercício que estou a fazer, a ideia é montar um programa para desenhar secções tipo, ou pelo menos os componentes de uma secção tipo. Fazemos muitos reaproveitamentos de secções tipo, e nem sempre estas secções estão exactas, ou falha um milímetro ou a pendente não é a correcta, coisas assim. Além disso poderia ser uma forma de uniformizar e claro de poupar tempo no desenho e montagem de uma secção tipo.

Para já a ideia está na fase de verificar a viabilidade da mesma. O caminho poderia ser um programa fora do Autocad, ou dentro do Autocad. Dentro do CAD o tradicional caminho é o do CSharp. Com o CSharp para que tenha menus, tem de se ir sempre ao Visual Studio, o que acrescenta mais um passo de complexidade. Depois há ainda que escolher de que tipo são as janelas do Menu... há três tipos, mas o que está preferido pelo CAD são as Palettes.

Com a ideia de simplificar, resolvi ver o caminho do JavaScript. O Autocad permite criar uns scripts (scripts no sentido de operações trabalhos etc...) com JS, mas sem menus. Tem algumas limitações, não sendo tão potente como o C#. Para alguns casos é suficiente, e se fosse necessário poderiam ser extendidas as suas capacidades...

O JS tem o defeito de, em conjunto com o HTML para gerar um menu tipo Palette de deixar o código fonte acessível. Mas se for para consumo interno não há problema. tem a vantagem de não usar o Visual Studio e de ser realizado numa tecnologia quase conhecida.

Tem de estar ligado à Net, pois funciona com recurso a uma API. Mas o próprio Autocad hoje em dia tem de estar ligado por temas de licenças.


Para o projecto são necessários pelo menos dois ficheiros, um JS que indica que +e um menu Palette e carrega o HTML.


Dentro do HTML está todo o layout do programa e as suas funções.

Por exemplo, o conteúdo do HTML pode ser:
Neste HTML faz-se o link ao API.

https://df-prod.autocad360.com/jsapi/v3/GettingStart/index.html




O ficheiro JS apenas faz a ligação ao HTML e indica que é um menu de Palette:


O carregamento deste programa é feito pelo comando WEBLOAD e depois indica-se o caminho para o ficheiro JS:
Ainda estou a ver como se pode abreviar o processo de carregamento.

Pode-se ver que abre o menu, em forma de Palette, típica de vários menus de CAD como por exemplo o das propriedades de uma linha... apenas não tem (por agora) uma formatação familiar.


Nesta fase inicial do projecto, tenho apenas duas opções, sem muita complexidade, para ir verificando a viabilidade do projecto.


Este seria o Menu de Pavimentos e à direita um desenho inicial, de duas linha que representa o topo e o fundo de uma camada de pavimento, com a pendente (fixa ainda) e espessura desejada.
Estou a trabalhar na separação de layers e hatch etc...




Comentários

Mensagens populares deste blogue

C# - Viadutos Excel - ISPOL

C# - Viadutos Excel - ISPOL Ler dados do Excel e passar a informação para o ISPOL é um ganho de produtividade e organização. Desta vez, apresento uma utilidade que lê um ficheiro Excel, e transforma os dados para o menu de estruturas do ISPOL. Partindo de um Excel organizado, por pks eixos e espessuras da estrutura etc... como o seguinte: Elaborei um programita em CSharp: Este programa funciona em modo "DOS" não tem uma interface gráfica de janelas: O programa cria os ficheiros necessários, o Excel pode estar organizado por eixos, e o programa guarda um ficheiro para cada eixo: O resultado depois de abrir o ficheiro em ISPOL é o seguinte: Com as alterações ao projecto pode-se manter um ficheiro de apresentação e controlo em Excel.

Politica de privacidade das aplicações colocadas na Play Store do Google

Politica de privacidade das aplicações colocadas na Play Store do Google. As aplicações não recolhem qualquer dado do utilizador nem a armazenam ou partilham com terceiros. Não recolhem a localização nem a armazenam ou partilham com terceiros. Alguma informação sobre os utilizadores que possa chegar ao programador por via da Play Store, será tratada de acordo com toda a confidencialidade, e não fornecida a terceiros. Obrigado.

ISPOL CAD CSharp - Fila de estratigrafia nos perfis longitudinais

ISPOL CAD CSharp - Fila de estratigrafia nos perfis longitudinais No corrente exercício, foi necessário agilizar o desenho do texto das camadas nos perfis. fonte : https://www.youtube.com/watch?v=PBEX1SFv8hk O modo de apresentação dos perfis quilométricos para a SCiT assim o requere. O trabalho de copiar a informação da tabela de geotécnia de Curva Masa para o desenho, se feito de forma manual consome bastante tempo. E como estas tabelas costumam sofrer alterações ao longo do projecto é um ponto a favor de alguma programação. Esta poderia ser apenas a transformação de dados do Excel para o ISPOL. O objectivo final é transformar a tabela acima, numa informação gráfica como o exemplo genérico seguinte: No menu de Tablas de Textos do ISPOL, encontrei uma limitação de número de caracteres, o que impede a copia directa de informação do Excel para o ISPOL. Assim pensei em adicionar algo mais ao planeado na programação. No ISPOL coloca-se um marcador para cada intervalo, que depois em CAD se