You are on page 1of 3

(defun pasa () (setq (setq (setq (setq (setq (setq (setq ) (defun division () (setq (setq (setq (setq

(setq (setq (setq (setq (setq (setq (setq ) paso (* 1.025 pi mod)) (terpri) t1 mod) (terpri) t2 (* mod 1.17)) (terpri) radio (* (/ z 2) mod)) (terpri) arg (/ (- radio t2) (+ radio mod))) alfamaxr (atan (/ (sqrt (- 1 (* arg arg))) arg))) alfamaxg (* 180 (/ alfamaxr pi))) alfang (/ alfamaxg 50)) alfanr (/ alfamaxr 50)) b2 (- (/ paso 4) (* x t2))) (terpri) b1 (+ (/ paso 4) (* x t1))) (terpri) mod zz z a p0 xr x (getreal "modulo: ")) (terpri) (getint "numero de dientes: ")) (terpri) (float zz)) (getreal "angulo de presion: ")) (terpri) (getpoint "centro de insercion: ")) (terpri) (* pi (/ a 180))) (/ (sin xr) (cos xr)))

(defun perfil () (setq x1 (- (car p0) b1)) (setq x2 (- (car p0) b2)) (setq x3 (+ (car p0) b2)) (setq x4 (+ (car p0) b1)) (setq y1 (+ radio (cadr p0) t1)) (setq y2 (- (+ radio (cadr p0)) t2)) (setq y3 y2) (setq y4 y1) (setq p1 (list x1 y1)) (setq p2 (list x2 y2)) (setq p3 (list x3 y3)) (setq p4 (list x4 y4)) (setq p5 (list (car p0) y3)) (setq rex (+ radio mod)) (setq rin (- radio mod)) (Command "color" 1) ;(command "circle" p0 radio) (command "circle" p0 rex) ;(command "circle" p0 rin) (Command "pline" p1 p2 p3 p4 "" ) (setq ppp1 (list (- (car p5) (* 2 mod)) (setq ppp2 (list (+ (car p5) (* 5 mod)) (command "osnap" "none") (command "zoom" "w" ppp1 ppp2) ) (defun rotar ( / p01 p02 p03 p04) (setq pe (list (car p0) (+ rex (cadr p0)))) (setq co 2) (setq alfag (/ alfang 2)) (setq alfar (/ alfanr 2)) (command "color" 7) (repeat 25 (setq desph1 (* alfar rex)) (setq desph2 (* alfar rin))

(- (cadr p5) (* 1.0 mod)))) (+ (cadr p5) (* 5.5 mod))))

(setq despv1 (- rex (* rex (cos alfar)))) (setq despv2 (- rin (* rin (cos alfar)))) (setq p01 (list (+ (car p1) desph1) (+ (cadr (setq p02 (list (+ (car p2) desph2) (+ (cadr (setq p03 (list (+ (car p3) desph2) (+ (cadr (setq p04 (list (+ (car p4) desph1) (+ (cadr (command "color" 2) (command "line" p02 p03"") (command "rotate" "last" "" p0 alfag) (command "line" p01 p02 "") (Command "rotate" "last" "" p0 alfag) (setq ent1 (entget (entlast))) (command "line" p03 p04 "") (Command "rotate" "last" "" p0 alfag) (setq ent2 (entget (entlast))) (setq e21 (list (cadr (assoc 10 ent1)) (caddr (setq e22 (list (cadr (assoc 11 ent1)) (caddr (setq e23 (list (cadr (assoc 10 ent2)) (caddr (setq e24 (list (cadr (assoc 11 ent2)) (caddr (command "trim" pe "" e21 e24 "") (if (equal co 2) (setq e11 p1 e12 p2 i1 p2) (terpri) ) (setq i1 i2 e11 e21 e12 e22) (setq alfag (+ alfag alfang)) (setq alfar (+ alfar alfanr)) (setq co (+ co 1))

p1) p2) p3) p4)

despv1))) despv2))) despv2))) despv1)))

(assoc (assoc (assoc (assoc

10 11 10 11

ent1)))) ent1)))) ent2)))) ent2))))

; ; ; ; ; ; ; ; ; ;

) (setq es1 (list (- (car p0) radio) (+ rex radio (cadr p0)))) (setq es2 (list (+ (car p0) radio) (cadr p0))) (command "mirror" "w" es1 es2 "" p0 pe "N") (command "zoom" "a") (setq angulo (/ 360 z)) (setq numer (* angulo 2)) (setq angulo1 (* angulo -1)) (command "array" "w" es1 es2 "" "p" p0 zz 360 "y") (command "rotate" "w" es1 es2 "" p0 angulo1) (setq modd (itoa mod)) (setq zzz (itoa z)) (setq moddd (strcat "MOD= " modd)) (setq setal (strcat "Z = " zzz)) (setq pppp1 (list (car p0) (+ (cadr p0) (* radio 0.75)))) (setq pppp2 (list (car p0) (- (cadr pppp1) 3))) (command "text" pppp1 1 0 moddd) (setq pppp0 (list (car p0) (- (cadr p0) 3))) (command "text" pppp2 1 0 setal) (command "bhatch" p0 "y" "") (terpri) (setq ang45 (* 3.14 0.25)) (setq ang135 (* 3.14 0.75)) (setq ang225 (* 3.14 1.25)) (setq ang315 (* 3.14 1.75)) (setq longit (* radio 2)) (setq p40 (list (- (car p0) (* 2 mod)) (+ (* 2 mod) radio (cadr p0)))) (setq p41 (list (+ (car p0) (* 2 mod)) (+ (* 2 mod) radio (cadr p0)))) (setq p31 (polar p0 ang225 longit)) (setq p32 (polar p0 ang315 longit)) (command "pause") (command "erase" "w" p40 p32 "") (command "erase" "w" p41 p31 "")

(command "circle" p0 radio) (setq pe1 (list (- (car p0) (* 0.2 mod)) (+ (* 0.2 mod) rex (cadr p0)))) (setq pe2 (list (+ (car p0) (* 0.2 mod)) (+ (* (- 0.8 1) mod) rex (cadr p0)))) (command "erase" "c" pe1 pe2 "") ) (defun c:genera (/ mod z n alfang en alfanr alfar alfag xr a x p1 p2 p3 p4 p0 pa so t1 t2 radio arco desph despv b1 b2 angmax) (pasa) (division) (perfil) (rotar) )

You might also like