Bonjour, auriez-vous un lien vers une page du forum, vers une documentation ou vers un Lisp permettant de lancer une opération dans 10000 fichiers dwg ( batch-process sets of drawings ) ?
J'avais trouvé ça il y a une vingtaine d'années et je ne retrouve plus.
C'était un dir /p > txt suivi d'une boucle for each then next . en imbriquant entre Then et Next les commandes clavier (exemple -layer;l;; (libérer dégel tous) Ctrl+A DuCalque DuCalque DuCalque Zoom Étendu Ctrl+S écraser : oui).
Cordialement
Bonjour,
J'utilise souvent un "simple" fichier .BAT que je place au début de l'arborescence et il traite tous les .DWG présent dans le DOSSIER maitre et TOUS les SOUS-DOSSIERS...
A titre d'exemple, en pièce jointe un exemple de .BAT qui va PURGER TOUS les dessins. Ik suffit de placer le fichier .BAT dans le dossier de départ, puis de l'exécuter et il crée un SCRIPT dans le dossier de départ...
Christian
Christian REB
Bonjour, je vous remercie pour votre réponse.
Je crée un nouveau dessin, je tape au clavier script je charge le script. Là j'ai l'erreur commande inconnue.
Voici le SCR
#CDE#"filedia 1 attdia 0 attreq 0 proxynotice 0"#CDE#
#CDE#"osnapcoord 1 pickfirst 1 expert 5 _limits _OFF"#CDE#
#CDE#"dynmode 0"#CDE#
#CDE#"id 0,0"#CDE#
Z:\Test\1968s.dwg
Z:\Test\20_S314_ARMOIRE.dwg
#CDE#"delai 0"#CDE#
#CDE#"delai 0"#CDE#
#CDE#"delai 0"#CDE#
#CDE#"delai 0"#CDE#
Donc si je vois où vous voulez en venir il faut que je bricole comme ceci :
_.open "Z:\Test\1968s.dwg"
_-purge _ALL * _N _-purge _ALL * _N
_-purge _R * _N _-scalelistedit _R _Y _E
_AUDIT _Y _zoom _e
_qsave _close
_.open "Z:\Test\20_S314_ARMOIRE.dwg"
_-purge _ALL * _N _-purge _ALL * _N
_-purge _R * _N _-scalelistedit _R _Y _E
_AUDIT _Y _zoom _e
_qsave _close?
Cordialement
Bonjour
Regarde le programme SuperAutoScript (SAS) https://www.caderix.com/telechargement_autocad.html
Faire un copier-coller des lignes ci-dessous dans Notepad par exemple et l'enregistrer en .scr
(command "_-purge" "_ALL" "*" "_N")
(command "_-purge" "_ALL" "*" "_N")
(command "_-purge" "_ALL" "*" "_N")
(command "_-scalelistedit" "_R" "_Y" "_E")
(command "_AUDIT" "_Y")
(command "_zoom" "_e")
(command "_qsave")
(command "_close")
;; une autre version avec des commentaires.
;;
;; Exécute la commande purge trois fois consécutivement.
(repeat 3 (command "_-purge" "_ALL" "*" "_N"))
;; Reset la liste des échelles
(command "_-scalelistedit" "_R" "_Y" "_E")
;; Active l'audit des erreurs du dessin
(command "_AUDIT" "_Y")
;; Effectue un zoom sur l'ensemble du dessin
(command "_zoom" "_e")
;; Sauvegarde le dessin
(command "_qsave")
;; Ferme le dessin (ligne à mettre en commentaire avec un ';' suivant le générateur de script)
(command "_close")
Il est plus simple d'écrire des scripts avec l'instruction Autolisp 'command' pour la relecture, le débogage et les évolutions des scripts.
Bon courage pour tes 10 000 fichiers à traiter.
Bonjour,
C'est curieux j'étais persuadé d'avoir complété mon message avec un ZIP complémentaire ??? Le voici...
1. Tu Dézippes le fichier...
2. Tu places le dossier FicExe dans le dossier C:\SCRIPTNW
3. Tu places le .BAT dans le dossier à traiter...
4. Tu exécutes le .BAT dans le dossier à traiter...
5. Tu lances le SCRIPT créé dans le dossier à traiter...
Christian
Christian REB
Bonjour
Pour Purger en masse, il y a cette Astuce :
Ces scripts répondent à une problématique essentielle : effectuer efficacement des traitements par lot sur un grand nombre de fichiers.
Il intègre des fonctionnalités avancées, telles que :
De plus, il offre une base extensible pour ajouter d'autres traitements, comme :
De nombreux générateurs de scripts existent, comme ceux proposés par Christian ou Eric, parmi d'autres.
En somme, qui peut le plus peut le moins.
Nota :
Un simple fichier Excel pourrait suffire pour réaliser cela avec quelques copier-coller, à condition de connaître les bonnes instructions en ligne de commande DOS et en AutoLISP. Cependant, ici, le sujet est un peu plus complexe.
Bonjour Didier @didier_lourdelle
On est d'accord sur le : qui peut le plus ...
Je ne dis pas le contraire ! et comme indiqué à la fin de mon message, si cela peut servir ....
Je suis tombé sur cette astuce que je trouve simple et intéressante, c'est tout.
Ton script fonctionne sur une LT ?
Ce principe s’applique à AutoCAD LT 2024 et aux versions ultérieures, version métier AutoCAD ainsi qu’aux logiciels compatibles avec le langage AutoLISP.
Dans certains cas, une simple purge des fichiers ne suffit pas : il est nécessaire d’aller plus loin pour adapter le dessin à la charte graphique du client final. Cela peut inclure des actions telles que l’explosion de blocs ou la suppression d’informations superflues pour le client.
Il y a quelques années, j’ai développé un programme permettant de "démanteler" les dessins : supprimer les blocs, placer toutes les entités sur le calque 0, et exploser les polices de caractères.
Une telle démarche nécessite de définir une méthodologie spécifique, adaptée aux besoins et contraintes de chaque entreprise.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Pourquoi mes REPONSES (2 messages) ne sont pas publiées ????????????
Merci Manon.
Christian
Christian REB
Bonjour @Jacques_V_
Merci d’avoir posé cette question sur nos forums ! La communauté a essayé de vous aider au mieux. Si des réponses vous paraissent appropriées, voulez vous avoir l'amabilité de cliquer sur le bouton APPROUVER LA SOLUTION en bas de la réponse qui apporte une solution?
Merci de ne pas accepter comme solution le message que vous êtes en train de lire.
Merci pour vos réponses.
- Il y avait bien le zip. C'est le BAT qui ne fonctionne pas. Peut-être un problème de compatibilité avec Windows 11. Et je n'ai pas les compétences pour recoder quelque chose de similaire. Éventuellement je pourrais concatener du texte dans Libre Office ( sérieusement ) avec la liste issue de dir /b en colonne A, le code à exécuter en colonne B et le concatener en colonne C. En tout cas j'ai saisi le principe : créer un script qui ouvre un dessin, exécute le script, ouvre le dessin suivant, etc. Ça a l'air de fonctionner parfaitement pour l'instant, encore merci.
- Pour info, comme indiqué dans un autre sujet, si je lance automatiquement un script à l'ouverture (mystartup) tout se déroule parfaitement donc les fichiers sont traités au fur et à mesure par les utilisateurs sans avoir besoin de traiter tous les fichiers en masse. Je vais passer du temps à explorer cette voie.
- Merci pour l'astuce DWG TrueView, effectivement avec l'outil de Conversion il peut écrire des fichiers nettoyés et on peut choisir un format ancien pour l'exporter vers d'autres logiciels.
- Les prochaines semaines je vais aussi explorer cette solution qui semble répondre à nos besoins et qui s'appelle MFT MultiFileTool : https://forums.autodesk.com/t5/visual-lisp-autolisp-and-general/running-a-lisp-on-multiple-drawings/...
Cordialement
Bonjour @Jacques_V_, avez-vous pu résoudre votre problème avec les différentes suggestions et solutions essayées ? N'hésitez pas si besoin!
Vous n'avez pas trouvé ce que vous recherchiez ? Posez une question à la communauté ou partagez vos connaissances.