iLogic zawiera zestaw funkcji matematycznych, które można dodać do reguł.
W oknie dialogowym Edycja reguły funkcji iLogic skorzystaj z jednego z poniższych sposobów, by uzyskać dostęp do funkcji matematycznych.
Źródłem większości funkcji matematycznych stosowanych w iLogic jest standardowa biblioteka matematyczna VB.NET:
IsNumeric | PI |
MinOfMany | Sqrt |
MaxOfMany | Abs |
Round | Sign |
Dokładność zaokrąglenia po przecinku | Int |
Zaokrąglij do najbliższej wartości przyrostowej | Stałe |
Zaokrąglij do wartości przyrostowej w górę | Log10 |
Zaokrąglij do wartości przyrostowej w dół | Ln |
Ceil | Pow |
Floor | Min |
Sin | Max |
Cos | CDbl |
Tan | EqualWithinTolerance |
iLogic oferuje pewne funkcje matematyczne. Poniższe funkcje emulują funkcje dostępne w standardowych równaniach parametrów Inventor:
Ceil (same as Math.Ceiling) Sign0(a) = 1 if a > 0.0, = 0 otherwise Ln (same as Math.Log)
Ponieważ niektóre funkcje programu Inventor różnią się od standardowych funkcji matematycznych VB.NET o tej samej nazwie, podczas wstawiania ich w regułach iLogic następuje konwersja:
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() i Tan() to standardowe funkcje trygonometryczne, których argumenty wyrażane są w radianach (nie stopniach):
Jeśli w formule trygonometrycznej w oknie dialogowym Edycja reguły wybrano opcję Pobierz bieżący stan, funkcja nie zostanie przekonwertowana na kod VB.NET. Formuła zachowa postać formuły Inventor. Można dokonać ręcznej edycji formuły i zmienić ją w formułę VB.NET (o kątach wyrażonych w radianach).
Aby dokonać zamiany ze stopni na radiany, użyj poniższej formuły:
radiany = stopnie *(PI/180)
Funkcja | Cel | Przykłady: |
---|---|---|
Abs() | Zwraca absolutną wartość argumentu. |
Abs(10) = 10 Abs(-9.87) = 9.87 |
Sqrt() | Zwraca pierwiastek argumentu. |
Sqrt(25) = 5 Sqrt(100) = 10 Sqrt(3) = 1.732051 |
Sign() | Zwraca liczbę wskazującą znak argumentu. |
Jeśli wartość jest dodatnia, Sign(value) = 1 Jeśli wartość jest ujemna, Sign(value) = -1 Jeśli wartość jest równa zeru, Sign(value) = 0 |
Round() | Zaokrągla argument do liczby całkowitej lub do określonego miejsca po przecinku. |
Składnia: Round(argument, opcjonalnie żądana # miejsc po przecinku) Round(2.55689) = 3 Round(2.55689, 1) = 2.6 Round(2.55689, 3) = 2.557 Round(PI, 4) = 3.1416 |
Ceil() | Zaokrągla argument do najbliższej większej liczby całkowitej. |
Ceil(2.56) = 3 Ceil(Sqrt(3))= 2 |
Floor() | Zaokrągla argument do najbliższej mniejszej liczby całkowitej. |
Floor(1.789) = 1 Floor(PI) = 3 |
Log10() | Zwraca bazowy 10 logarytm argumentu. |
Log10(10) = 1 Log10(100) = 2 Log10(15) = 1.176091 |
Ln() | Zwraca naturalny logarytm argumentu. (logarytm bazy e) |
Ln(5) = 1.609438 Ln(37) = 3.610918 |
Pow(argument1, argument2) | Podnosi argument1 do potęgi argumentu2. |
Pow(2, 2) = 2 2 = 4 Pow(2, 3) = 2 3 = 8 Pow(3, 2) = 3 2 = 9 |
Funkcja | Cel | Przykłady: |
---|---|---|
Min(argument1, argument2) | Zwraca mniejszy z obu argumentów. |
Min(2, 4) = 2 Min(9, 4) = 4 Min(Sqrt(2), Sqrt(3)) = 1.4142..... |
Max(argument1,argument2) | Zwraca większy z obu argumentów. |
Max(2, 4) = 4 Max(9, 4) = 9 Sqrt(3)) = 1.73205..... |
MinOfMany( ,,, ) | Zwraca najmniejszy z wielu argumentów. |
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( ,,, ) | Zwraca największy z wielu argumentów. |
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) | Porównuje wartości dwóch parametrów (reprezentowane przez a i b) oraz porównuje różnicę z wartością tolerancji (tu zdefiniowanej jako 0.001). Jeśli różnica jest mniejsza niż próg tolerancji, funkcja zwraca wartość logiczną Prawda. Jeśli różnica jest większa niż próg tolerancji, funkcja zwraca wartość logiczną Fałsz. |
If a = 10.00 and b=10.01 EqualWithinTolerance (a, b, 0.015) = True [Abs(a-b) jest mniejsza od wartości tolerancji 0.015 cala] EqualWithinTolerance (a, b, 0.001) = False [Abs(a-b) jest większa od wartości tolerancji 0.001] |
EqualWithinTolerance(a,b) | Korzysta z domyślnego progu tolerancji równego 0.0000001. |