iLogic oferuje funkcje reguł służące do sterowania stanem wyłączenia wiązań zespołu. Funkcje te są 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.
Autodesk 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ń, rozwiń węzeł Wiązania w karcie Systemowe w polu Skrawki.
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)
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.