Formeln der Feature-Parameter


Syntax in der Dokumentation

Funktionen werden in der Doku mit folgender Syntax beschrieben:

funktionsname(Parameter1: Datentyp1, Parameter2: Datentyp2): Rückgabedatentyp

Dies beschreibt die Funktion namens funktionsname. Diese erwartet, zwei Parameter zu bekommen: Parameter1 mit dem Datentyp Datentyp1 und Parameter2 vom Typ Datentyp2. Die Funktion gibt einen Wert vom Typ Rückgabedatentyp zurück.

Beispiel

distance_point_edge(p: Point, e: Edge): Real

Die Funktion distance_point_edge erwartet zwei Parameter: Einen Point und eine Edge und gibt einen Real-Wert zurück.


Formale Spezifikation

ConditionedExpression

Expression1 ["?" Expression1 ":" Expression1 ]

Wenn der Abschnitt mit dem Fragezeichen existiert, wird überprüft, ob der Ausdruck vor dem Fragezeichen Null ist. Wenn ja, wird der Ausdruck hinter dem Doppelpunkt genommen, wenn nein, der vor dem Doppelpunkt.

Expression2 { ("&" | "|") Expression2}

"&" ist ein logisches Und, "|" ein logisches Oder.

SimpleExpression [ ( "=" | "<" | ">" | "<=" | ">=" | "<>" ) SimpleExpression ]

Das Ergebnis des Vergleichs ist 1 für wahr und 0 für falsch.

[ "+" | "-" | "!" ] Term { ("+" | "-") Term }

"!" ist das logische Nicht. Wenn der Term hinter dem "!" Null ist, ist das Ergebnis 1, wenn nicht, 0

Factor { ( "*" | "/" | "%") Factor }

"%" berechnet den ganzzahligen Rest bei der Division (modulo). Für die Arbeit mit Kommazahlen verwenden Sie die Funktion modulo.

SimpleFactor ["^"SimpleFactor]

"^" ist die Potenzierung.

 

Variable | Number | Constant | Function Call | "(" ConditionedExpression ")"

Über die Klammerung können Formeln beliebig geschachtelt werden.

Function "(" [ ConditionedExpression { "," ConditionedExpression } ] ")"

Parameterlose Funktionen werden mit leeren Klammern aufgerufen: f().

"pi"

"sin" | "cos" | "tan" | ... | "aint" | ...

Die genaue Liste der Funktionen siehe unten.

Letter {LetterOrDigit | "_"}

Variablennamen müssen mit einem Buchstaben beginnen. Die maximale Länge eines Variablennamens bestimmt die zulässige Länge von HiCAD-Macro-Variablen.

(Number1 | Number2) [("e" | "E") ["-" | "+"] Digits]

Beispiele: 1; 1.2; .2; 1e10; 1.23E5.

Digits ["." Digits]

"." Digits

Letter | Digits

"a" | ... | "z" | "ä" | "ö" | "ü" | "A" | ... | "Z" | "Ä" | "Ö" | "Ü"

 "0" | ... | "9"

Digit {Digit}

List = " (" SimpleExpression ( "; " | {"; " SimpleExpression}) ") "

 

Beispiele

(Wenn l größer als 100 ist, erhält man den Wert von 'a', sonst 'b'+20)

(Funktionen müssen, auch wenn sie keine Parameter haben, Klammern haben)

Auswahl aus einer Liste - Die Variable typ gibt an, welcher Wert aus der Liste zurückgegeben werden soll: Ist typ=1, wird 10 zurückgegeben; typ=2 gibt 50 zurück und typ=3 resultiert in der Rückgabe von 100.

Die Werteingabe: Formeln und Variablen