Invité ingoenius Posté(e) le 21 juin 2007 Posté(e) le 21 juin 2007 ici un debut de routine le seul probleme c'est qu'elle me retourne une erreur Erreur: Erreur Automation Objet effacé j'arrive pas a comprendre pourquoi ;-( merci pour l'aide ;-) (defun C:Ft () ;percage cilindrique (vl-load-com) (SETQ Old-OS (GETVAR "OSMODE")) ;sauvegarde os mode (setq sel (ssget '((0 . "3DSOLID")))) ;selections obj (command "_ucs" "fa" pause "" ) ;selection face construction du cilindre (setvar "OSMODE" 0) ;creazione du trou (setq center (getpoint "position trou?: ")) (setq diam (getdist "Diametre du trou?: ")) (command "_circle" center diam ) (setq cercle (entlast)) (command "_extrude" cercle "" -100 "" "");valeur arbitraire avant de mettre la dim du bbox (setq cilindre (entlast)) ;------------------------------------------------------------- (foreach n (vl-remove-if 'listp (mapcar 'cadr (ssnamex sel))) (setq lst-vla-sel (append (list (vlax-ename->vla-object n)) lst-vla-sel))) ;(setq c (vlax-ename->vla-object (car (entsel "\n Choix de l'objet à Soustraire :")))) (setq c (vlax-ename->vla-object cilindre)) (repeat (setq x (length lst-vla-sel)) (setq c-p (vla-copy c)) (vla-boolean (nth (setq x (1- x)) lst-vla-sel) acSubtraction c-p) ) (vla-delete c);efface le cilindre apres le percage (setvar "OSMODE" Old-OS) (command "_ucs" "g" "" ) (princ) )
Didier-AD Posté(e) le 25 juin 2007 Posté(e) le 25 juin 2007 Je n'en ai pas la certitude mais tes soucis ne viendraient ils pas des manipulations de la variable x (repeat (setq x (length lst-vla-sel)) (setq c-p (vla-copy c)) (vla-boolean (nth (setq x (1- x)) lst-vla-sel) acSubtraction c-p) ) pourtant à y regarder çà a l'air correct, c'est un traitement de liste donc l'indice reste bon, pas comme dans le cas de l'utilisation de ssdel. je l'aurais écrite comme çà : (foreach piece lst-vla-sel (setq c-p (vla-copy c)) (vla-boolean piece acSubtraction c-p) ) ou si tu veux absolument commencer par la fin (foreach piece (reverse lst-vla-sel) (setq c-p (vla-copy c)) (vla-boolean piece acSubtraction c-p) ) mais c'est à vérifier
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