Invité ingoenius Posté(e) le 30 juin 2007 Posté(e) le 30 juin 2007 je me trouve a devoir installer une vielle version 2005 autocad, mais j'ai une grosse quantité de blocs 2d et 3d en format 2007 est possible par script de traiter tout un dossier e ses sous dossier pour sauvegarder tout en version AutoCAD 2005? en gardant les nom de blocs le point d'insertion etc etc ?? bien entendu le script je le lancerait depuis la version 2007 merci ;-)
sechanbask Posté(e) le 30 juin 2007 Posté(e) le 30 juin 2007 Le mieux pour éviter les ARX_ERROR, c'est de copier le bloc et de le mettre sur un dessin autocad 2004 crée par un PC équipé d'une version antérieure à 2007... C'est un peu la merde le DWG 2007...Désolé, je ne saurais pas le faire.. ATEGIE - Bureau d'Études Fluideshttp://www.ategie.fr/uploads/ategie/ategie-at%C3%A9gie-bureau-%C3%A9tudes-etudes-fluides-logo-100x56.pngExécution, Synthèse, Conception, Maîtrise d'Oeuvre, Audit, Chiffragewww.ategie.fr
(gile) Posté(e) le 30 juin 2007 Posté(e) le 30 juin 2007 Salut, Tu peux utiliser DWG TrueConvert désormais intégré à DWG TrueView (gratuit chez Autodesk) Ou encore, essayer ce LISP. Il faut lancer le LISP dans un dessin vierge (brouillon).Tous les fichiers .dwg du répertoire sélectionné sont insérés, décomposés puis enregistrés au format 2004. Le LISP change le format d'enregistrement par défaut et le restaure à la fin. NOTA : les blocs dynamiques perdront leurs propriétés dynamiques. (defun c:wbloc2004 (/ App AcDoc ModSp echo n lst file dffs dir f_lst ss) (vl-load-com) (setq App (vlax-get-acad-object) AcDoc (vla-get-ActiveDocument App) ModSp (vla-get-ModelSpace acDoc) echo (getvar "cmdecho") ) ;; Teste la présence d'entités graphiques dans le dessin (if ( (progn (alert "Le dessin contient des entités. \nCe programme doit être lancé à partir d'un dessin vierge." ) (exit) ) ) (setq file (getfiled "Choisir un fichier dans le répertoire à modifier" "" "dwg" 0 ) ) (if file (progn (setq dffs (getenv "DefaultFormatForSave")) (setenv "DefaultFormatForSave" "24") ; sauve par défaut au format 2004 (setq dir (vl-filename-directory file) f_lst (vl-directory-files dir "*.dwg") ) (mapcar '(lambda (x) (setq bl (vla-InsertBlock ModSp (vlax-3d-point '(0 0 0)) x 1 1 1 0 ) ) (vla-ZoomExtents App) (vla-ZoomScaled App 0.9 1) (vla-explode bl) (vla-delete bl) (setvar "cmdecho" 0) (vl-cmdf "_.wblock" x "_y" "*") (vl-cmdf "_.erase" "_all" "") (setvar "cmdecho" echo) ) (mapcar '(lambda (x) (strcat dir "\\" x)) f_lst) ) (setenv "DefaultFormatForSave" dffs) ) ) (princ) ) [Edité le 1/7/2007 par (gile)] Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Invité ingoenius Posté(e) le 2 juillet 2007 Posté(e) le 2 juillet 2007 Merci ;-) , je sui en train de convertir pas mal de biblioteques evac le script
Invité ingoenius Posté(e) le 2 juillet 2007 Posté(e) le 2 juillet 2007 une derniere questionEst ce que c' est facilement modifiable pour le faire agir aussi sur tous les sous-repertoire contenue a partire du premier dessin selectionnee?? merci ancore
(gile) Posté(e) le 2 juillet 2007 Posté(e) le 2 juillet 2007 Est ce que c' est facilement modifiable pour le faire agir aussi sur tous les sous-repertoire contenue a partire du premier dessin selectionnee?? Très facile, avec GetFile de ElpanovEvgeniy (defun c:wbloc2004 (/ App AcDoc ModSp echo n lst file dffs f_lst ss) (vl-load-com) (setq App (vlax-get-acad-object) AcDoc (vla-get-ActiveDocument App) ModSp (vla-get-ModelSpace acDoc) echo (getvar "cmdecho") ) ;; Teste la présence d'entités graphiques dans le dessin (if ( (progn (alert "Le dessin contient des entités. \nCe programme doit être lancé à partir d'un dessin vierge." ) (exit) ) ) (setq file (getfiled "Choisir un fichier dans le répertoire à modifier" "" "dwg" 0 ) ) (if file (progn (setq dffs (getenv "DefaultFormatForSave")) (setenv "DefaultFormatForSave" "12") ; sauve par défaut au format 2004 (setq f_lst (GetFile "*.dwg" (vl-filename-directory file))) (mapcar '(lambda (x) (setq bl (vla-InsertBlock ModSp (vlax-3d-point '(0 0 0)) x 1 1 1 0 ) ) (vla-ZoomExtents App) (vla-ZoomScaled App 0.9 1) (vla-explode bl) (vla-delete bl) (setvar "cmdecho" 0) (vl-cmdf "_.wblock" x "_y" "*") (vl-cmdf "_.erase" "_all" "") (setvar "cmdecho" echo) ) f_lst ) (setenv "DefaultFormatForSave" dffs) ) ) (princ) ) ;;; Getfile -ElpanovEvgeniy- ;;; Retourne la liste du (ou des) fichier(s) spécifié(s) dans le dossier (ou disque) et ses sous dossiers ;;; Exemple : ;;; (GetFile "acad.exe" "C:") -> ("C:\\Program Files\\AutoCAD 2007\\acad.exe") ;;; (Getfile "acad*.lsp" "C:\\Program Files") -> ;;; ("C:\\Program Files\\AutoCAD 2007\\Express\\acadinfo.lsp" ;;; "C:\\Program Files\\AutoCAD 2007\\Support\\acad2007.lsp" ;;; "C:\\Program Files\\AutoCAD 2007\\Support\\acad2007doc.lsp" ;;; "C:\\Program Files\\AutoCAD 2007\\Support\\acadinfo.lsp") (defun GetFile (f p) (apply (function append) (cons (if (vl-directory-files p f) (mapcar (function (lambda (x) (strcat p "\\" x))) (vl-directory-files p f) ) ) ;_ if (mapcar (function (lambda (x) (GetFile f (strcat p "\\" x)))) (vl-remove ".." (vl-remove "." (vl-directory-files p nil -1)) ) ) ;_ mapcar ) ;_ cons ) ;_ apply ) Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
oran Posté(e) le 3 juillet 2007 Posté(e) le 3 juillet 2007 Bonjour,Il y a aussi A9Converteur (gratuit)....tu fais glisser tes fichiers dans la fenêtre, tu choisis ta version, ton répertoire de destination et hop le tour est joué... ;) Oran [Edité le 3/7/2007 par oran]
(gile) Posté(e) le 3 juillet 2007 Posté(e) le 3 juillet 2007 Salut oran, Y a t-il une nouvelle version de A9Converteur qui prenne en charge le format 2007 ?Je n'ai pas trouvé, merci. Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
oran Posté(e) le 3 juillet 2007 Posté(e) le 3 juillet 2007 ...je ne sais pas mais je pense que tu as déjà dû faire une recherche sur le net..! ;)
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