brunomu Posté(e) le 8 novembre 2010 Posté(e) le 8 novembre 2010 Après une recherche infructueuse sur le site (ou plutôt : décourageante, avec plus de 800 réponses à ma requête), je me tourne vers le Forum. J’aimerais pouvoir recharger un xref, simplement en cliquant dessus.Mais je ne sais pas écrire le LISP approprié. Quelqu’un pourrait-il m’aider ? Merci !
Carboleum Posté(e) le 8 novembre 2010 Posté(e) le 8 novembre 2010 (defun c:xreload () (or vlax-ename->vla-object (vl-load-com)) (command "_.-xref" "_reload" (vla-get-name (vlax-ename->vla-object (car (entsel)))))) Carboléüm, qui dessine aussi à la main -> Carboleum's sketchblog
(gile) Posté(e) le 8 novembre 2010 Posté(e) le 8 novembre 2010 Salut, Juste une petite remarque concernant le code de Carboleum :S'il est inutile de faire un test avant de lancer (vl-load-com), il peut être souhaitable de tester la validité de l'objet sélectionné. Ma contribution (moins concise mais plus "sûre" et entièrement en vlisp) (defun c:xrl (/ x) (vl-load-com) (and (setq x (car (entsel))) (= (vla-get-ObjectName (setq x (vlax-ename->vla-object x))) "AcDbBlockReference") (= (vla-get-IsXref (setq x (vla-Item (vla-get-Blocks (vla-get-ActiveDocument (vlax-get-acad-object))) (vla-get-Name x) ) ) ) :vlax-true ) (vla-Reload x) ) (princ) ) Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
brunomu Posté(e) le 8 novembre 2010 Auteur Posté(e) le 8 novembre 2010 Merci à tous les 2, c'est parfait. :-)
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