zara Posté(e) le 7 novembre 2018 Partager Posté(e) le 7 novembre 2018 Bonjour, Après l'utilisation d'un lisp pour la redéfinition des blocs du dessin à partir d'un dossier contenant tous les blocs références.J'ai un souci avec les blocs dynamiques.Ces derniers ne se synchronisent pas avec l’éditeur de bloc car un paramètre a été utilisé.Mais quand je rentre dans l’éditeur je fais un zoom étendu et que j'enregistre tout se replace bien.Ça fonctionne bien aussi avec design center en faisant redéfinir mais trop long de faire bloc par bloc.Y aurait il un moyen de synchroniser les blocs comme attsync? https://uptobox.com/n3r2qv3wtipz Merci par avance. Lien vers le commentaire Partager sur d’autres sites More sharing options...
rebcao Posté(e) le 8 novembre 2018 Partager Posté(e) le 8 novembre 2018 Bonjour, Au pire tu peux rajouter dans le LISP l'ouverture de l'EDITEUR de blocs et enregistrer... Christian Formateur, Consultant Expert AutoCAD, REVIT MEP, INVENTOR, télécharger , des Outils AutoCAD...cad123 @ wanadoo.fr (enlever les espaces de part et d'autre de @) Lien vers le commentaire Partager sur d’autres sites More sharing options...
zara Posté(e) le 8 novembre 2018 Auteur Partager Posté(e) le 8 novembre 2018 Bonjour Christian, Merci pour cette réponse en effet ça pourrait être la solution.Où et comment rajouter une ligne qui permettrai l'ouverture de chaque bloc dans l'éditeur de blocs / un zoom étendue / la fermeture / l'enregistrement. ;; Redefine All Blocks - Lee Mac (defun c:redefall ( / bln dir doc dwg lst obj org spc ) (setq dir "D:\\_DOSSIER ACTIF\\") ;; Directory of Block Library; nil to use Support Path (if dir (setq dir (strcat (vl-string-right-trim "\\" (vl-string-translate "/" "\\" dir)) "\\")) (setq dir "") ) (cond ( (= 4 (logand 4 (cdr (assoc 70 (tblsearch "layer" (getvar 'clayer)))))) (princ "\nCurrent layer locked.") ) ( (setq doc (vla-get-activedocument (vlax-get-acad-object)) spc (vla-get-modelspace doc) org (vlax-3D-point 0 0) ) (terpri) (vlax-for blk (vla-get-blocks doc) (if (and (= :vlax-false (vla-get-isxref blk)) (= :vlax-false (vla-get-islayout blk)) (not (wcmatch (setq bln (vla-get-name blk)) "`**,*|*")) ) (if (setq dwg (findfile (strcat dir bln ".dwg"))) (progn (princ (strcat "Redefining block: " dwg "\n")) (setq obj (vla-insertblock spc org dwg 1.0 1.0 1.0 0.0)) (if (= :vlax-true (vla-get-hasattributes obj)) (setq lst (vl-list* "," bln lst)) ) (vla-delete obj) ) (princ (strcat "Unable to locate block: " dir bln ".dwg\n")) ) ) ) (if lst (progn (princ "Synchronising attributes for redefined blocks...\n") (vl-cmdf "_.attsync" "_N" (apply 'strcat (cdr lst))) ) ) (textscr) (vla-regen doc acallviewports) ) ) (princ) ) (vl-load-com) (princ) Merci par avance Simon Lien vers le commentaire Partager sur d’autres sites More sharing options...
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