Vytisknout stránku | Zavřít okno

Pravidlo iLogic nefunguje

Vytištěno z: CAD Fórum
Kategorie: Autodesk - stavebnictví, strojírenství, CAD/GIS
Název fóra: Inventor
Popis fóra: Otázky k programům Autodesk Inventor, Inventor Professional a Inventor LT, Product Design Collection a Suite, Factory Design Suite; a digitální prototypy
URL: https://www.cadforum.cz/forum/forum_posts.asp?TID=17735
Datum vytištění: 13.kvě.2026 v 09:17


Téma: Pravidlo iLogic nefunguje
Odeslal: mr.chain
Předmět: Pravidlo iLogic nefunguje
Datum odeslání: 19.srp.2013 v 17:08
Dobrý den,
v modelu řetězového kola chci použít jednoduché pravidla k řízení velikosti úhlu otevření. Pravidla se liší pouze rozsahem hodnot a i přesto dvě fungují a jedno ne.
 
 
If z_pocet_zubu = 4 Or 5 Or 6 Or 7 Or 8 Or 9 Or 10 Or 11 Then
Parameter("alfa_uhel_otevreni") = 74 deg
End If

If z_pocet_zubu = 12 Or 13 Or 14 Or 15 Or 16 Or 17 Or 18 Or 19 Or 20 Or 21 Or 22 Or 23 Or 24 Or 25 Or 26 Or 27 Or 28 Or 29 Then
Parameter("alfa_uhel_otevreni") = 56 deg
End If

If z_pocet_zubu > 29 Then
Parameter("alfa_uhel_otevreni") = 38 deg
End If
Ještě doplním, že pokud se počet zubů pohybuje v rozsahu 12 nahoru, vše funguje jak má. Při hodnotě menší než 12 se nastaví hodnota 56 deg.
 


-------------
Nejsem konstruktér, jsem obkreslovač...



Odpovědi:
Odeslal: Vladimír Michl
Datum odeslání: 19.srp.2013 v 17:35
To chování je logické, podmínka OR není správně zapsána. Musí být X=12 or X=14 or X=15 ...

-------------
Vladimír Michl (moderátor)
ARKANCE CZ - https://arkance.world - arkance.world
(podpora viz helpdesk.arkance-systems.cz)


Odeslal: mr.chain
Datum odeslání: 19.srp.2013 v 17:48

Díky za reakci, nicméně tím to není.

Nefunkční pravidlo jsem zjednodušil na
 
If z_pocet_zubu = 8 Then
Parameter("alfa_uhel_otevreni") = 74 deg
End If
a i přesto se tam stále dosazuje hodnota 56 deg.
 
 
edit.: ještě doplním , že v náčrtu chyby není a úhel 74° jde bez problémů sestrojit.


-------------
Nejsem konstruktér, jsem obkreslovač...


Odeslal: Navara
Datum odeslání: 19.srp.2013 v 20:57
Doporučuji provést dvě úpravy:
1) Podmínku na počet zubů změnit z výčtu hodnot na rozsah
2) Hodnotu parametru uzavřít do závorek
Nakonec je dobré provést aktualizaci dokumentu
 
SyntaxEditor Code Snippet
If z_pocet_zubu >= 4 And z_pocet_zubu <= 11 Then
    Parameter("alfa_uhel_otevreni") = "74 deg"
ElseIf z_pocet_zubu > 11 And z_pocet_zubu <= 29 Then
    Parameter("alfa_uhel_otevreni") = "56 deg"
ElseIf z_pocet_zubu > 29 Then
    Parameter("alfa_uhel_otevreni") = "38 deg"
Else
    MessageBox.Show("Minimalni pozadovany pocet zubu je 4")
End If
InventorVb.DocumentUpdate()


Odeslal: mr.chain
Datum odeslání: 20.srp.2013 v 08:29
Díky, toto opravdu funguje tak jak má.
Snažím se do iLogic proniknout, ale jde to pomalu.


-------------
Nejsem konstruktér, jsem obkreslovač...



Vytisknout stránku | Zavřít okno