Invité ingoenius Posté(e) le 10 février 2010 Posté(e) le 10 février 2010 Suite a ce post http:// http://cadxp.cadmag.info/modules.php?op=modload&name=XForum&file=viewthread&tid=26738 Je cherche a faire un lisp qui placerait des blocs "Anneau" (diametre de l'anneau 0.04) de la façon suivante sélection des point de début et fin d'une ligne placement des blocs a une distance établie de 0.2 entre centres anneaux,distance en Y de la ligne sélectionne avant de 0.05 et placement du maximum de bloc possibles centres sur la distance calculée au début de ligne, J'ai fait au début de script, mais il fonctionne seulement pour une ligne horizontale et dans la vue top ;-( comment modifier pour pouvoir sélectionner aussi des lignes inclinées ou verticales et aussi en partant d'une vue face ou cote? ici le fichier de travailhttp://dl.free.fr/ivQWwDprk et ici le debut du lisp (defun c:oei() ;piazz i blocchi anello PARTE BASSA (setq DTR (/ PI 180)) ;fattore di moltiplicazione x gradi verso radianti pi é Pi greco! (setq DESTRA (* 0 DTR)) ;traduzione del comando polar (setq SINISTRA (* 180 DTR)) ;traduzione del comando polar (setq SU (* 90 DTR)) ;traduzione del comando polar (setq GIU (* 270 DTR)) ;traduzione del comando polar (setq DIAG (* 45 DTR)) ;traduzione del comando polar (setvar "osmode" 3) (setq P0 (getpoint "\nDebut Ligne\n")) (command "_line" P0 pause "") (setq linea (entlast)) ;nom poliligne (setq F (entget linea)) (setq P2 (ASSOC 11 F)) ;list coord cod dxf 11 (setq xP2 (cadr P2)) (setq yP2 (caddr P2)) (setq zP2 (cadddr P2)) (setq PP (list xP2 yP2 zP2)) (setq DIST (distance P0 PP)) ;dist (setq Diam_anello 0.04) (setq Demidiam (/ Diam_anello 2.0)) (setq Distbache 0.03) (Setq MoveAnello (+ Demidiam Distbache)) (setq DistA 0.2) (setq DistB 0.16) (setq DistR (- Dist (* 2.0 Moveanello))) (setq Q (fix(+ 1.0(/ DistR DistA)))) (setq anelli (* Q Diam_anello)) (setq spazi(* DistB (- Q 1.0))) (setq occupato (+ anelli spazi)) (setq spost1 (+ Demidiam (/ (- Dist occupato)2.0))) (setq spost2 0.05) (setq P3 (polar P0 DESTRA spost1)) (setq P3 (polar P3 SU spost2)) (setq Blocco "Anello") (command "_-insert" Blocco P3 "" "" "") (setq An (entlast)) (command "reseau" An "" "R" 1 Q 0.2 "") ) merci a tous
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant