Aller au contenu

LISP 3D


kohen.g

Messages recommandés

Bonjour,

J'aimerais savoir si quelqu'un pourrait rajouter les fer UPN Cornière et autres sur le lisp suivant

 

(defun c:IPN ( / IPE_data IPEA_data HEA_data HEB_data HEM_data PA_data

sv_mnu typ_ipn l_data l_str model_ipn l_val pt_ins h b a e r

po p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 p16)

(setq

IPE_data

'(

(80 . (80 46.0 3.8 5.2 5))

(100 . (100 55.0 4.1 5.7 7))

(120 . (120 64.0 4.4 6.3 7))

(140 . (140 73.0 4.7 6.9 7))

(160 . (160 82.0 5.0 7.4 9))

(180 . (180 91.0 5.3 8.0 9))

(200 . (200 100.0 5.6 8.5 12))

(220 . (220 110.0 5.9 9.2 12))

(240 . (240 120.0 6.2 9.8 15))

(270 . (270 135.0 6.6 10.2 15))

(300 . (300 150.0 7.1 10.7 15))

(330 . (330 160.0 7.5 11.5 18))

(360 . (360 170.0 8.0 12.7 18))

(400 . (400 180.0 8.6 13.5 21))

(450 . (450 190.0 9.4 14.6 21))

(500 . (500 200.0 10.2 16.0 21))

(550 . (550 210.0 11.1 17.2 24))

(600 . (600 220.0 12.0 19.0 24))

)

IPEA_data

'(

(80 . (78.0 46 3.3 4.2 5))

(100 . (98.0 55 3.6 4.7 7))

(120 . (117.6 64 3.8 5.1 7))

(140 . (137.4 73 3.8 5.6 7))

(160 . (157.0 82 4.0 5.9 9))

(180 . (177.0 91 4.3 6.5 9))

(200 . (197.0 100 4.5 7.0 12))

(220 . (217.0 110 5.0 7.7 12))

(240 . (237.0 120 5.2 8.3 15))

(270 . (267.0 135 5.5 8.7 15))

(300 . (297.0 150 6.1 9.2 15))

(330 . (327.0 160 6.5 10.0 18))

(360 . (357.6 170 6.6 11.5 18))

(400 . (397.0 180 7.0 12.0 21))

(450 . (447.0 190 7.6 13.1 21))

(500 . (497.0 200 8.4 14.5 21))

(550 . (547.0 210 9.0 15.7 24))

(600 . (597.0 220 9.8 17.5 24))

)

HEA_data

'(

(100 . (96.0 100 5.0 8.0 12))

(120 . (114.0 120 5.0 8.0 12))

(140 . (133.0 140 5.5 8.5 12))

(160 . (152.0 160 6.0 9.0 15))

(180 . (171.0 180 6.0 9.5 15))

(200 . (190.0 200 6.5 10.0 18))

(220 . (210.0 220 7.0 11.0 18))

(240 . (230.0 240 7.5 12.0 21))

(260 . (250.0 260 7.5 12.5 24))

(280 . (270.0 280 8.0 13.0 24))

(300 . (290.0 300 8.5 14.0 27))

(320 . (310.0 300 9.0 15.5 27))

(340 . (330.0 300 9.5 16.5 27))

(360 . (350.0 300 10.0 17.5 27))

(400 . (390.0 300 11.0 19.0 27))

(450 . (440.0 300 11.5 21.0 27))

(500 . (490.0 300 12.0 23.0 27))

(550 . (540.0 300 12.5 24.0 27))

(600 . (590.0 300 13.0 25.0 27))

(650 . (640.0 300 13.5 26.0 27))

(700 . (690.0 300 14.5 27.0 27))

(800 . (790.0 300 15.0 28.0 30))

(900 . (890.0 300 16.0 30.0 30))

(1000 . (990.0 300 16.5 31.0 30))

(1100 . (1090.0 300 18.0 31.0 20))

)

HEB_data

'(

(100 . (100 100 6.0 10.0 12))

(120 . (120 120 6.5 11.0 12))

(140 . (140 140 7.0 12.0 12))

(160 . (160 160 8.0 13.0 15))

(180 . (180 180 8.5 14.0 15))

(200 . (200 200 9.0 15.0 18))

(220 . (220 220 9.5 16.0 18))

(240 . (240 240 10.0 17.0 21))

(260 . (260 260 10.0 17.5 24))

(280 . (280 280 10.5 18.0 24))

(300 . (300 300 11.0 19.0 27))

(320 . (320 300 11.5 20.5 27))

(340 . (340 300 12.0 21.5 27))

(360 . (360 300 12.5 22.5 27))

(400 . (400 300 13.5 24.0 27))

(450 . (450 300 14.0 26.0 27))

(500 . (500 300 14.5 28.0 27))

(550 . (550 300 15.0 29.0 27))

(600 . (600 300 15.5 30.0 27))

(650 . (650 300 16.0 31.0 27))

(700 . (700 300 17.0 32.0 27))

(800 . (800 300 17.5 33.0 30))

(900 . (900 300 18.5 35.0 30))

(1000 . (1000 300 19.0 36.0 30))

(1100 . (1100 300 20.0 36.0 20))

)

HEM_data

'(

(100 . (120 106 12.0 20.0 12))

(120 . (140 126 12.5 21.0 12))

(140 . (160 146 13.0 22.0 12))

(160 . (180 166 14.0 23.0 15))

(180 . (200 186 14.5 24.0 15))

(200 . (220 206 15.0 25.0 18))

(220 . (240 226 15.5 26.0 18))

(240 . (270 248 18.0 32.0 21))

(260 . (290 268 18.0 32.5 24))

(280 . (310 288 18.5 33.0 24))

(300 . (340 310 21.0 39.0 27))

(320 . (359 309 21.0 40.0 27))

(340 . (377 309 21.0 40.0 27))

(360 . (395 308 21.0 40.0 27))

(400 . (432 307 21.0 40.0 27))

(450 . (478 307 21.0 40.0 27))

(500 . (524 306 21.0 40.0 27))

(550 . (572 306 21.0 40.0 27))

(600 . (620 305 21.0 40.0 27))

(650 . (668 305 21.0 40.0 27))

(700 . (716 304 21.0 40.0 27))

(800 . (814 303 21.0 40.0 30))

(900 . (910 302 21.0 40.0 30))

(1000 . (1008 302 21.0 40.0 30))

)

PA_data IPEA_data

)

(setq sv_mnu (getvar "SHORTCUTMENU"))

(setvar "SHORTCUTMENU" 11)

(initget 1 "IPE IPEA PA HEA HEB HEM")

(setq typ_ipn (getkword "\nType de poutre [iPE/IPEA/PA/HEA/HEB/HEM]?: "))

(setq l_data (eval (read (strcat typ_ipn "_data"))))

(setq l_str nil)

(initget 1 (apply 'strcat (mapcar 'strcat (repeat (length l_data) (setq l_str (cons "M" l_str))) (mapcar 'itoa (mapcar 'car l_data)) (repeat (length l_data) (setq l_str (cons " " l_str))))))

(setq l_str nil)

(setq model_ipn (getkword (strcat "\nModèle de poutre ["

(apply 'strcat (mapcar 'strcat (repeat (length l_data) (setq l_str (cons "M" l_str))) (mapcar 'itoa (mapcar 'car l_data)) (repeat (length l_data) (setq l_str (cons "/" l_str)))))

"]?: "))

)

(setvar "SHORTCUTMENU" sv_mnu)

(setq l_val (cdr (assoc (atoi (substr model_ipn 2)) l_data)))

(initget 1)

(setq pt_ins (getpoint "\nPoint d'insertion?: "))

(setq h (car l_val) b (cadr l_val) a (caddr l_val) e (cadddr l_val) r (last l_val))

(setq

po (polar pt_ins (* pi 0.5) (* h -0.5))

p1 (polar po 0.0 (* b 0.5))

p2 (polar p1 (* pi 0.5) e)

p3 (polar p2 pi (- (* b 0.5) (* a 0.5) r))

p4 (polar (polar p3 (* pi 0.5) r) pi r)

p5 (polar p4 (* pi 0.5) (- h (* 2.0 r) (* 2.0 e)))

p6 (polar (polar p5 0.0 r) (* pi 0.5) r)

p7 (polar p6 0.0 (- (* b 0.5) (* a 0.5) r))

p8 (polar p7 (* pi 0.5) e)

p9 (polar p8 pi B)

p10 (polar p9 (- (* pi 0.5)) e)

p11 (polar p10 0.0 (- (* b 0.5) (* a 0.5) r))

p12 (polar (polar p11 (- (* pi 0.5)) r) 0.0 r)

p13 (polar p12 (- (* pi 0.5)) (- h (* 2.0 r) (* 2.0 e)))

p14 (polar (polar p13 pi r) (- (* pi 0.5)) r)

p15 (polar p14 pi (- (* b 0.5) (* a 0.5) r))

p16 (polar p15 (- (* pi 0.5)) e)

)

(setvar "cmdecho" 0)

(command "_.pline" "_none" p1 "_none" p2 "_none" p3 "_arc" "_none" p4 "_line" "_none" p5

"_arc" "_none" p6 "_line" "_none" p7 "_none" p8 "_none" p9 "_none" p10 "_none" p11

"_arc" "_none" p12 "_line" "_none" p13 "_arc" "_none" p14 "_line" "_none" p15 "_none" p16

"_close"

)

(setvar "cmdecho" 1)

(command "_.extrude" (entlast) "")

(prin1)

)

 

 

 

Merci

IPN.lsp

Lien vers le commentaire
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité