Funkcje wiązań zespołu — odniesienie (iLogic)

iLogic udostępnia funkcje reguł służące do sterowania stanem wyłączenia wiązań zespołu; są one przydatne podczas definiowania konfiguracji na poziomie zespołu przy pomocy reguł iLogic.

Załóżmy na przykład, że musimy zdefiniować alternatywne pozycje dla komponentu w zespole. Można zdefiniować wszystkie wiązania potrzebne, by zatrzymać komponent w każdej z lokalizacji. Następnie, używając reguły można wyłączać i włączać wiązania zależnie od potrzeb, by przemieścić komponent w każdej z konfiguracji.

Program Inventor nie dopuszcza wiązań, które się wzajemnie wykluczają. Utwórz wiązania dla komponentu w jednej pozycji, a następnie ręcznie dokonaj ich wyłączenia, zanim utworzysz kolejne zestawy wiązań dla alternatywnych pozycji komponentu. Po utworzeniu wszystkich wiązań wymaganych przez komponent w każdej z konfiguracji możesz stworzyć reguły pozwalające wybierać pomiędzy wiązaniami.

Aby uzyskać dostęp do funkcji wiązań zespołu, rozwiń węzeł Wiązania na karcie System w polu Szablony kodu okna dialogowego Edycja reguły funkcji iLogic.

Constraint.IsActive

Wybiera lub odczytuje stan wyłączenia wiązania na górnym poziomie zespołu.

Każdemu z wiązań, do których odniesienia znajdują się w regule, przypisz unikatową, własną nazwę:

Ręczna zmiana stanu wyłączenia wiązania nie powoduje automatycznego uruchomienia reguł zawierających odniesienia do tego wiązania.

Składnia

Constraint.IsActive("Mate:1")

Constraint.IsActive("SubAssem.iam", "Mate:1")

Przykłady

Wybór stanu wyłączenia:

If ConfigStyle = “A” Then
Constraint.IsActive("MateLeftSide:1") = true
Constraint.IsActive("MateRightSide:2") = false
ElseIf ConfigStyle = “B” Then
Constraint.IsActive("MateLeftSide:1") = false
Constraint.IsActive("MateRightSide:2") = true
End If

Odczyt stanu wyłączenia:

If Constraint.IsActive("MateLeftSide:1")  Then (Do something)

Wybierz lub odczytaj stan wyłączenia wiązania w podzespole (określ nazwę pliku podzespołu oraz nazwę wiązania):

Constraint.IsActiveInDoc("SubAssem.iam", "Mate:1")

Aby skopiować i zmienić nazwy wszystkich plików w zespole bez naruszenia reguł, użyj funkcji Constraint.IsActiveInComponent, podając nazwę podzespołu zamiast nazwy pliku.

Wybór z użyciem nazwy podzespołu:

If ConfigStyle = “A” Then
Constraint.IsActiveInDoc("SubAssem.iam", “LeftMate”) = true
Constraint.IsActiveInDoc("SubAssem.iam", “RightMate”) = false
ElseIf ConfigStyle = “B” Then
Constraint.IsActiveInDoc("SubAssem.iam", “LeftMate”) = false
Constraint.IsActiveInDoc("SubAssem.iam", “RightMate”) = true
End If

Odczyt z użyciem nazwy podzespołu:

Constraint.IsActiveInDoc("SubAssem.iam",”LeftMate”) = true then (Do something)

Constraint.iMateDefIsActive

Wyłącza lub włącza definicję wiązania iMate.

Constraint.iMateDefIsActive(“iMate:1”) = False

Wyłącza definicję wiązania iMate o nazwie iMate:1 w bieżącym dokumencie reguły. Rezultat jest identyczny, jak w przypadku wyłączenia za pośrednictwem menu kontekstowego w interfejsie użytkownika. Wyłączona definicja iMate nie jest dostępna dla celów tworzenia wiązań.

Constraint.iMateDefIsActive(“SubAssem:1”,“iMate:1) = False

Wyłącza definicję wiązania iMate o nazwie iMate:1 w komponencie SubAssem:1.

Constraint.iMateDefIsActive(PartA:1”,“iMate:1”) = True

Włącza definicję wiązania iMate o nazwie iMate:1 w części komponentu PartA:1.