iLogic fornisce funzioni regola per la gestione dello stato di soppressione dei vincoli di assieme. Queste funzioni sono utili nel corso della definizione delle configurazioni di livello assieme con le regole iLogic.
Ad esempio, si supponga di definire posizioni alternative per un componente in un assieme. È possibile definire tutte le coincidenze necessarie per vincolare il componente in ogni punto. Quindi, è possibile utilizzare una regola per sopprimere e scoprire le coincidenze come necessario per spostare il componente in ogni configurazione.
Autodesk Inventor non consente la presenza di vincoli in conflitto. Creare i vincoli per una posizione di un componente, quindi sopprimerli manualmente prima della creazione di altre serie di vincoli per posizioni alternative dei componenti. Dopo aver creato tutti i vincoli necessari per posizionare il componente per ogni configurazione, è possibile scrivere le regole che consentono di scegliere tra i vincoli.
Per accedere alle funzioni dei vincoli, espandere il nodo Vincoli nella scheda Sistema dell'area Frammenti.
Consente di impostare o di leggere lo stato di soppressione di un vincolo di assieme di primo livello.
Consente di assegnare a ciascun vincolo di riferimento in una regola un nome personalizzato unico:
Se viene modificato manualmente lo stato della soppressione di un vincolo, le regole a cui fa riferimento non vengono attivate automaticamente.
Sintassi
Constraint.IsActive(“Mate:1”)
Constraint.IsActive(“SubAssem.iam”, “Mate:1”)
Esempi
Impostazione dello stato di soppressione:
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
Lettura dello stato di soppressione:
If Constraint.IsActive("MateLeftSide:1") Then (Do something)
Impostazione o lettura dello stato di soppressione di un vincolo in un sottoassieme (specificare il nome file sottoassieme e il nome del vincolo):
Constraint.IsActiveInDoc("SubAssem.iam", "Mate:1")
Per copiare e rinominare tutti i file in un assieme mantenendo tutte le regole intatte, utilizzare Constraint.IsActiveInComponent e specificare il nome del sottoassieme anziché il nome file.
Impostazione tramite il nome del sottoassieme:
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
Lettura tramite il nome del sottoassieme:
Constraint.IsActiveInDoc("SubAssem.iam",”LeftMate”) = true then (Do something)
Consente di sopprimere o scoprire una definizione di iMate.
Constraint.iMateDefIsActive("iMate:1") = False
Consente di sopprimere la definizione di iMate con il nome iMate:1 nel documento della regola corrente. Il risultato è analogo a quello della soppressione mediante il menu contestuale nell'interfaccia utente. Quando è soppressa, la definizione di iMate non è disponibile ai fini delle coincidenze.
Constraint.iMateDefIsActive("SubAssem:1","iMate:1) = False
Consente la soppressione della definizione di iMate con il nome iMate:1 nel componente SubAssem:1.
Constraint.iMateDefIsActive(PartA:1","iMate:1") = True
Consente di scoprire la definizione di iMate con il nome iMate:1, nella parte del componente PartA:1.