Você está na página 1de 25

AutoLISP - IV

Ambiente de programação Visual Lisp

João Manuel R. S. Tavares


Joaquim Oliveira Fonseca
Ambiente de programação Visual Lisp

 O software Visual Lisp é um ambiente de programação


para a linguagem AutoLisp do AutoCAD.
 O ambiente de programação Visual Lisp é composto por:
– editor de texto (colorido ressaltando a sintaxe do AutoLisp)
– depurador (debuger) - verificador de código:
 mensagens de erro mais detalhadas associadas a expressões
erróneas;
 execução controlada;
 visualizador de variáveis (watch);
– gerenciador de projectos:
 aplicações compostas por mais de um arquivo .lsp.

2 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp


Acesso ao Visual Lisp Editor pelo
AutoCAD

1. Iniciar o AutoCAD;
2. Executar o Visual Lisp:
– pelo menu TOOL:
1. seleccionar submenu AutoLISP;
2. escolher Visual Lisp Editor.

3 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp


Interface do Visual Lisp Editor

Barra de menus

Barras de Janela de código


ferramentas

Janela Trace
Consola Lisp

4 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp


Transitar entre o Visual Lisp e o
AutoCAD

 Do AutoCAD para o Visual Lisp:


– Digitar _vlide na linha de comando.
 Do Visual Lisp para o AutoCAD:
– Utilizar o alt + tab do windows.
– Se ambas janelas estivarem visíveis clicar, na janela
desejada.
– Clicar no botão com o símbolo do AutoCAD no Visual
Lisp.

5 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp


Abrir um arquivo AutoLisp no Visual
Lisp

 Na janela do Visual Lisp:

– Clicar File Open... no menu Open ou clicar no ícone Open


File da barra de ferramentas standard;
– Seleccionar o arquivo .lsp desejado;
– Clicar no botão OK.

6 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp


Colorido do editor

 Visual Lisp Editor é “color coding”, por exemplo:


– azul: funções internas (car, setq ...);
– verde: números;
– magenta: strings;
– vermelho: parênteses;
– preto: símbolos (nome de funções e variáveis
definidas pelo utilizador);
– fundo cinza (background color): comentários.
 Ajuda a visualizar erros de digitação.

7 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp


Load de programas .lsp no Visual Lisp

 Carregar (executar um load) um programa .lsp dentro do


editor do Visual Lisp:

– Abrir o programa .lsp no Visual Lisp;


– Clicar no botão Load active edit window ;
– A janela console (horizontal inferior) mostrará quantas
formas (funções) foram interpretadas, por exemplo:
“;2 forms loaded from ....”

(A opção Load Selection, botão apenas carrega as linhas


seleccionadas – útil para determinar erros.)
8 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp
Executar funções

 No Visual Lisp digitar na janela console (nome-da-


função), por exemplo:
(c:inyn)
Obs: funções devem sempre ser chamadas entre parênteses,
mesmo se foram definidas como comando. Somente o
AutoCAD as interpreta como comando.
 No AutoCAD na linha de comando digitar o nome da
função, por exemplo:
command: inyn
Obs: o AutoCAD só consegue executar funções loaded pelo
Visual Lisp se foram definidas como comando.

9 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp


Sair do Visual Lisp Editor

 Para concluir uma sessão de trabalho no Visual


Lisp Editor escolher no menu File a opção Exit.
 Se o arquivo .lsp no editor de texto tiver sido
alterado sem ter sido gravado, o Visual Lisp
Editor irá perguntar se deseja gravar o conteúdo
do editor. Neste caso, deve-se responder SIM
ou NÃO.

10 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp


Debugging - corrigindo programas

 Erros de programação podem ser de digitação, de


sintaxe e/ou lógicos.
 O Visual Lisp oferece os seguintes recursos para
detectar e corrigir estes erros:
– execução controlada;
– acompanhamento visual de variáveis;
– verificação da pilha de execução;
– mensagem de erro detalhada associada a uma expressão
errónea;
– editor colorido enfatizando a sintaxe da linguagem;
– formatador de texto.

11 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp


Executar um programa no modo debug

 Um programa em Autolisp é executado no modo debug por


expressões entre parênteses (parenthentical expressions).
Obs: um programa em Pascal é executado no modo debug por
linha de programação (isto é, por comando).
 Funcionalidades de debugging são controladas de vários lugares
do Visual Lisp:
– do editor;
– da console;
– dos menus.
 Para utilizar estas funcionalidades:
1. Abrir o programa a ser “depurado” no Visual Lisp.
2. Carregar o programa.
3. Colocar um ou mais breakpoints no código do programa.

12 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp


Colocar breakpoints

 Breakpoints são pontos de pausa de execução inseridos


num programa para possibilitar a sua verificação
(debugging).
 Como inserir breakpoints:
1. Ir para o editor do Visual Lisp.
2. Posicionar o cursor em frente ao parêntese de abertura da
expressão desejada.
3. Seleccionar:
 no menu Debug a opção Toggle Breakpoint ou
 na barra de ferramentas Debug o botão Set Breakpoint .

13 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp


Executar um programa até um
breakpoint

1. Ir para a janela console do Visual Lisp;


2. Digitar o nome da função a ser executada seguida de
um ENTER;
3. Se necessário, responder aos prompts do programa no
AutoCAD;
4. Quando o programa alcançar o breakpoint a execução
fará uma pausa. Nesse momento pode-se:
– pedir para visualizar variáveis;
– executar o programa passo a passo;
– continuar a execução até outro breakpoint, etc.

14 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp


Executar o programa passo a passo

 Estando a execução do programa em pausa num


determinado breakpoint:
– Para executar uma expressão seleccionar Step Over na
barra de ferramentas Debug;
– Para entrar numa expressão seleccionar Step Into na barra
de ferramentas Debug.
 Observar o ícone Status Button da barra de ferramentas
Debug que mostra onde o programa está parado, isto é:
– antes de uma expressão I( ) ou
– depois de uma expressão ( )I.

15 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp


Visualizar o valor de variáveis

 Estando a execução do programa em pausa num


determinado breakpoint:
– Seleccionar no menu Debug a opção Watch Last para
visualizar o valor da última variável actualizada
– Seleccionar com um clique duplo no editor a variável que
deseja visualizar e escolher o ícone óculos (Add Watch) na
janela Watch.
 Para retomar a execução de um programa até o final do
arquivo ou até outro breakpoint:
– Seleccionar o botão Continue do barra de ferramentas
Debug.

16 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp


Fechar janelas no Visual Lisp Editor

 É possível fechar quase todas janelas no Visual


Lisp, basta dar um clique no ícone
correspondente (canto superior esquerdo) no
cabeçalho da janela.
 As únicas excepções são a janela console e a
janela trace. Essas janelas nunca fecham.

17 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp


Verificar o balanceamento de
parênteses

1. Seleccionar no menu Tools, Format code in ... (botão ).


2. O Visual Lisp irá formatar o código.
3. Se um casamento erróneo de parênteses for encontrado, a
mensagem “UNBALANCE OPENING BRACKET FOUND.
ADD CLOSING BRACKET? YES/NO” será mostrada. Se for
respondida com YES, um parêntese é adicionado no final do
arquivo. Com certeza este não é o lugar correcto do parêntese
que está em falta. Portanto, torna-se necessário percorrer o
código no editor na procura do lugar correcto. Com o código
formatado essa tarefa é facilitada.
4. Colocar o parêntese no lugar correcto e apagar o parêntese
acrescentado automaticamente no final do arquivo.
5. Mais uma vez seleccionar no menu Tools, Format code in ... .
(Com o botão apenas são formatadas as linhas seleccionadas – útil para
determinar erros.)
18 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp
Mecanismos de verificação de
parênteses

 O menu Edit oferece os seguintes mecanismos para a


verificação de parênteses:
– Match Forward: procura o ) correspondente a um abre
parêntese;
– Match Backward: procura ( correspondente a um fecha
parêntese;
– Select Forward: marca a expressão do parêntese de
abertura até o correspondente de fecho;
– Select Backward: marca a expressão do parêntese de
fecho até o correspondente de abertura.

19 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp


Verificar a sintaxe de um programa

1. Ir para o janela de edição do Visual Lisp.


2. Seleccionar no menu Tools a opção Check .... (botão ).
3. Se aparecer uma mensagem erro na janela console é
porque existe erro de sintaxe.
4. Dar clique-duplo sobre a mensagem de erro para a
expressão errónea no programa ser marcada.
5. A mensagem de erro dará uma indicação do tipo de erro
que existe.
(Com o botão apenas são verificadas as linhas seleccionadas – útil
para determinar erros.)
20 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp
Utilizar o código colorido para
encontrar erros de sintaxe

 Como já referido o código em Autolisp no editor do Visual Lisp é


colorido. As cores têm significado, por exemplo:
– azul = funções internas (car, setq ...);
– preto = símbolos (nome de funções e variáveis definidas pelo
utilizador);
– ...
 É comum digitar errado o nome de uma função interna (por
exemplo iff para if ou iniget para initget ...). Como toda a lista de
programa inicia com uma subrotina ou função deve-se observar a
cor do átomo no início de cada lista. Com certeza na sua maioria
será de cor azul.
 Portanto, deve-se prestar atenção em listas que iniciam com um
átomo preto. Verificar se existe um erro de digitação ou se é o
nome de uma função definida no programa.

21 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp


Erros de execução

 Existem erros que só aparecem durante a


execução. Por exemplo:
1. Fazer o Load de um programa;
2. Executar o programa;
3. Responder no AutoCAD as mensagens
necessárias;
4. Uma mensagem de erro aparece, por exemplo:
“;***ERROR: bad argument type for compare:
36.0555 (155.0 155.0 0)”

22 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp


Inspeccionar a pilha de execução de
um programa

 Quando um erro de execução ocorrer:


1. Seleccionar no menu View a opção Error Trace;
2. Uma janela com o histórico dos cálculos executados
surgirá, mostrando no topo a função onde ocorreu o erro e
abaixo as chamadas anteriores, até a chamada da função
principal.
3. Para ir ao local do erro via pilha de execução:
1. Seleccionar a linha na pilha contendo a expressão com o
erro;
2. Clicar no botão da direita do rato e seleccionar a opção
Source Position;
3. Fazer uma análise, com recursos vistos anteriormente (por
exemplo visualizando o valor de variáveis), da causa do erro
indicado.

23 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp


Gravar um programa

 Uma vez editado e depurado um programa,


este deve ser gravado:

1. Ir para o editor do Visual Lisp;


2. Seleccionar no menu File a opção Save As;
3. Seleccionar o nome do programa e o
subdirectório onde o programa será gravado.

24 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp


Sistema de ajuda do Visual Lisp

 O Visual Lisp tem um sistema de ajuda completo e bastante


útil.

25 2009@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programação Visual Lisp

Você também pode gostar