FEMAG Script Language (FSL)
Ausführen einer Skriptdatei und Steuerung des Ablaufs

Ausführen einer Skriptdatei und Steuerung des Ablaufs


Interaktiver Aufruf

Maskenfenster unter Menüpunkt Select Input File:

load_scriptfile_1.png


Untermenü Select Scriptfile:

load_scriptfile_2.png


Auswahl einer Skriptdatei, d. h. Datei mit der Endung fsl über die Menüpunkte Open exist. File (Auswahlfenster) oder SelectFile (Angabe des Dateinamens):

load_scriptfile_3.png



Aufruf mit dem Start von FEMAG

Beispiel für Aufruf unter Linux:

xfemag64 scriptfile.fsl arg1 arg2 arg3

Beispiel für Aufruf unter Windows:

wfemagw64.exe scriptfile.fsl arg1 arg2 arg3

Die zusätzlichen Argumente arg1, arg2 usw. sind optional. Im Skript kann auf diese bei Bedarf über die Tabelle "arg" zugegriffen werden.

FSL-Beispiel für Zugriff auf Argumente:

Narg = table.getn(arg)
printf("Number of arguments %d",Narg)
for i=0,Narg do  
  printf("Element %d of table: %s",i,arg[i])
end

Ausgabe des obigen Beispiels:

Number of arguments 3
Element 0 of table: scriptfile.fsl
Element 1 of table: arg1
Element 2 of table: arg2
Element 3 of table: arg3

Auf Argumente des FEMAG-Aufrufs links der angegebenen Skriptdatei kann bei Bedarf mit negativen Indices zugegriffen werden.

Beispiel:

i = -1
printf("Element %d of table: %s",i,arg[i])

Ausgabe:

Element -1 of table: ./path_to_femag_binary/xfemag64



Beeinflussen der Ausgaben

Über zusätzliche Argumente beim Aufruf von FEMAG kann die Darstellung des Masken- und des Grafikfensters unterdrückt werden.

Beispiel für das Unterdrücken beider Fenster über den Schalter -b:

xfemag64 -b scriptfile.fsl arg1 arg2 arg3

Beispiel für das Unterdrücken des Maskenfensters über den Schalter -g:

xfemag64 -g scriptfile.fsl arg1 arg2 arg3

DXF-Konvertierung: Mit dem Schalter -c wird aus den Nodechain-Definitionen einer FSL-Datei eine DXF-Datei erstellt:

xfemag64 -c scriptfile.fsl 


Parameter   verbosity

Legt den Grad der Ausgaben während der Skript-Ausführung in der Konsole, dem Masken-Fenster und den Log-Dateien fest.

Parameter
0Keine Rückmeldung
xMit Wert von x zunehmender Umfang der Rückmeldung

Beispiel:

  verbosity = 2     -- default level of feedback
  verbosity = 1     -- supress informativ feedback except for errors and warnings



Steuerung der Skriptausführung

Parameter   exit_on_end

Legt das Verhalten nach der Skriptausführung fest.

Parameter
trueFEMAG wird nach Skriptausführung verlassen
falseFEMAG bleibt zur weiteren interaktiven Bearbeitung geöffnet


Parameter   exit_on_error

Legt das Verhalten nach einem Fehler während der Skriptausführung fest.

Parameter
trueFEMAG wird nach Fehler verlassen
falseFEMAG meldet Fehler und bleibt geöffnet


Befehl:   stop (  ) 

Der Befehl beendet die Skriptausführung.

Beispiel:

  calc_field_single(1,restored,0.01)
  
  stop()           -- Beende Skriptausführung vorzeitig
  
  color_gradation(0,0,tot,Babs,0,2,"example_Babs.eps") 
  save_model(close)


Befehl:   error ( "Text"  ) 
Der Befehl bricht die Skriptausführung mit einer Fehlermeldung ab.
Parameter
TextBeschreibung des Fehlers,

Befehl:   sleep ( t  ) 
Wartet mit der weiteren Skriptausführung die angegebene Zeitdauer
Parameter
tWartezeit in Sekunden
Beispiel:
  color_gradation(0,0,"tot","ur",0,0,"")

  sleep(2)        -- Warte für 2 Sekunden

  color_gradation(0,0,"tot","Babs",0,1500,"")