Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

In diesem Fall sollten alle Eingabevariablen im Eingabeoperator aufgelistet sein:

Format:

Code Block

Input(<Liste der Variablenbezeichner, getrennt durch Komma>);


Zum Beispiel:

Code Block

Input(x0,y0,z0,x1,y1,z1);


Der Ausgabeoperator sollte ebenfalls definiert werden.


Format:

Code Block

Output(<Liste der Variablenbezeichner, getrennt durch Kommata>);


Eine benutzerdefinierte Funktion, die auf diese Weise erstellt wurde, muss in einem Macro-Ordner liegen, der sich immer im Ordner des aufgerufenen Skripts befinden muss. Wenn die benutzerdefinierte Funktion verwendet wird, wird der Dateiname des Skripts (ohne die Erweiterung .ppm) so verwendet, als handele es sich um eine integrierte Funktion.


Format:

Code Block

<Dateiname>(<Liste der Eingabeparameter>)


Hier finden Sie ein Beispiel einer benutzerdefinierten Funktion:

Code Block

// box.ppm

...

 - Definiert eine benutzerdefinierte Quader-Funktion.

...


// Die benutzerdefinierte Funktion wird wie folgt aufgerufen:

...


//     B = Box(Xmin, Ymin, Zmin, Xmax, Ymax, Zmax);

...


// Die Funktion erstellt einen 3D-Quader mit den angegebenen Minimal-/Maximalwerten

...


Input(x0,y0,z0,x1,y1,z1);

...


R = Rectangle(x1-x0, y1-y0,     // Rechteck mit Xmin = x0, Xmax= x1

...


(x0+x1)/2, (y0+y1)/2);  // Ymin = y0, Ymax = y1

...


T = Thickness(R, z1-z0);   // Tiefe = Zmax - Zmin

...


Output(Move(T, 0, 0, z0)); // Ergebnis entlang z zu Zmin verschieben


Das Skript unten nennt sich quader_einblenden.ppm. Es ruft die benutzerdefinierte Funktion quader.ppm auf

Code Block

// quader_einblenden.ppm verwendet die benutzerdefinierte Funktion quader.ppm im Macro-Ordner.

...


x = Parameter("Größe", 5, LINEAR, GreaterThan(0));

...


r1 = Parameter("r1", 0.5, LINEAR, GreaterThan(0));

...


b0 = Box(0, 0, 0, x, x, x);

...


b1 = G3Fillet(b0, Point(x/2, 0, 0), Array(r1, r1*2));

...


Output(b1);


Der Speicherort ist bei der Verwendung von parametrischen Skripten als benutzerdefinierte Funktionen extrem wichtig. Wenn sich das im obigen Beispiel verwendete Skript quader_einblenden.ppm im Ordner D:\Symbole befindet, kann das Skript quader.ppm nur gefunden werden, wenn es sich im Ordner D:\Symbole\Macro befindet.