AULA 23 - 03.DEZEMBRO.2014

03-12-2014 13:36

Nesta aula criamos uma macro, cuja função era desenhar um quadrado. Começamos por abrir o programa Notepad++ e guardar o ficheiro como "quadrado.lsp" e "all types".

Introduzimos os comandos

- Nome da função - defun c: quadrado (), () significa que a função não tem argumentos

- Perguntas ao utilizador para usar o nosso comando - neste caso: qual é o ponto inicial e a dimensão do lado- (setq serve para associar a variável). Na pergunta seguinte utilizamos "getreal" por é um número, enquanto que não primeira pergunta usamos "getpoint" porque é pedido que se marque um ponto.

- O comando que vamos utilizar para fazer esta função - neste caso é o comando "line"

- quando colocamos ; antes de uma linha, o programa não a vai ler, por isso para faciliar colocamos este simbolo antes de (setq ....) cujo objetivo era eu P1 fosse sempre o ponto 0,0.

- devemos sempre fechar o comando

- utilizamos "c" para fechar o nosso quadrado e unir os quatro pontos: p1,p2,p3 e p4.

 
Feito isto, devemos guardar o documento e no AutoCad fazer AAPLOAD da nossa macro. Seguimos os passos pedidos e deverá aparecer o nosso quadrado.
 
De seguida voltamos ao Notepad++, vamos colocar na nossa macro a função de ligar e desligar os osnaps durante e apos a execuçao do quadrado. Para isso recorremos á tecla F1 que nos permite ver as variáveis do Autocad que podemos utilizar no Auto Lisp.
 
No notepad++ vamos inserir o comando da seguinte forma:
(setvar "osmode" 0) -  zero é o grau que vemos, quando abrimos o quadro da tecla F1, como o grau maus baixo que faz com que os osnaps sejam desligados.
 
 
De seguinda alteramos os nossos comandos para que o p1 não seja o 0,0 mas sim um ponto que nós escolhemos. Para isso vamos tirar o ; função (seqq getpoint...) e ligar na linha (setp P1 0,0)