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




terça-feira, 25 de outubro de 2016

Criação de um Icosaedro

Aula de 25-10-2016

Criação: Icosaedro
Programa utilizado: Autocad

Explicação por passos:
Passo 1- Comando Polygon (enter) e escrever "5" (enter) e "e" (enter)
Passo 2- Escrever "0,0" (enter) "1,0" (enter)
Passo 3- Comando Zoom Extande
Passo 4- Comando -VPoint (enter) e escrever "1,-1,1"
Passo 5- Comando Polygon (enter), escrever "3" (enter) e escrever "e" (enter)
Passo 6- Seleccionar os dois vértices e fazer o triângulo
Passo 7- Repetir para fazer o segundo triângulo
Passo 8- Comando Ucs (enter) e escrever "3p"
Passo 9- Seleccionar o ponto do centro, seleccionar o ponto final e escrver o terceiro "@0,0,100"
Passo 10- Comando Circle (enter) e escolher os dois pontos (enter)
Passo 11- Comando Ucs (enter x2) para repor o Ucs principal
Passo 12- Comando Ucs (enter) e escrever "3p"
Passo 13- Seleccionar os dois pontos e escrever "@0,0,100" para o terceiro
Passo 14- Comando Circle (enter) e seleccionar os dois pontos (enter)
Passo 15- Comando Ucs (enter x2) para repor o Ucs principal
Passo 16- Comando Region (enter) e seleccionar a face pretendida
Passo 17- Comando Shademode e escolher "x-ray"
Passo 18- Comando Align (enter) e seleccionar a face (enter)
Passo 19- Seleccionar duas vezes os dois pontos da base, seleccionar o terceiro ponto na base e o terceiro ponto na intersecção dos círculos
Passo 20- Comando Erase (enter) escrever "all" (enter) e "r" (enter) para seleccionar o que não é para se apagar
Passo 21- Comando ArrayClassic (enter) para abrir tabela
Passo 22- Seleccionar "Polar array" e clicar no botão para seleccionar a face pretendida (enter)
Passo 23- Clicar no botão para seleccionar o vértice (enter x2)
Passo 24- Comando 3DOrbit (enter) para movimentar
Passo 25- Comando Erase (enter) seleccionar a face (enter)
Passo 26- Comando Ucs (enter) escrever "3p" e escolher os vértices
Passo 27- Comando ArrayClassic (enter) e escolher "Polar ray" e seleccionar face
Passo 28- Clicar no botão para seleccionar vértice (enter x2)
Passo 29- Repetir os passos 26, 27 e 28 até fechar o o Icosaedro

Imagem 1
Pentágono inicial

Imagem 2
Pentágono inicial em perspectiva

Imagem 3
Criação do primeiro triângulo

Imagem 4
Criação do segundo triângulo

Imagem 5
Alteração do Ucs

Imagem 6
Criação do primeiro círculo

Imagem 7
Alteração do Ucs

Imagem 8
Criação do segundo círculo

Imagem 9
Em Shademode

Imagem 10
Levantar da primeira face

Imagem 11
Apagar o que não é necessário

Imagem 12
Tabela de ArrayClassic

Imagem 13
Todas as faces elevadas

Imagem 14
Apagar uma face

Imagem 15
Acrescento de faces

Imagem 16
Tabela Array

Imagem 17
Acrescento de Faces

Imagem 18
Shademode desligado com acrescento de Faces

Imagem 19
Shademode ligado

Imagem 20
Acrescento de Faces

Imagem 21
Shademode desligado, acrescento de Faces

Imagem 22
Acrescento de Faces

Imagem 23
Icosaedro terminado