O AutoLISP é uma poderosa ferramenta de produtividade que permite automatizar fluxos de trabalho e estender a funcionalidade do AutoCAD LT.
Embora o AutoLISP não seja um novo recurso, ele agora está disponível no AutoCAD LT a partir da versão 2024.
A implementação do AutoLISP no AutoCAD LT permite executar a maioria dos programas AutoLISP que foram desenvolvidos nos últimos quase 40 anos com algumas limitações. Embora você não precise ser um especialista no AutoLISP para tirar proveito de muitos dos programas existentes, aprender programação do AutoLISP é uma habilidade que pode potencializar sua produtividade.
Os programas AutoLISP são normalmente armazenados em um arquivo de texto com a extensão .lsp. Aprender a carregar arquivos do AutoLISP é uma das primeiras coisas que você aprende nos exercícios seguintes antes de aprender alguns dos conceitos básicos da programação do AutoLISP. E não, você não precisa de experiência de programação anterior para tirar proveito do AutoLISP. Em muitos casos, alguns novos conceitos e sua compreensão atual dos comandos e variáveis de sistema do AutoCAD são tudo o que você realmente precisa.
Quando você começa usando o AutoLISP pela primeira vez, em vez de gravar seus próprios programas, provavelmente estará carregando um arquivo do AutoLISP que você encontrou on-line ou que sua empresa criou. Os arquivos do AutoLISP podem ser carregados:
É possível usar os seguintes métodos para carregar os arquivos do AutoLISP na inicialização, na abertura de um desenho ou manualmente.
| Carregar na inicialização | Carregar manualmente |
|---|---|
|
|
Como você pode ver, o AutoCAD LT é capaz de carregar arquivos do AutoLISP de diversas formas. Os métodos usados dependem da configuração do ambiente de desenho. Por enquanto, vamos examinar o carregamento de um arquivo do AutoLISP com a caixa de diálogo Carregar/descarregar aplicativos.
CARRAPLIC também pode ser inserido no prompt do comando.


Se você tiver um idioma diferente instalado, como pt-br, selecione essa pasta em vez de en-us.
O arquivo acadlt2024doc.lsp é um dos arquivos do AutoLISP especialmente nomeados que o AutoCAD LT procura e carrega se encontrado em cada desenho que é aberto ou criado. Esse arquivo do AutoLISP contém alguns comandos e funções personalizadas do AutoLISP usadas pelo produto. Aqui, estou usando apenas como um arquivo de exemplo.
Na caixa de mensagem, “acadlt2024doc.lsp foi carregado com sucesso.” é exibido no canto inferior esquerdo da caixa de diálogo e na janela da linha de comando.

Isso inicia o comando DDGRIPS definido pelo AutoLISP no acadlt2024doc.lsp. O comando DDGRIPS abre a caixa de diálogo Opções e define a guia Seleção como atual.
No exercício anterior, você usou o comando DDGRIPS. Tenho certeza de que você está se perguntando como você saberia que esse é um comando no arquivo do AutoLISP carregado. Às vezes, os programas podem usar algum código que coloca uma mensagem diretamente na janela da linha de comando para que você saiba quais comandos são definidos e podem ser usados. No entanto, isso nem sempre acontece, e talvez seja necessário abrir um arquivo do AutoLISP para saber quais comandos estão definidos. É possível abrir um arquivo do AutoLISP usando o Bloco de notas.
A imagem a seguir mostra parte do arquivo acadlt2024doc.lsp aberto no Bloco de notas. Os comandos definidos pelo AutoLISP que podem ser inseridos no prompt de comando são precedidos por c:. O texto diretamente após c: é o nome do comando.

Embora não haja um local específico onde você deva armazenar os arquivos do AutoLISP que foram transferidos por download ou criados antes de usá-los, recomenda-se armazená-los em uma localização compartilhada. Semelhante aos modelos de desenho e às bibliotecas de blocos, você deseja assegurar que todos os desenhistas em uma equipe ou na empresa tenham acesso aos mesmos arquivos do AutoLISP. Você deve considerar:
Após identificar uma pasta para armazenar os arquivos do AutoLISP, você precisa informar ao AutoCAD LT onde a pasta está localizada usando as configurações Caminho de pesquisa do arquivo de suporte e Localizações confiáveis na guia Arquivos da caixa de diálogo Opções. O AutoCAD LT precisa saber onde os arquivos LSP estão localizados pelos seguintes motivos:
As etapas a seguir mostram como adicionar a pasta C:\AutoLISP Files às configurações Caminho de pesquisa do arquivo de suporte e Localizações confiáveis. Você usará essa localização mais tarde para criar um arquivo LSP com alguns programas AutoLISP curtos.
As pastas listadas são onde o AutoCAD LT procura os arquivos do AutoLISP, entre outros tipos de arquivos personalizados usados para armazenar padrões de hachura, tipos de linha, aliases de comando e definir novos elementos da interface do usuário.


A pasta será adicionada na parte inferior da lista.


A pasta será adicionada na parte inferior da lista.

Além de marcar as pastas com os arquivos do AutoLISP como somente leitura e identificar essas pastas como confiáveis, o AutoCAD LT também oferece algumas configurações adicionais que ajudam a proteger o AutoCAD LT contra código malicioso e malware. Você pode acessar as configurações de segurança do AutoCAD LT fazendo o seguinte:

Ser capaz de carregar e gerenciar arquivos do AutoLISP que você encontra on-line ou que sua empresa já tem, é apenas o começo de se tornar mais produtivo com o AutoLISP no AutoCAD LT. Após começar a usar os programas AutoLISP dos arquivos do AutoLISP que você já tem nos fluxos de trabalho diários, poderá chegar o dia em que você deseja fazer uma alteração neles ou até mesmo gravar seus próprios programas básicos do AutoLISP.
Você pode estar pensando consigo mesmo, o AutoLISP é uma linguagem de programação e você não é um programador. Embora seja verdadeiro que o AutoLISP seja uma linguagem de programação, não é necessário ser um programador para aprender e escrever programas AutoLISP. O programa AutoLISP mais simples é uma única instrução que permite executar um comando ou alterar o valor de uma variável de sistema.
Uma instrução do AutoLISP começa com um parêntese de abertura e termina com um parêntese de fechamento. A seguir está um exemplo de uma instrução do AutoLISP que ativa o Modo ortogonal com a variável de sistema ORTHOMODE.
(setvar "orthomode" 1)
Semelhante aos nomes de comandos e de variáveis de sistema, as instruções do AutoLISP podem ser inseridas no prompt de comando do AutoCAD LT. Vamos tentar:
O botão da barra de status fica cinza quando desativado.

O botão Modo ortogonal na barra de status agora deve estar ativado e exibido em azul.

Parabéns por escrever sua primeira instrução do AutoLISP. Você agora é programador.
A instrução anterior do AutoLISP usa a função setvar para definir o valor de uma variável de sistema. Há também uma função que retorna o valor atual de uma variável de sistema chamada getvar. As funções setvar e getvar são apenas duas das centenas de funções que podem ser usadas para automatizar os fluxos de trabalho usando o AutoLISP. Embora existam centenas de funções que compõem a linguagem de programação do AutoLISP, você só precisa entender cinco funções principais para começar. Duas das quais você já aprendeu. As cinco funções são:
Agora que você conhece as cinco funções principais e usou a função setvar para definir uma variável de sistema, vamos examinar o uso da função comando. Antes de continuar, você deve saber que os nomes de comando podem ter o prefixo . (ponto) e _ (sublinhado) enquanto os nomes de opções de comando podem ter o prefixo _ (sublinhado). Esses caracteres são usados para assegurar que o comando fornecido seja executado como esperado.
Veja aqui uma explicação do significado desses caracteres:
Nos passos seguintes, desenhe um círculo e aplique zoom às extensões do desenho usando a função comando.
Um círculo é desenhado na camada atual com um raio de 5 unidades a 5,5.

O desenho será ampliado para as extensões do círculo se esse for o único objeto no desenho. Caso contrário, ele efetuará o zoom para as extensões de todos os objetos no desenho.

Agora que você viu algumas instruções do AutoLISP, vamos examinar mais detalhadamente as várias partes e sintaxe das instruções do AutoLISP de exemplo:
Embora a inserção de instruções do AutoLISP diretamente no prompt de comando seja uma ótima maneira de começar a aprender o AutoLISP, já que você recebe feedback em tempo real, não é muito eficiente redigitar repetidamente instruções no prompt de comando. Uma abordagem que permite reusar as instruções do AutoLISP é agrupá-las como um comando personalizado com a função defun.
Vamos tentar definir um comando personalizado chamado ZP que amplie a vista anterior do desenho para a função defun:
C:ZP é gerado para o comando.

A vista anterior é restaurada.

A vista anterior agora está restaurada.
Embora seja possível definir comandos personalizados com a função defun para tornar a reutilização de instruções do AutoLISP mais fácil, os comandos que você define somente estão disponíveis nos desenhos dos quais eles estão definidos e enquanto o desenho permanece aberto. Na próxima seção, você aprenderá a criar um arquivo do AutoLISP para armazenar os comandos personalizados do AutoLISP junto com outras instruções do AutoLISP que você pode desejar executar ao carregar o arquivo do AutoLISP.
Você pode saber mais sobre as cinco funções principais junto com as centenas de outras funções disponíveis no Guia de Referência do AutoLISP.
Agora que você sabe como inserir expressões do AutoLISP no prompt de comando, vamos ver como podemos criar um arquivo do AutoLISP e armazenar as expressões do AutoLISP e os comandos personalizados para torná-los disponíveis quando você precisar deles. Os arquivos do AutoLISP são arquivos de texto ASCII simples que podem ser criados com um editor de texto simples, como o Bloco de notas, e têm a extensão de arquivo .lsp. Não é recomendável usar um aplicativo de processador de texto como o Write ou o Word, pois ele pode introduzir caracteres especializados e formatação que causarão problemas quando chegar a hora de carregar o arquivo LSP.
Nos próximos exercícios, você aprenderá como criar um arquivo LSP, adicionar algumas instruções do AutoLISP ao arquivo LSP, carregar o arquivo LSP e, em seguida, tentar os comandos definidos no arquivo LSP. Além das cinco funções principais mencionadas anteriormente, você também conhecerá:
Agora, vamos criar nosso próprio arquivo e carregá-lo no AutoCAD LT:
; Zoom commands (defun c:ze () (command "._zoom" "_e")) (defun c:zp () (command "._zoom" "_p")) ; Creates the layer A-ANNO-REV, draws a rectangle and ; converts the rectangle to a revision cloud with arc lengths ; based on half the current value of the LTSCALE system variable (defun c:rv () (setq old-layer (getvar "clayer")) (command "._-layer" "_m" "A-ANNO-REVCLD" "_c" "1" "" "") (command "._rectang" PAUSE PAUSE) (command "._revcloud" "_a" (/ (getvar "ltscale") 2) "" "_o" "_l" "_n") (setvar "clayer" old-layer) ) ; Display a general message in the command line upon load (prompt "\nLoaded MyFirst.lsp") (princ)

Se os programas precisarem usar caracteres Unicode, selecione UTF-8.
Agora que você criou o arquivo, em vez de usar a caixa de diálogo Carregar/descarregar aplicativo que é exibida com o comando CARRAPLIC, você carregará o arquivo LSP usando o Explorador de arquivos.


Uma vez carregado, você deve ver a mensagem “Loaded MyFirst.lsp” no histórico da janela da linha de comando que foi exibido pela função de prompt.

Observe que a nuvem de revisão é vermelha e colocada na camada A-ANNO-REVCLD. Isso pode ser visto na lista suspensa Camada no painel Camadas da faixa de opções ou nas paletas Propriedades/Propriedades rápidas.

O desenho é ampliado para suas extensões.
A vista anterior do desenho é restaurada.
A caixa de diálogo Carregar/descarregar aplicativo pode ser usada para não somente carregar manualmente arquivos do AutoLISP conforme necessário, mas também pode carregar automaticamente arquivos do AutoLISP ao abrir ou criar um novo arquivo de desenho. A área Conjunto de inicialização da caixa de diálogo Carregar/descarregar aplicativo é usada para especificar quais arquivos do AutoLISP devem ser carregados automaticamente.
Estas são as etapas usadas para adicionar um arquivo do AutoLISP ao Conjunto de inicialização:
CARRAPLIC também pode ser inserido no prompt do comando.
Se você criou o arquivo myfirst.lsp na seção anterior, poderá selecioná-lo.
O arquivo do AutoLISP adicionado ao Conjunto de inicialização é automaticamente carregado no desenho atual.
Quando o AutoCAD LT é iniciado ou um desenho é criado/aberto, o AutoCAD LT procura quatro arquivos do AutoLISP com nomes específicos. Se os arquivos forem encontrados, eles serão automaticamente carregados. Esses arquivos ajudam a garantir que o ambiente do AutoCAD LT esteja configurado como esperado e que os comandos definidos pelo AutoLISP estejam disponíveis na criação ou abertura de um desenho.
O AutoCAD LT procura e carrega automaticamente esses quatro arquivos quando encontrados em seus caminhos de suporte:
acadlt.lsp e acadltdoc.lsp devem ser criados por você; eles não fazem parte da instalação padrão do AutoCAD LT. O acadlt2024.lsp e o acadltdoc2024.lsp estão incluídos no programa e não devem ser modificados.
É possível usar os arquivos acadlt.lsp e acadltdoc.lsp como qualquer outro arquivo LSP com a adição desses arquivos automaticamente carregados nos contextos mencionados anteriormente. É possível usar esses dois arquivos para carregar outros arquivos do AutoLISP usando a função de carregamento do AutoLISP, executar instruções do AutoLISP à medida que esses arquivos são carregados e definir definições de comando do AutoLISP para que estejam prontos para uso depois que um desenho tiver sido criado ou aberto. A função de carregamento do AutoLISP aceita dois parâmetros: o arquivo do AutoLISP a ser carregado, que é necessário, e um segundo parâmetro opcional, que é uma mensagem a ser exibida se o arquivo do AutoLISP que está sendo carregado não for encontrado em um dos caminhos de pesquisa do arquivo de suporte do AutoCAD LT. Consulte a seção Gerenciar e proteger arquivos do AutoLISP ao configurar caminhos de pesquisa de arquivos de suporte.
As etapas a seguir explicam como criar o arquivo acadltdoc.lsp na pasta C:\AutoLISP Files, adicionar algumas instruções do AutoLISP a ele, carregá-lo no AutoCAD LT e, em seguida, verificar se o arquivo foi carregado.
; AutoLISP to be executed in each drawing created or opened ; Set Object Snap and Ortho modes (setvar "osmode" 4133) (setvar "orthomode" 1) ; Load the LSP file created earlier under the ; "Store AutoLISP Statements in AutoLISP (LSP) Files" section (load "myfirst.lsp" "\nMyFirst.lsp file couldn't be found") ; Display a general message in the command line upon load (prompt "\nLoading my custom programs") (princ)

Na janela de linha de comando, você deve ver a mensagem “Carregando meus programas personalizados”, que é de uma das duas últimas linhas inseridas anteriormente na etapa 2.


Os botões da barra de status devem ser ativados novamente.

Um pacote de plug-in é uma estrutura de pastas com um arquivo de manifesto denominado PackageContents.xml que informa ao AutoCAD LT os arquivos e configurações que compõem o plug-in. Embora os pacotes de plug-in não sejam necessários para carregar programas do AutoLISP no AutoCAD LT, como você já aprendeu em todo este artigo, eles podem facilitar o gerenciamento de arquivos do AutoLISP e são uma maneira mais segura de implantar programas personalizados do que com o uso dos arquivos acadlt.lsp ou acadltdoc.lsp. Os pacotes de plug-in também podem ajudar a configurar o AutoCAD LT sem a necessidade da caixa de diálogo Opções na maioria dos casos.
Para obter informações sobre pacotes de plug-in, consulte o Exemplo: Estrutura de pasta .bundle básica para um plug-in.
A automação dos fluxos de trabalho pode ajudar a melhorar a produtividade e reduzir as tarefas repetitivas. Embora a programação do AutoLISP tenha uma curva de aprendizado, se você se limitar a aprender as cinco funções principais, poderá criar alguns pequenos programas que ajudam a perceber o quanto o AutoLISP pode ser valioso nos fluxos de trabalho diários.
Veja alguns comandos e variáveis de sistema usados com frequência relacionados ao AutoLISP.
| Comando | Descrição |
|---|---|
| CARREGAUTOAPLIC | Lista ou recarrega todos os plug-ins na pasta de plug-ins do aplicativo. |
| CARRAPLIC | Carrega e descarrega aplicativos e define quais aplicativos devem ser carregados na inicialização. |
| OPCOES | Personaliza as configurações do programa. |
| OPCAOSEGURANCA | Controla as restrições de segurança dos arquivos executáveis no produto. |
| DESFDEF | Permite que um comando definido por um aplicativo sobreponha um comando interno. |
| Variável de sistema | Descrição | Valor padrão | Salvo em |
|---|---|---|---|
| ACADLSPASDOC | Controla se o arquivo acad.lsp ou acadlt.lsp para o AutoCAD LT é carregado em cada desenho ou apenas no primeiro desenho aberto em uma sessão. | 0 | Registro |
| APPAUTOLOAD | Controla se os aplicativos de plug-in são carregados. | 14 | Registro |
| CLAYER | Define a camada atual. | 0 | Desenho |
| CLIPROMPTUPDATE | Determina se a linha de comando exibe as mensagens e os prompts gerados enquanto um arquivo de script ou AutoLISP está sendo executado. | 1 | Registro |
| CMDDIA | Controla a exibição do Editor de texto no local para os comandos EDITARCOTA e LINHACHAMR e a exibição de certas caixas de diálogo em produtos com base no AutoCAD. | 1 | Registro |
| CMDECHO | Controla se os prompts e as entradas são repetidos durante a função do comando AutoLISP. | 1 | Não salvo |
| FILEDIA | Suprime a exibição de caixas de diálogo de navegação de arquivo. | 1 | Registro |
| LEGACYCODESEARCH | Controla se a procura de arquivos executáveis inclui a pasta na qual o programa foi iniciado. | 0, pode ter sido bloqueado por um administrador de CAD | Registro |
| NOMUTT | Suprime a exibição de mensagens (mudo) quando não seria normalmente suprimida. | 0 | Não salvo |
| ORTHOMODE | Restringe o movimento do cursor na perpendicular. | 0 | Desenho |
| OSMODE | Define os snaps ao objeto em execução. | 4133 | Registro |
| SECURELOAD | Controla se o carregamento de arquivos executáveis é restringido somente em pastas confiáveis. | 1, pode ter sido bloqueado pelo administrador de CAD | Registro |
| TEXTEVAL | Controla como as sequências de texto inseridas com TEXTO (usando o AutoLISP) ou com o -TEXTO são avaliadas. | 0 | Não salvo |
| TRUSTEDPATHS | Especifica quais pastas têm permissão para carregar e executar arquivos que contêm código. | Varia, pode ter sido bloqueado por um administrador de CAD | Registro |