Aller au contenu principal

Automatiser avec les scripts et les macros

ZWCAD propose plusieurs moyens d'automatiser les tâches répétitives, du plus simple au plus avancé :

OutilPrincipeNiveau
Macro de boutonUne suite de commandes lancée par un bouton ou un raccourci clavier.Simple
Fichier SCRIPT (.scr)Une suite de commandes écrite dans un fichier texte et rejouée par ZWCAD.Simple
Routine LISP (.lsp)Un programme : conditions, calculs, sélection d'objets…Intermédiaire
VBAProgrammation avec l'environnement Visual Basic for Applications.Avancé

Pour le LISP, voir LISP.

Les fichiers SCRIPT​

Un SCRIPT est un fichier texte (extension .scr) qui contient des commandes ZWCAD exactement comme vous les taperiez au clavier, avec leurs options et leurs valeurs. ZWCAD les exécute les unes après les autres.

Écrire un script​

Exemple : dessiner 4 cercles de diamètre 20, espacés de 50, le premier centré en 0,0.

Ouvrez le Bloc-notes de Windows et tapez :

; Mon premier SCRIPT : 4 cercles de diamètre 20
C
0,0
D
20
C
50,0
D
20
C
0,50
D
20
C
50,50
D
20
; Fin du script

Enregistrez le fichier avec l'extension .scr, par exemple Cercles.scr.

Chaque retour à la ligne équivaut à la touche Entrée. Le même script peut aussi s'écrire sur une seule ligne, chaque espace valant Entrée :

C 0,0 D 20 C 50,0 D 20 C 0,50 D 20 C 50,50 D 20
astuce

Pour connaître la syntaxe exacte d'une commande, exécutez-la une fois au clavier puis appuyez sur F2 : la fenêtre de texte affiche toutes les invites et réponses. Il suffit de les recopier dans le script.

attention
  • Un espace en trop ou manquant suffit à décaler tout le script : relisez-le attentivement.
  • Les boîtes de dialogue interrompent le script. Utilisez la version « ligne de commande » des commandes, précédée d'un tiret (par exemple -CALQUE au lieu de CALQUE).
  • Un script ne peut pas faire de pause pour attendre un clic de l'utilisateur.
  • Si une valeur contient des espaces (un chemin de fichier, par exemple), placez-la entre guillemets.

Exécuter un script​

Commande : SCRIPT (alias SCR)
Ruban : Gérer › Applications › Exécuter le Script

1️⃣ Lancez SCRIPT.
2️⃣ Sélectionnez le fichier .scr.
3️⃣ Le script s'exécute. En cas d'erreur de syntaxe, il s'arrête : corrigez le fichier, enregistrez-le et relancez-le.

Commande / toucheEffet
ÉchapInterrompt le script en cours.
REPRENDREReprend un script interrompu.
RSCRIPTPlacé en dernière ligne du script, le relance en boucle.

Lancer un script au démarrage de ZWCAD​

Vous pouvez exécuter un script automatiquement à l'ouverture de ZWCAD en ajoutant l'option /B à la cible du raccourci de ZWCAD (clic droit sur le raccourci › Propriétés › Cible) :

"<dossier d'installation de ZWCAD>\ZWCAD.exe" /B "C:\Scripts\MonScript.scr"

Ce qu'un script peut contenir​

En plus des commandes, un script peut charger et lancer des programmes :

; Charger un fichier LISP puis lancer sa commande
(load "MonFichierLsp")
MaCommandeLsp

Idées d'utilisation : régler des variables système sur plusieurs postes, insérer un cartouche, préparer des présentations, ouvrir plusieurs dessins…

Les macros de boutons​

Une macro est la suite de commandes associée à un bouton ou à un raccourci clavier. Les possibilités sont les mêmes qu'avec un script ; la différence est que la macro est lancée depuis l'interface au lieu d'un fichier.

Exemple de macro qui bascule la variable 3DOSMODE (accrochage aux nuages de points) entre 0 et 128 :

^C^C(if(= (getvar "3DOSMODE") 0)(setvar "3DOSMODE" 128)(setvar "3DOSMODE" 0))
ÉlémentRôle
^C^CAnnule la commande en cours avant de lancer la macro.
(...)Une expression LISP peut être placée directement dans la macro.

Pour créer une macro et l'associer à un bouton ou à une touche : Personnaliser l'interface (CUI) et Raccourcis clavier et alias de commandes.

info

Une macro écrite pour un autre logiciel ne fonctionnera pas forcément telle quelle : vérifiez les noms de commandes et leurs options, puis testez-la.

Les macros VBA​

info

Le VBA est disponible uniquement dans ZWCAD Professional. Le détail est présenté dans la page VBA.

Ruban : Gérer › Applications

CommandeRubanUtilisation
EXECVBAMacro VBAExécute, modifie, crée ou supprime une macro VBA.
VBAIDEEditeur Visual BasicOuvre l'éditeur Microsoft Visual Basic for Applications.
GESTVBAGestionnaire VBACrée, charge, enregistre ou décharge des projets VBA.
CHARGVBACharge un fichier de projet VBA (.dvb).
attention

Le modèle objet VBA de ZWCAD est proche mais pas identique à celui des autres logiciels de CAO compatibles DWG. Les macros simples fonctionnent généralement sans modification ; les macros avancées demandent souvent une adaptation du code. Testez chaque macro avant de la déployer.

astuce

L'option Activer la protection antivirus des macros se trouve dans OPTIONS › onglet Préférences utilisateur › Options Macro VBA.