terça-feira, 16 de dezembro de 2014

Macro

No último exercício da disciplina de Sistemas de Representação Digital em Arquitectura fizemos uma Macro, que pretende optimizar e, por seguinte, acelerar o processo do desenho, havendo inúmeras possibilidades para o fazer.

Para isso, como já foi referido e ensinado anteriormente no presente blogue, editamos o nosso "código" no NotePad++, guardamos em ficheiro auto lisp (.lsp) e depois de fazermos o Load 
do ficheiro no AutoCAD com o APPLOAD, basta escrever o nome (ou parte) da função! 

Decidi que a minha macro iria facilitar todo o proceso de desenhar uma simples escada em Corte. Posto isto, pensei em várias formas de o fazer, isto é, quais as variáveis a ter em conta e definiu que a grande prioridade era ser simples, não dar erros e principalmente, ser versátil. Então, a macro que acabei por seguir consiste em dar, simplesmente, dois pontos (o ponto de arranque e o ponto de fecho das escadas) e o número de degraus a ter nas escadas. 

Isto permite fazer escadas em todas as escalas e com todos os cobertores e espelhos possíveis. Enfim, não tem qualquer obstrução e é muito fácil de usar! Assim, o processo de passar as ideias in mente ou mesmo do papel para o Model Space fica mais acelerado e mais simples!
Inclusive não dá erros de linhas fora do sitio como outras soluções de macros para escada poderiam dar. O que a macro não garante é a confortabilidade da escada mas que é facilmente prevista de antemão ou igualmente fácil, de se verificar após se ter usado a mesma.

Aqui está o tal "código" das ESCADAS:

(para usar, copiar para o NotePad ++; guardar em ficheiro auto lisp (.lsp); fazer o Load do ficheiro no AutoCAD com o APPLOAD, escrever "ESCADAS" na barra de comandos)


;Macro que permite desenhar EM CORTE umas escadas simples
;Macro realizada pelo aluno Luís Norton do Reis, da turma B do 2 ano
;Mestrado Integrado em Arquitetura - Faculdade de Arquitetura - FAUL
;Sistemas de Representacao Digital em Arquitetura - Professor Luis Romão

(defun c:escadas ()

;definir as variáveis e as perguntas a fazer (o utilizador escolhe)

(setq e1 (getpoint "Qual o ponto de arranque das escadas?"))
(setq e2 (getpoint "Qual o ponto final das escadas?"))
(setq e3 (getreal "Quantos degraus tem a escada?"))

;definir outras duas variáveis, o cobertor e o espelho das escadas, consequentes das escolhas do utilizador.

(setq p3 (list (car e1) (+ (cadr e1) (/ (- (cadr e2) (cadr e1)) e3))))
(setq p4 (list (+ (car e1) (/ (- (car e2) (car e1)) (- e3 1))) (cadr p3)))
(setq p5 (list (car e2) (- (cadr e2) (/ (- (cadr e2) (cadr e1)) e3))))

;definir os comandos do AutoCAD (polyline, copy e line)

(command "pline" e1 p3 p4 "")
(command "copy" e1 "" e1 "array" (fix (- e3 1)) p4 "")
(command "line" e2 p5 "")
)


Exemplos:











Sem comentários:

Enviar um comentário