Справка по функциям работы с зависимостями сборки в iLogic

iLogic предоставляет функции для правил, позволяющие блокировать зависимости сборки. Эти функции используются при определении конфигураций уровня сборки с помощью правил iLogic.

Например, предположим, что необходимо определить альтернативные положения для компонента в сборке. Можно определить все совмещения, необходимые для ограничения компонента в каждом местоположении. Затем можно использовать правило, чтобы подавить или восстановить эти совмещения, когда возникает необходимость переместить компонент в каждой конфигурации.

В Inventor создание конфликтующих зависимостей не разрешено. Создайте зависимости для одного положения компонента, а затем подавите их вручную, чтобы создать дополнительные наборы зависимостей для альтернативных положений компонента. После создания всех зависимостей, необходимых для размещения компонента для каждой конфигурации, можно написать правила, позволяющие сделать выбор между этими зависимостями.

Для доступа к функциям зависимостей сборки разверните узел "Зависимости" на вкладке "Система" в области "Фрагменты" в диалоговом окне редактирования правил iLogic.

Constraint.IsActive

Задает или читает состояние подавления для зависимости сборки верхнего уровня.

Каждой зависимости, включенной в правило, назначьте уникальное пользовательское имя:

Если вручную изменить состояние подавления зависимости, то это не приводит к автоматическому запуску правил, ссылающихся на нее.

Синтаксис

Constraint.IsActive("Mate:1")

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

Примеры

Задать состояние подавления:

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

Читать состояние подавления:

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

Задать или читать состояние подавления зависимости в узле (указывается имя файла узла и имя зависимости):

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

Чтобы копировать или переименовать все файлы сборки без изменения правил, используйте функцию Constraint.IsActiveInComponent и укажите вместо имени файла имя узла.

Задать с использованием имени узла:

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

Читать с использованием имени узла:

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

Constraint.iMateDefIsActive

Подавляет или восстанавливает описание конструктивной пары.

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

Подавляет описание конструктивной пары с именем iMate:1 в текущем документе правила. Результат действия этой функции аналогичен подавлению описания через контекстное меню в интерфейсе пользователя. Если описание конструктивной пары подавлено, оно недоступно для сопряжения.

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

Подавляет описание конструктивной пары с именем iMate:1 в компоненте SubAssem:1.

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

Восстанавливает описание конструктивной пары с именем iMate:1 в детали компонентаPartA:1.