Professional Documents
Culture Documents
O software Visual Lisp um ambiente de programao para a linguagem AutoLisp do AutoCAD. O ambiente de programao Visual Lisp composto por:
editor de texto (colorido ressaltando a sintaxe do AutoLisp) depurador (debuger) - verificador de cdigo:
mensagens de erro mais detalhadas associadas a expresses errneas; execuo controlada; visualizador de variveis (watch); aplicaes compostas por mais de um arquivo .lsp.
gerenciador de projetos:
2011@JST/JOF
2011@JST/JOF
2011@JST/JOF
Digitar _vlide na linha de comando. Utilizar o alt + tab do windows. Se ambas janelas estivarem visveis, clicar na janela desejada. Clicar no boto com o smbolo do AutoCAD no Visual Lisp.
2011@JST/JOF
Clicar File Open... no menu Open ou clicar no cone Open File da barra de ferramentas standard; Selecionar o arquivo .lsp desejado; Clicar no boto OK.
2011@JST/JOF
Colorido do editor
azul: funes internas (car, setq ...); verde: nmeros; magenta: strings; vermelho: parnteses; preto: smbolos (nome de funes e variveis definidas pelo utilizador); fundo cinza (background color): comentrios.
2011@JST/JOF
Abrir o programa .lsp no Visual Lisp; Clicar no boto Load active edit window ; A janela console (horizontal inferior) mostrar quantas formas (funes) foram carregadas, por exemplo: ;2 forms loaded from ....
(A opo Load Selection, boto apenas carrega as linhas selecionadas til para determinar erros.)
2011@JST/JOF
Executar funes
No AutoCAD na linha de comando digitar o nome da funo, por exemplo: command: inyn
Obs: o AutoCAD s consegue executar funes loaded pelo Visual Lisp se foram definidas como comando.
2011@JST/JOF
Para concluir uma sesso de trabalho no Visual Lisp Editor escolher no menu File a opo 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 contedo do editor. Neste caso, deve-se responder SIM ou NO.
10
2011@JST/JOF
Erros de programao podem ser de digitao, de sintaxe e/ou lgicos. O Visual Lisp oferece os seguintes recursos para detetar e corrigir estes erros:
execuo controlada; acompanhamento visual de variveis; verificao da pilha de execuo; mensagem de erro detalhada associada a uma expresso errnea; editor colorido enfatizando a sintaxe da linguagem; formatador de texto.
CFAC: AutoLISP (IV) - Ambiente de programao Visual Lisp
11
2011@JST/JOF
Um programa em Autolisp executado no modo debug por expresses entre parnteses (parenthentical expressions). Obs: um programa em Pascal executado no modo debug por linha de programao (isto , por comando). Funcionalidades de debugging so controladas de vrios lugares do Visual Lisp:
do editor; da console; dos menus. Abrir o programa a ser depurado no Visual Lisp. Carregar o programa. Colocar um ou mais breakpoints no cdigo do programa.
12
2011@JST/JOF
Colocar breakpoints
Breakpoints so pontos de pausa de execuo inseridos num programa para possibilitar a sua verificao (debugging). Como inserir breakpoints:
1. 2.
3.
Ir para o editor do Visual Lisp. Posicionar o cursor em frente ao parntese de abertura da expresso desejada. Selecionar:
no menu Debug a opo Toggle Breakpoint ou na barra de ferramentas Debug o boto Set Breakpoint
13
2011@JST/JOF
Ir para a janela console do Visual Lisp; Digitar o nome da funo a ser executada seguida de um ENTER; Se necessrio, responder aos prompts do programa no AutoCAD; Quando o programa alcanar o breakpoint a execuo far uma pausa. Nesse momento pode-se:
pedir para visualizar variveis; executar o programa passo a passo; continuar a execuo at outro breakpoint, etc.
14
2011@JST/JOF
Para executar uma expresso selecionar Step Over na barra de ferramentas Debug; Para entrar numa expresso selecionar 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 :
15
2011@JST/JOF
Selecionar no menu Debug a opo Watch Last para visualizar o valor da ltima varivel atualizada Selecionar com um clique duplo no editor a varivel que deseja visualizar e escolher o cone culos (Add Watch) na janela Watch.
16
2011@JST/JOF
possvel fechar quase todas janelas no Visual Lisp, basta dar um clique no cone correspondente (canto superior esquerdo) no cabealho da janela. As nicas excees so a janela console e a janela trace. Essas janelas nunca fecham.
17
2011@JST/JOF
4. 5.
Selecionar no menu Tools, Format code in ... (boto ). O Visual Lisp ir formatar o cdigo. Se um casamento errneo de parnteses for encontrado, a mensagem UNBALANCE OPENING BRACKET FOUND. ADD CLOSING BRACKET? YES/NO ser mostrada. Se for respondida com YES, um parntese adicionado no final do arquivo. Com certeza este no o lugar correto do parntese que est em falta. Portanto, torna-se necessrio percorrer o cdigo no editor na procura do lugar correto. Com o cdigo formatado essa tarefa facilitada. Colocar o parntese no lugar correto e apagar o parntese acrescentado automaticamente no final do arquivo. Mais uma vez selecionar no menu Tools, Format code in ... .
18
(Com o boto apenas so formatadas as linhas selecionadas til para determinar erros.)
2011@JST/JOF CFAC: AutoLISP (IV) - Ambiente de programao Visual Lisp
Match Forward: procura o ) correspondente a um abre parntese; Match Backward: procura ( correspondente a um fecha parntese; Select Forward: marca a expresso do parntese de abertura at o correspondente de fecho; Select Backward: marca a expresso do parntese de fecho at o correspondente de abertura.
19
2011@JST/JOF
4.
5.
Ir para o janela de edio do Visual Lisp. Selecionar no menu Tools a opo Check .... (boto ). Se aparecer uma mensagem erro na janela console porque existe erro de sintaxe. Dar clique-duplo sobre a mensagem de erro para a expresso errnea no programa ser marcada. A mensagem de erro dar uma indicao do tipo de erro que existe.
(Com o boto apenas so verificadas as linhas selecionadas til para determinar erros.)
20
2011@JST/JOF
Como j referido o cdigo em Autolisp no editor do Visual Lisp colorido. As cores tm significado, por exemplo:
azul = funes internas (car, setq ...); preto = smbolos (nome de funes e variveis definidas pelo utilizador); ...
comum digitar errado o nome de uma funo interna (por exemplo iff para if ou iniget para initget ...). Como toda a lista de programa inicia com uma subrotina ou funo deve-se observar a cor do tomo no incio de cada lista. Com certeza na sua maioria ser de cor azul. Portanto, deve-se prestar ateno em listas que iniciam com um tomo preto. Verificar se existe um erro de digitao ou se o nome de uma funo definida no programa.
CFAC: AutoLISP (IV) - Ambiente de programao Visual Lisp
21
2011@JST/JOF
Erros de execuo
Fazer o Load de um programa; Executar o programa; Responder no AutoCAD as mensagens necessrias; Uma mensagem de erro aparece, por exemplo: ;***ERROR: bad argument type for compare: 36.0555 (155.0 155.0 0)
CFAC: AutoLISP (IV) - Ambiente de programao Visual Lisp
22
2011@JST/JOF
3.
Selecionar no menu View a opo Error Trace; Uma janela com o histrico dos clculos executados surgir, mostrando no topo a funo onde ocorreu o erro e abaixo as chamadas anteriores, at a chamada da funo principal. Para ir ao local do erro via pilha de execuo:
1. 2. 3.
Selecionar a linha na pilha contendo a expresso com o erro; Clicar no boto da direita do rato e selecionar a opo Source Position; Fazer uma anlise, com recursos vistos anteriormente (por exemplo visualizando o valor de variveis), da causa do erro indicado.
23
2011@JST/JOF
Gravar um programa
Ir para o editor do Visual Lisp; Selecionar no menu File a opo Save As; Selecionar o nome do programa e o subdiretrio onde o programa ser gravado.
24
2011@JST/JOF
25
2011@JST/JOF