Avançar para o conteúdo principal

Lisp - Autocad

Eis um LISP simples, no qual se podem observar alguns conceitos básicos de programação, neste caso específica para Autocad.
Guardar o código como Exemplo.lsp (ficheiro de texto simples, com extensão lsp). Depois arrastar para cima de uma janela com um desenho de Autocad. Na linha de comandos escrever "Exemplo". A saída deverá ser um texto com as coordenadas do ponto escolhido.


Here is a simple LISP, in which you can observe some basic programming concepts, in this case specific to Autocad.
Save the code as Exemplo.lsp (plain text file, with lsp extension). Then drag it up to a window with an Autocad drawing. At the command prompt type "Exemplo." The output should be a text with the coordinates of the chosen point.


;Programa de exemplo

(defun c:Exemplo ()
  (princ "_____ Clique um ponto _____")
  (setq ponto1 (getpoint "\n Clique no desenho ?: "))
  (setq pt1x (car ponto1))
  (setq pt1y (cadr ponto1))
  (setq pt1z (caddr ponto1))
  (princ " Coordenadas xx -> ")
  (princ (rtos pt1x 2 2))
  (princ)
  (princ " yy -> ")
  (princ (rtos pt1y 2 2))
  (princ)
)

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...