hardyorock Posté(e) le 4 juin 2007 Posté(e) le 4 juin 2007 Salut les amis Il y a une petit routine de patrick_35 qui copie un bloc d'un fichier pour l'insérai dans le dessin courant, bien sûr sans ouvrir le fichier qui contient le bloc cible (defun Ouvrir_dessin_dbx(dwg / dbx)(if (< (atoi (substr (getvar "ACADVER") 1 2)) 16)(setq dbx (vlax-create-object "ObjectDBX.AxDbDocument"))(setq dbx (vlax-create-object (strcat "ObjectDBX.AxDbDocument." (substr (getvar "ACADVER") 1 2)))))(vla-open dbx dwg)dbx) (setq Dbx (ouvrir_dessin_dbx "c:/test.dwg"))(vla-CopyObjects Dbx (vlax-safearray-fill (vlax-make-safearray vlax-vbObject '(0 . 0))(list (vla-item (vla-get-blocks dbx) "Un_Bloc")))(vla-get-blocks (vla-get-activedocument (vlax-get-acad-object)))) Je sais que c'est possible de faire l'inverse càd : copier le bloc cible du dessin courant et l'insérer dans un autre fichier sans bien sûr ouvrir ce dernier; puisque j'ai pas pijé tros le code de patrick35 je ne sais pas si je dois changer un truc au niveau du code pour le rendre utile pour mois merci pour vops reponce les amis
(gile) Posté(e) le 4 juin 2007 Posté(e) le 4 juin 2007 Salut Un exemple : ;; AcDoc : pointeur vers le document actif ;; bl : la définition du bloc "Bloc" récupérée dans le dessin actif ;; Dbx : pointeur vers un autre dessin (fermé) (setq AcDoc (vla-get-ActiveDocument (vlax-get-acad-object)) bl (vla-item (vla-get-Blocks AcDoc) "Bloc") Dbx (ouvrir_dessin_dbx "c:/test.dwg") ) ;; importation de la définition dans le dessin cible (vlax-invoke acDoc 'CopyObjects (list bl) (vla-get-blocks Dbx) ) ;; insertion du bloc en 0,0,0 (vla-InsertBlock (vla-get-ModelSpace Dbx) (vlax-3d-point '(0 0 0)) "Bloc" 1 1 1 0 ) ;; enregitrement (vla-saveas Dbx "c:/test.dwg") ;; suppression du pointeur vers le dessin cible (vlax-release-object Dbx) [Edité le 4/6/2007 par (gile)] Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
hardyorock Posté(e) le 5 juin 2007 Auteur Posté(e) le 5 juin 2007 merci merci merci (gile) vous etes un pro.a vrais dire je ne fais que consomé moi.
(gile) Posté(e) le 5 juin 2007 Posté(e) le 5 juin 2007 merci merci merci (gile) vous etes un pro. Tout le mérite revient à Patrick_35, je n'ai fait qu'adapter. ;) Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Patrick_35 Posté(e) le 5 juin 2007 Posté(e) le 5 juin 2007 Tout le mérite revient à Patrick_35, je n'ai fait qu'adapter. ;) Encore faut-il pouvoir le faire :) @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
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