77marco77
Guest
Bonjour.
dans un dessin (qui est utilisé comme source de blocs pour les nouveaux modèles) avec plus de 6000 blocs, je voudrais remplacer la valeur par défaut de la balise d'attribut par la valeur déjà insérée manuellement dans le bloc.
J'ai trouvé ce code :
qui fait ce dont j'ai besoin, mais je dois entrer le nom du bloc (je ne peux pas sélectionner), le nom de la balise et la nouvelle valeur par défaut de la balise, mais ce sont de nombreux blocs et chacun a entre 12 et 20 attributs..
Est-il possible de faire plus rapidement la sélection de blocs (ou plusieurs blocs), l'attribut (ou plusieurs attributs), qui lit la valeur déjà insérée et la laisse entrer comme un nouveau défaut?
dans un dessin (qui est utilisé comme source de blocs pour les nouveaux modèles) avec plus de 6000 blocs, je voudrais remplacer la valeur par défaut de la balise d'attribut par la valeur déjà insérée manuellement dans le bloc.
J'ai trouvé ce code :
Code:
;; lee-mac - 2017
(défend c:defatt ( / bln def tag )
(si (= "" (setq bln (strcase (getstring t "\nspecify block name filter (utiliser * pour tous) <*>: "))))
(setq bln "*")
)
(si (= "" (setq tag (strcase (getstring "\nspecify tag name filter (utiliser * pour tous) <*>: "))))
(setq tag "*")
)
(setq def (getstring t "\nspecify new par défaut value: "))
(vlax-pour blk (vla-get-blocks (vla-get-activedocument (vlax-get-acad-object)))
(si (et (= :vlax-false (vla-get-islayout blk) (vla-get-isxref blk)) (wcmatch (strcase (vla-get-name blk)) bln))
(vlax pour obj blk
(si (et (= "acdbattributedefinition" (vla-get-objetname obj))
(Wcmatch (strcase (vla-get-tagstring obj)))
(vlax-write-abled-p obj)
)
(vla-put-textstring obj def)
)
)
)
)
(principal)
)
(vl-load-com) (principal)
Est-il possible de faire plus rapidement la sélection de blocs (ou plusieurs blocs), l'attribut (ou plusieurs attributs), qui lit la valeur déjà insérée et la laisse entrer comme un nouveau défaut?