iLogic bietet eine Reihe an mathematischen Funktionen, die Regeln hinzugefügt werden können.
Wählen Sie im iLogic-Dialogfeld Regel bearbeiten eine der folgenden Methoden, um auf die Mathematikfunktionen zuzugreifen:
In der Standard-Mathematikbibliothek in VB.NET sind die meisten Mathematikfunktionen enthalten, die in iLogic verwendet werden:
IsNumeric | PI |
MinOfMany | Wurzel |
MaxOfMany | Abs |
Rundung | Vorzeichen |
Dezimalstellen für Rundung | Int |
Bis zum nächsten Inkrement runden | Fest |
Bis zu Inkrement aufrunden | Log10 |
Bis zu Inkrement abrunden | Ln |
Obergrenze | Potenz |
Untergrenze | Min. |
Sin | Max. |
Cos | CDbl |
Tan | EqualWithinTolerance |
iLogic bietet einige Mathematikfunktionen. Die folgenden Funktionen emulieren die in den Standard-Parametergleichungen in Inventor verfügbaren Funktionen:
Ceil (same as Math.Ceiling) Sign0(a) = 1 if a > 0.0, = 0 otherwise Ln (same as Math.Log)
Da sich bestimmte Inventor-Funktionen von den gleichnamigen Standard-Mathematikfunktionen in VB.NET unterscheiden, werden sie beim Erfassen zur Verwendung in einer iLogic-Regel konvertiert:
Sin(0) = 0 | Cos(PI) = -1 |
Sin(PI) = 0 | Tan(0) = 0 |
Sin(PI/2) = 1 | Tan(PI/4) = 1 |
Cos(0) = 1 | PI = 3.1415926...... |
Cos(PI/2) = 0 |
Sin(), Cos() und Tan() sind standardmäßige Trigonometriefunktionen. Die Argumente werden im Bogenmaß (nicht in Grad) angegeben:
Wenn Sie die Option Aktuellen Status erfassen im Dialogfeld Regel bearbeiten in einer trigonometrischen Formel verwenden, wird sie nicht in den VB.NET-Code konvertiert. Die Formel wird stattdessen als Inventor-Formel beibehalten. Sie können die Formel manuell ändern, um sie in eine VB.NET-Formel umzuwandeln (Winkelangabe in Bogenmaßeinheit).
Verwenden Sie zum Konvertieren von Grad in Bogenmaß die folgende Formel:
Bogenmaß = Grad * (PI/180)
Funktion | Zielsetzung | Beispiele |
---|---|---|
Abs() | Gibt den absoluten Wert des Arguments aus. |
Abs(10) = 10 Abs(-9.87) = 9.87 |
Sqrt() | Gibt die Quadratwurzel des Arguments aus. |
Sqrt(25) = 5 Sqrt(100) = 10 Sqrt(3) = 1.732051 |
Sign() | Gibt eine Zahl aus, die das Vorzeichen des Arguments kennzeichnet. |
Wenn der Wert positiv ist, ist der ausgegebene Wert = 1 Wenn der Wert negativ ist, ist der ausgegebene Wert = -1 Wenn der Wert Null ist, ist der ausgegebene Wert = 0 |
Round() | Rundet das Argument auf eine ganze Zahl (Ganzzahl) oder auf eine bestimmte Dezimalstelle auf. |
Syntax: Round(Argument, optionale Angabe der gewünschten Dezimalstellenanzahl) Round(2.55689) = 3 Round(2.55689, 1) = 2.6 Round(2.55689, 3) = 2.557 Round(PI, 4) = 3.1416 |
Ceil() | Rundet das Argument auf die nächsthöhere ganze Zahl auf. |
Ceil(2.56) = 3 Ceil(Sqrt(3))= 2 |
Floor() | Rundet das Argument auf die nächstniedrigere ganze Zahl ab. |
Floor(1.789) = 1 Floor(PI) = 3 |
Log10() | Gibt den Logarithmus des Arguments zur Basis 10 aus. |
Log10(10) = 1 Log10(100) = 2 Log10(15) = 1.176091 |
Ln() | Gibt den natürlichen Logarithmus des Arguments aus (Logarithmus zur Basis e). |
Ln(5) = 1.609438 Ln(37) = 3.610918 |
Pow(Argument1, Argument2) | Gibt das Ergebnis nach Potenzieren von Argument1 mit Argument2 aus. |
Pow(2, 2) = 2 2 = 4 Pow(2, 3) = 2 3 = 8 Pow(3, 2) = 3 2 = 9 |
Funktion | Zielsetzung | Beispiele |
---|---|---|
Min (Argument1, Argument2) | Gibt bei zwei Argumenten das kleinere aus. |
Min(2, 4) = 2 Min(9, 4) = 4 Min(Sqrt(2), Sqrt(3)) = 1.4142..... |
Max (Argument1, Argument2) | Gibt bei zwei Argumenten das größere aus. |
Max(2, 4) = 4 Max(9, 4) = 9 Sqrt(3)) = 1.73205..... |
MinOfMany( ,,, ) | Gibt bei vielen Argumenten das kleinste aus. |
MinOfMany(2,4,3,6,7,8) = 2 MinOfMany(9,4,5,67,3,5) = 3 MinOfMany(Sqrt(2), Sqrt(3), Sin(PI/2)) = 1 |
MaxOfMany( ,,, ) | Gibt bei vielen Argumenten das größte aus. |
MaxOfMany(2,4,3,6,7,8) = 8 MaxOfMany(9,4,5,67,3,5) = 67 MaxOfMany(Sqrt(2), Sqrt(3), Sin(PI/ignored>/2)) = 1.73205..... |
EqualWithinTolerance (a, b, 0.001) | Vergleicht die Werte zweier Parameter (dargestellt durch aund b), und vergleicht die Differenz mit dem Toleranzwert (in diesem Fall 0,001). Wenn die Differenz kleiner als der Toleranzwert ist, gibt die Funktion den Booleschen Wert True aus. Wenn die Differenz größer als der Toleranzwert ist, gibt die Funktion den Booleschen Wert False aus. |
If a = 10.00 and b=10.01 EqualWithinTolerance(a, b, 0.015) = True [Abs(a-b) ist kleiner als der Toleranzwert von 0,015 Zoll] EqualWithinTolerance(a, b, 0.001) = False [Abs(a-b) ist größer als der Toleranzwert von 0.001 Zoll] |
EqualWithinTolerance (a, b) | Verwendet einen Standard-Toleranzwert von 0,0000001. |