Aprendizagem de 5 rotinas com variáveis. A saber:
Criação de um quadrado com ponto de origem, ou um ponto determinado:
(defun qua (lado)
(setq pt1 (getpoint "Qual é o ponto de inserção?"))
(setq pt2 (list (+ lado (car pt1))(cadr pt1)))
(setq pt3 (list (car pt2)(+ lado (cadr pt2))))
(setq pt4 (list (car pt1)(cadr pt3)))
(command "line" pt1 pt2 pt3 pt4 "c")
)
(setq pt1 (getpoint "Qual é o ponto de inserção?"))
(setq pt2 (list (+ lado (car pt1))(cadr pt1)))
(setq pt3 (list (car pt2)(+ lado (cadr pt2))))
(setq pt4 (list (car pt1)(cadr pt3)))
(command "line" pt1 pt2 pt3 pt4 "c")
)
Criação de um círculo com ponto de origem, ou um ponto determinado:
(setq pt1 (getpoint "Qual o centro do circulo "))
(command "circle" pt1 r)
)
Criação de um polígono com ponto de origem, ou um ponto determinado:
(defun pol (nl)
(setq pt1 (getpoint "Qual é o primeiro ponto do lado? "))
(setq pt2 (getpoint "Qual é o segundo ponto do lado? "))
(command "polygon" nl "e" pt1 pt2)
)
Criação de um triângulo com ponto de origem, ou um ponto determinado:
(defun tri (lado)
(setq pt1 (getpoint "\n Qual o ponto de inserção? "))
(setq pt2 (list (+ lado (car pt1)) (cadr pt1)))
(command "line" pt1 pt2 (strcat "@" (rtos lado) "<120") "c")
)
Criação de um rectângulo com ponto de origem, ou um ponto determinado:
(defun recr2 (lado)
(setq pt1 (getpoint "Qual é o ponto de inserção do rectangulo? "))
(setq pt2 (list (+ (car pt1) (* lado (sqrt 2))) (cadr pt1)))
(setq pt3 (list (car pt2) (+ (cadr pt2) lado)))
(setq pt4 (list (car pt1) (cadr pt3)))
(command "pline" pt1 pt2 pt3 pt4 "c")
)