Fabs Posté(e) le 6 avril 2023 Posté(e) le 6 avril 2023 Bonjours ci joint un lisp à partager que j'utilise. il n'est pas parfait mais il fonctionne. le petit bug est en sélectionnant pour la premier foi le bloc le message est "Le bloc "_Y" n'a pas été trouvé." pourtant il l'a crée... (defun c:crbl (/ bloc nom way) (defun *error* (e) (vl-bt)) (while (or (not (setq bloc (car (entsel "\nSélectionner un bloc :")))) (/= (cdr (assoc 0 (entget bloc))) "INSERT") ) ) (setq path (getvar "DWGPREFIX")) ;;;;;; creation du repertoire Blocs dans la racine du dessin ;;;;;;;;;;;;;; (setq plotdir(strcat path "Blocs"));;; cree un repertoire PDF files dans le repertoir ou se trouve le dwg (if (not (findfile plotdir));;; si n'existe pas (vl-mkdir plotdir);;; Crée le répertoire PDF files ) ;;;;;; (setq chemin_name (strcat plotdir "//" bloc));;; Modification cree le pdf dans ce chemin ;;; (setq nom (cdr (assoc 2 (entget bloc)));;; nom du bloc, ne fonctionne pas quand il est anonyme (setq bloc (vlax-ename->vla-object bloc)) (setq nom (vla-get-effectivename bloc) ;;; nom du bloc avec effectivename fonctionne avec les blocs anonymes way (strcat path "Blocs" "\\" nom ".dwg");;; chemin complet du répètoire ) (if (findfile (strcat nom ".dwg")) (progn (command "-wbloc" way "_Y" nom) ) (command "-wbloc" way nom) ) ) Citer
Messages recommandés