quinta-feira, 10 de novembro de 2016

Introdução à utilização da linguagem de Programação Autolisp: Coordenadas

Aula de 8-11-2016

Criação: Coordenadas
Programas utilizados: Autocad (A) e Notepad++ (N)

Explicação por passos:
Passo 1A- Comando Circle (enter)
Passo 2A- Escrever o ponto do centro "0,0" (enter)  e o ponto exterior "1,0" (enter)
Passo 3A- Comando Zoom Extand (enter)
Passo 4A- Comando Regen (enter) para corrigir a curva do círculo
Passo 5A- Comando Pline (enter)
Passo 6A- Escrever o ponto "0,0" (enter)
Passo 7A- Escrever "w" (enter), o ponto de espessura "0.1" (enter) e novamente o ponto de espessura "0.1"
Passo 8A- Escrever ainda o ponto "1,0" (enter)

Nota: É possível criar novos comandos para o Autocad utilizando o Notepad++, depois intala-se o comando no programa (deve ser verificar-se se o nome do comando pretendido já existe no Autocad)

Passo 9N- Para criar um novo comando para o Autocad, iniciar com "(defun c:snorte) (/pt1 pt2)" na primeira linha
Passo 10N- Escrever "(command "cirlce" pt1 pt2) na segunda linha
Passo 11N- Ir guardando o ficheiro Notepad++ em formato Lisp Processing Language File
Passo 12N- Escrever "(command "pline" pt1 "w" (* 0.1 (distance pt1 pt2))" na terceira linha
Passo 13N- Escrever "(* 0.1 (distance pt1 pt2)) pt2" na quarta linha
Passo 14N- Na quinta linha escrever o fecha parêntesis inicial ")"
Passo 15N- Adicionar duas linhas entre a primeira e a segunda (o que estava escrito na segunda linha passa para a quarta e adiante)
Passo 16N- Escrever "(setq pt1 (getpoint "qual o centro do símbolo?"))" na segunda linha
Passo 17N- Escrever "(setq pt2 (getpoint "qual a direcao norte?"))" na terceira linha
Passo 18N- Voltar a guardar o ficheiro
Passo 19A- Comando AppLoad (enter) para abrir tabela
Passo 20A- Seleccionar o ficheiro e clicar no botão "Load", em seguida no botão "Close"
Passo 21A- Escrever o comando SNorte na barra de comandos para o testar (neste caso deu erro)
Passo 22N- Corrigir, acrescentando um espaço, em "(/pt1 pt2)" passando a ser "(/ pt1 pt2)" na primeira linha
Passo 23N- Voltar a guardar o ficheiro
Passo 24A- Voltar a instalar com a tabela do comando AppLoad
Passo 25A- Voltar a escrever SNorte para o testar (neste caso já funcionou)
Passo 26A- Criar vários aleatoriamente, mas ao invés de escrever os pontos, clicar no espaço onde for pretendido
Passo 27A- Comando OS para abrir tabela dos snaps, para poder controlar o que está ou não ligado
Passo 28N- Adicionar duas linhas ente a primeira e a segunda (o que estava escrito na segunda linha passa para a quarta e adiante)
Passo 29N- Escrever "(setq pontos (getvar "osmode"))" na segunda linha
Passo 30N- Escrever "(setvar "osmode" 0)" na terceira linha
Passo 31N- Escrever "(setvar "osmode" pontos)" na nona linha
Passo 32N- Volta a guardar o ficheiro
Passo 33N- Voltar a instalar com a tabela do comando AppLoad
Passo 34N- Voltar a escrever SNorte para o testar com a actualização
Passo 35N- Adicionar três linhas entre a oitava e a nona (o que estava na nona linha passa para a décima segunda e adiante)
Passo 36N- Escrever "(command "line" pt3 pt4 "")" na nona linha
Passo 37N- Escrever "(command "copy" "l" "" pt1 pt1 "")" na décima linha
Passo 38N- Escrever "(command "rotate" "l" "" pt1 90)" na décima primeira linha
Passo 39N- Adicionar duas linhas entre a quinta e a sexta (o que estava na sexta linha para para a oitava e adiante)
Passo 40N- Escrever "setq pt3 (polar pt1 (+ (/pi 2) (angle pt1 pt2)) (* 1.2 (distance pt1 pt2)))" na sexta linha
Passo 41N- Escrever "setq pt4 (angle pt3 pt1 (* 1.2 (distance pt1 pt2)))))" na sétima linha
Passo 42N- Volta a guardar o ficheiro
Passo 43A- Voltar a instalar com a tabela do comando AppLoad
Passo 44A- Voltar a escrever SNorte para o testar com a actualização

Nota: Se o comando der erro, algo está errado na escrita no Notepad++;
"defun" significa Definição de Função;
"c:snorte" refere-se a Comando:nome;
"(/pt1 pt2)" indica os pontos com que iremos trabalhar (mais tarde foram incluídos os pt3 e pt4);
Para guardar um ficheiro em formato Lisp Processing Language File, uma vez que o iremos aplicar mais tarde no programa Autocad, não incluir caracteres especiais ou espaços no nome do mesmo (ex: trabalhodemodelacao);
A utilização de duas aspas seguidas ("") refere-se à opção Enter;
Sempre que, ao escrever um comando, forem abertos parêntesis, no final terão de ser fechados;
Os espacejamentos entre parêntesis ou no espaço da linha, não interferem nem criam potenciais erros, apenas os espacejamentos, ou falta deles, entre comandos
"setq" refere-se a referir um determinado valor;
"getpoint" refere-se a que ponto queremos, e este segue-se de uma pergunta

Imagem 1
Círculo inicial

Imagem 2
Rectângulo indicador

Imagem 3
Novo ficheiro Notepad++

Imagem 4
Criação do comando SNorte

Imagem 5
Criação do comando SNorte

Imagem 6
Guardar o ficheiro em formato Lisp

Imagem 7
Criação do comando SNorte

Imagem 8
Criação do comando SNorte

Imagem 9
Criação do comando SNorte

Imagem 10
Criação do comando SNorte

Imagem 11
Criação do comando SNorte

Imagem 12
Criação do comando SNorte

Imagem 13
Criação do comando SNorte

Imagem 14
Comando AppLoad para incorporar o novo comando

Imagem 15
Deu erro

Imagem 16
Correcção do erro


Imagem 17
Voltar a instalar e testar

Imagem 18
Vários testes

Imagem 19
Comando OS, tabela dos Snaps

Imagem 20
Continuação da criação do comando SNorte

Imagem 21
Continuação da criação do comando SNorte

Imagem 22
Continuação da criação do comando SNorte

Imagem 23
Comando AppLoad para voltar a incorporar o comando

Imagem 24
Teste

Imagem 25
Continuação da criação do comando SNorte

Imagem 26
Continuação da criação do comando SNorte

Imagem 27
Continuação da criação do comando SNorte

Imagem 28
Continuação da criação do comando SNorte

Imagem 29
Continuação da criação do comando SNorte

Imagem 30
Continuação da criação do comando SNorte

Imagem 31
Comando AppLoad para voltar a incorporar o comando




Sem comentários:

Enviar um comentário