Debugging-commands in the script

Befehle, die die Skript-Programmierung vereinfachen oder die Fehlersuche erleichtern.

Deaktivieren von Skript-Teilen

Block-Kommentierung

--[[

Blockkommentar Beginn

--]]

Blockkommentar Ende

Beispiel für einen auskommentierten, inaktiven Skript-Teil

--[[
run_models("pm_sym_fast");
post_models("r_torque", "T")
--]]

Debugging-Befehle

Siehe hierzu auch Befehle des Abschnitts Controlling script execution.

Command: debug.fsl()

Unterbricht die Skriptausführung und aktiviert den interaktiven Debugger,

Example:

nc_line_cont(x[11], y[11], 0)
nc_line_cont(x[2], y[2], 0)
                                  -- DEBUGGING
debug.fsl()                       -- activate the FSL debugger
debug()                           -- ... deprecated since FEMAG version 8.4

create_mesh_se(Da/2-hj/2, 0+hj/2)

Command: set_break(Z)

Setzt Haltepunkt auf die angegebene Zeile,

Parameter

Z Zeilennummer oder here für die aktuelle Zeile (Angabe “here” in Anführungszeichen ist zu bevorzugen).

Example:

nc_circle(x[1], y[1], x[2], y[2], 360/P/agnp+1)
nc_circle(x[3], y[3], x[4], y[4], 0)
nc_circle(x[5], y[5], x[6], y[6], 0)
nc_circle(x[7], y[7], x[8], y[8], 0)

                             -- DEBUGGING
sleep(3)                     -- wait for 3 seconds
set_break(157)               -- set breakpoint at line 157

nc_line(x[7], y[7], x[5], y[5], 0)
nc_line_cont(x[3], y[3], 0)

Example:

x0,y0 = pd2c(Di/2-ag*2/3, 360*Pm/P)
x1,y1 = pd2c(Di/2-ag/3, 360*Pm/P)
nc_line(x0, y0, x1, y1, 0)

                            -- DEBUGGING
set_break("here")           -- set breakpoint here

create_mesh_se(Di/2-ag/2, ag)

Befehle zur grafischen Ausgabe

Bemerkungen

Punkt- oder Farbattribute sollten in aktuellen FEMAG-Versionen in Form von Zeichenketten angegeben werden, z. B. “red” anstatt red.

Command: point(x1, y1, color, type)

Stellt einen Punkt im Grafikfenster dar

Parameter
x1/y1 Koordinaten
color Farbe (“red”, “green”, “blue”, “black”, … )
type Typ (1, “dot”, “.” oder 2, “cross”, “x” oder 3, “star”, “*” oder 4, “circle”, “o” …)

Beispiel

point(3.5, 9.7, red, 1)          -- deprecated version
point(3.5, 9.7, "red", "dot")    -- to prefer
point(3.5, 9.7, "red", ".")      -- ... with symbolic point-type specifier

Command: line(x1, y1, x2, y2, color)

Stellt eine Gerade im Grafikfenster dar

Parameter
x1/y1 Koordinaten Anfang
x2/y2 Koordinaten Ende
color Farbe (red, green, blue, black, … )

Command: text(x1, y1, “Text”, color, size)

Stellt den angegebenen Text im Grafikfenster dar

Parameter
x1/y1 Koordinaten
Text Auszugebender Text
color Farbe (red, green, blue, black, …)
size Größe

Example:

nc_line_cont(x[11], y[11], 0)
nc_line_cont(x[2], y[2], 0)
                                  -- DEBUGGING
point(x[2], y[2], "red", ".")     -- Ausgaben im Grafikfenster zur Überprüfung
text(x[2], y[2], "P2", "red", 1)  -- charakteristischer Geometriepunkte
point(x[11], y[11], "red", ".")
text(x[11], y[11], "P11", "red", 1)
line(x[11], y[11], x[2], y[2], "red")

debug.fsl()                       -- Aktiviere Debugger