Table of Contents
Inleiding
Het CAD-programma kan scripts verwerken. Scripts zijn tekstbestanden gevuld met CAD-commando’s. Dit kan handig zijn voor kleine repeterende taken. Gecombineerd met rekenbladen is het mogelijk duizenden commando’s via een rekenblad te laten bedenken en in te voeren in het CAD-programma.
Dit deel maakt uitstapjes naar rekenbladen. Hiervoor wordt LibreOffice gebruikt. De voorbeelden zijn vrijwel één op één te gebruiken in combinatie met andere programma’s.
Een voorbeeld van een complexe actie is het importeren van een bestand met GPS-coördinaten in een CAD-programma.
Scripts
Een script is een tekstbestand met extensie SCR. Laten we een eenvoudig voorbeeld maken met wat basiscommando’s.
Voorbeelden
Plakken op de commandoregel
Plak het volgende eens op de commandoregel in een nieuwe lege tekening:
L -1,0 1,0 1<225 0,1 MI L @ 0,0 N C @ 0.8 Z E
Dat levert dit plaatje op:
Als we de regel uit elkaar pluizen, iedere spatie is een enter-toets:
L -1,0 1,0
L, commando Line. Spatie komt overeen met een enter-toets. Van punt -1,0 enter naar 1,0 enter. Een extra enter om het commando af te sluiten.
.
Een enter om het laatste commando te herhalen. Commando Line is dus weer actief.
1<225 0,1
Van polair coördinaat r is 1 en hoek is 225 graden, naar punt 0,1. Weer die extra enter.
MI L @ 0,0 N
MI, commando Mirror. Select objects: L (last, laatst getekende object) met extra enter om de vraag te stoppen. @: laatst opgegeven punt (0,1) en 0,0 als twee punt van spiegellijn. N, origineel niet weggooien.
C @ 0.8
C, commando Circle, @, laatst opgegeven punt 0,0 en straal 0.8.
Z E
Z, zoom, E, extents.
Een script-bestand als vervolg
Je zou deze instructie ook in een tekstbestand kunnen stoppen. Zo ziet anarchy.scr er uit:
L -1,0 1,0 1<225 0,1 MI L @ 0,0 N C @ 0.8 Z E
of
L -1,0 1,0
1<225 0,1
MI L @ 0,0 N
C @ 0.8
Z E
of
L -1,0 1,0
1<225 0,1
MI L @ 0,0 N
C @ 0.8
Z E
- Merk op dat ieder regeleinde hetzelfde doet als een spatie, het CAD-programma ziet het als een enter.
- Het tekstbestand bevat achter de allerlaatste instructie exact één nieuwe lege regel.
- Wil je het script draaien, geef dan het commando script.
Een script-bestand met repeterende commando’s
Een script is met name interessant als het veel werk uit handen neemt. Iedere keer standaardlagen aanmaken in een nieuwe tekening, of herstellen na het commando purge bijvoorbeeld.
Het commando layer kent ook een commandoregel-variant: -layer. Bijvoorbeeld:
-layer make dikke_lijnen color dikke_lijnen 5
Als je dat plakt dan kom je tot de ontdekking dat er getracht wordt een laag te maken met de naam “dikke_lijnen color dikke_lijnen 5
“. Laagnamen mogen immers spaties bevatten. Liggende streepjes in plaats van spaties is altijd een beter idee maar dat lost in dit geval niets op.
In een script werkt het wel. Het script ziet er dan zo uit:
-layer make "dikke_lijnen" color 5 "dikke_lijnen"
Het spreekt voor zich dat je zo makkelijk een bestand kan maken met een hele lading laagnamen, zoals dit:
-layer m "sporen_overig" on "sporen_overig" t "sporen_overig" u "sporen_overig" c 160 "sporen_overig" p p "sporen_overig" l "continuous" "sporen_overig"
-layer m "krassporen" on "krassporen" t "krassporen" u "krassporen" c 20 "krassporen" p p "krassporen" l "continuous" "krassporen"
-layer m "gemeten_informatie" on "gemeten_informatie" t "gemeten_informatie" u "gemeten_informatie" c 157 "gemeten_informatie" p p "gemeten_informatie" l "continuous" "gemeten_informatie"