Funktionsreferenz

Eingebaute Mathematik-, Rundungs- und Textfunktionen.

Die Formula Engine enthält eingebaute Funktionen für Mathematik, Rundung, Logik und Textverarbeitung.

Mathematische Funktionen

abs(x)          Absolutbetrag                  abs(-5) = 5
ceil(x)         Aufrunden                      ceil(4.2) = 5
ceiling(x)      Aufrunden (Alias)              ceiling(4.2) = 5
floor(x)        Abrunden                       floor(4.8) = 4
round(x)        Auf Ganzzahl runden            round(4.5) = 5
round(x; n)     Auf n Nachkommastellen runden  round(3.456; 2) = 3.46
truncate(x; n)  Nach n Stellen abschneiden     truncate(3.456; 2) = 3.45
min(a; b; ...)  Minimum                        min(3; 1; 4) = 1
max(a; b; ...)  Maximum                        max(3; 1; 4) = 4
sqrt(x)         Quadratwurzel                  sqrt(16) = 4
pow(x; n)       Potenz                         pow(2; 3) = 8
log(x)          Natürlicher Logarithmus        log(e) = 1
log10(x)        Zehnerlogarithmus              log10(100) = 2
exp(x)          Exponentialfunktion            exp(1) = 2.718...

Bedingungen und Vergleich:
If(Bedingung; wennWahr; wennFalsch)     Auswahl nach Bedingung            If(5 > 3; 10; 20) = 10
Case(Bedingung1; Wert1; ...; Standard)  Wert der ersten wahren Bedingung  Case(2 > 3; 10; 2 > 1; 20; 0) = 20
Equal(a; b)                             Gleich (Zahlen oder Text)         Equal("steel"; "steel") = 1
Unequal(a; b)                           Ungleich (Zahlen oder Text)       Unequal("steel"; "wood") = 1

Logische Operatoren:
a and b  Beide Bedingungen sind wahr         1 and 0 = 0
a or b   Mindestens eine Bedingung ist wahr  1 or 0 = 1
not a    Verneinung                          not 0 = 1

Text:
len(text)          Textlänge                   len("hello") = 5
text(value)        Zahl in Text                text(42) = "42"
number(text)       Text in Zahl                number("42") = 42
concat(a; b; ...)  Texte verketten             concat("hi"; " "; "there") = "hi there"
join(sep; a; ...)  Mit Trennzeichen verbinden  join("-"; "a"; "b"; "c") = "a-b-c"

Trigonometrische Funktionen

Trigonometrische Funktionen arbeiten in Radiant. Um Grad umzurechnen, multiplizieren Sie mit π/180.

sin(x)       Sinus (Bogenmaß)                      sin(0) = 0
cos(x)       Kosinus                               cos(0) = 1
tan(x)       Tangens                               tan(0) = 0
asin(x)      Arkussinus                            asin(1) = π/2
acos(x)      Arkuskosinus                          acos(1) = 0
atan(x)      Arkustangens                          atan(1) = π/4
atan2(y; x)  Winkel eines Punkts (erst y, dann x)  atan2(1; 1) = π/4

Rundung

  • ceil(x) / ceiling(x) — immer aufrunden, z. B. für Materialmengen.
  • floor(x) — immer abrunden.
  • round(x) — zur nächsten Ganzzahl runden.
  • round(x; n) — auf n Nachkommastellen runden.
  • truncate(x; n) — auf n Stellen abschneiden, ohne zu runden.

Bedingungen und Vergleich

  • If(Bedingung; WertWennWahr; WertWennFalsch) — liefert einen von zwei Werten: If(5 > 3; 10; 20) = 10.
  • Case(Bedingung1; Wert1; ...; Standard) — liefert den Wert der ersten wahren Bedingung: Case(2 > 3; 10; 2 > 1; 20; 0) = 20. Jede Bedingung ist ein Vergleich.
  • Equal(a; b) — 1, wenn die Werte gleich sind, auch bei Text: Equal("steel"; "steel") = 1. Wie a == b.
  • Unequal(a; b) — 1, wenn sich die Werte unterscheiden: Unequal("steel"; "wood") = 1. Wie a != b.

Logik und Text

  • a and b, a or b, not a — logische Operatoren für Bedingungen, zum Beispiel If($width > 1000 and $height > 2000; 1; 0).
  • len(text), text(value), number(text) — Grundfunktionen für Strings.
  • concat(a; b; ...), join(separator; v1; v2; ...) — Texte zusammensetzen.

Verwenden Sie ceil() für Stückzahlen und Zuschnittmengen, wenn nur ganze Einheiten beschafft werden können.