Carboleum Posté(e) le 17 décembre 2010 Posté(e) le 17 décembre 2010 Hello, Est il possible de définir un réacteur pour l'insertion d'une image de la même façon que l'attachement d'un xref ? (vlr-xref-reactor nil '((:vlr-endattach . bl:reac-attach))) ne fonctionne pas pour une image. Quelqu'un à une idée ? Merci Carboléüm, qui dessine aussi à la main -> Carboleum's sketchblog
Patrick_35 Posté(e) le 17 décembre 2010 Posté(e) le 17 décembre 2010 Salut Avec :vlr-objectAppended de vlr-acdb-reactor ? @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
Carboleum Posté(e) le 17 décembre 2010 Auteur Posté(e) le 17 décembre 2010 Merci, J'y avait pensé... (or (vlr-acdb-reactor :vlr-acdb-reactor) (vlr-acdb-reactor '((:vlr-objectappened . bl:reactor-objectappened)))) (defun bl:reactor-objectappened (a) (print 'appened)) j'ai essayé ceci, ca marche pas.Quel est mon erreur.J'avoue que les réacteur me sont un peu abscon ;-) Carboléüm, qui dessine aussi à la main -> Carboleum's sketchblog
Patrick_35 Posté(e) le 17 décembre 2010 Posté(e) le 17 décembre 2010 Que cherche tu à faire exactement ? @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
Carboleum Posté(e) le 18 décembre 2010 Auteur Posté(e) le 18 décembre 2010 Lors de l'insertion d'images par glisser déposer depuis un explorateur vers AutoCAD, celui-ci est en chemin absolut. Je voudrais les mettre en chemin relatif automatiquement lors de cette insertion. Carboléüm, qui dessine aussi à la main -> Carboleum's sketchblog
(gile) Posté(e) le 18 décembre 2010 Posté(e) le 18 décembre 2010 Salut, Une piste, je te laisse finaliser. (setq *ObjectAppenedReactor* (vlr-acdb-reactor nil '((:vlr-objectAppended . bl:reactor-objectappened))) ) (defun bl:reactor-objectappened (rea obj / img) (setq img (vlax-ename->vla-object (cadr obj))) (if (= "AcDbRasterImage" (vla-get-ObjectName img)) (alert (vla-get-ImageFile img)) ) ) ;| Supprimer le réacteur (vlr-remove *ObjectAppenedReactor*) (setq *ObjectAppenedReactor* nil) |; Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Carboleum Posté(e) le 18 décembre 2010 Auteur Posté(e) le 18 décembre 2010 Excellent! merci! voici le code. (or *relativizeimagepath* (setq *relativizeimagepath* (vlr-acdb-reactor nil '((:vlr-objectappended . bl:relativizeimagepath))))) (defun bl:relativizeimagepath (rea obj / img) (if (= "AcDbRasterImage" (vla-get-ObjectName (setq img (vlax-ename->vla-object (cadr obj))))) (vla-put-imagefile img (vl-string-subst ".\\" (getvar "dwgprefix") (vla-get-imagefile img))))) Au moment de l'insertion d'une image, ce code convertit le chemin de celle-ci en chemin relatif, si l'image se trouve dans le répertoire (ou un sous-répertoire) du dessin Carboléüm, qui dessine aussi à la main -> Carboleum's sketchblog
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