Você está na página 1de 2

Autolisp - Associao de Comandos

Categorias autocad, Lisps Pra quem no gosta de programao e gosta de usar lisps, a associao de comandos usando lisp so bem teis, pois trata-se apenas de alguns macetes para fazer macros usando lisps. Essa associao criar um novo atalho de comando e far com que o AutoCAD execute a sequncia de passos que voc mandou. A sintaxe para fazer essas macros uma s e bem simples: (defun c:<atalho> () (command <comandos>)) O que est escrito entre <> genrico e deve ser mudado. Com essa simples linha, d pra fazer muita coisa legal e, para quem no gosta de programao, isso basta. Para fazer algo como isso funcionar em seu AutoCAD, basta colar na barra de comandos e o novo comando j estar ativo; mas somente enquanto seu AutoCAD estiver aberto. Se fech-lo, ir perder. Para ter permanentemente, ele deve ser colado em um arquivo do bloco de notas e salvo com a extenso lsp e adicionado atravs do comando APPLOAD. Um exemplo seria: (defun c:py ()(command "-purge" "a" "" "n")(princ)) O objetivo da funo command escrever na barra de commandos o que voc escreveria. Para isso, tudo deve ser escrito entre aspas. Dessa forma, quando for chamado o comando py o AutoCAD chamar o comando purge, depois entrar com um a que significa all, depois um enter, representado por e depois um n e No, para no verificar cada item purgado. Se voc utilizar o comando -purge, verificar cada um desses passos. O que essa macro faz associar estes passos. Dicas: Voc pode colocar na linha de comando a funo prompt descrevendo o comando. A descrio aparecer na linha de comando quando o comando for chamado e antes dele ser executado: (defun c:py () (prompt "\nPurgar tudo")(command "purge" "a" "" "n")(princ)) Quando (princ) colocado no final, evita que um nil seja escrito na barra de comandos no final da execuo do comando. Para simular um enter na barra de comandos, utilize aspas vazias: . Para permitir a entrada de dados do usurio no meio do comando, utilize a palavra pause, sem aspas. Quando um comando pede um ponto como entrada de dados, utilize @, entre aspas, para utilizar o ltimo ponto clicado pelo usurio. Para fazer macros com comandos que usam caixa de dilogo, como hatch, array, layer, e outros, utilize um trao - antes do nome do comando. Ex: -hatch, -array, -layer, -purge.

Quando isso utilizado, o AutoCAD reproduz as funes da caixa de dilogo na barra de comandos. Os modos de seleo tambm podem ser utilizados nessas macros. Utilize o nome completo deles entre aspas: last, previous, fence, etc. Mais exemplos: (defun c:sed () (prompt "\n*Adson*- arco (start, end, direction)") (command "arc" pause "e" pause "d")(princ)) (defun c:bp () (prompt "\n*Adson*-Quebrar em um ponto")(command "break" pause "f" pause "@")(princ)) (defun c:ad () (prompt "\n*Adson*-Somar reas")(command "area" "a" "o")(princ))

Você também pode gostar