Funzioni componenti in iLogic

iLogic fornisce funzioni regola per l'impostazione o la lettura degli stati di soppressione del componente e dei colori, nonché una funzione per la sostituzione di un componente con un altro. Tali funzioni sono utili per la gestione di configurazioni diverse di parti o di assiemi.

È possibile creare un modello (parte o assieme) che include i componenti necessari per rappresentare tutte le configurazioni valide possibili di un prodotto. Questo metodo è noto come "super modellazione". Quando le parti o i componenti dell'assieme sono troppo complessi o numerosi e non è possibile eseguire la super modellazione, utilizzare la funzione Component.Replace.

Per accedere alle funzioni Componente, espandere il nodo Componenti nella scheda Sistema dell'area Frammenti.

Denominazione componente

Personalizzare tutti i nomi di componente facendo riferimento ai nomi in una regola. Quando si modifica il nome del componente rispetto al nome di default assegnato da Autodesk Inventor, è necessario verificare che non subisca modifiche quando cambiano i file .ipt o .iam.

È possibile ripristinare il nome originale del componente e mantenerne la stabilità. Per modificare il componente, apportare una modifica secondaria al nome, quindi convertirlo nuovamente all'originale.

Per un componente del Centro contenuti, è necessario modificare il nome delle funzioni Component.IsActive e Component.Replace.

Component.IsActive

Consente di impostare o leggere lo stato di soppressione e la struttura distinta componenti di un componente dell'assieme. Utilizzare questa funzione per includere o escludere un componente da una configurazione di assieme.

La funzione può essere utilizzata su un singolo componente o su serie di componenti. Per le serie, utilizzare il nome serie. La serie deve trovarsi allo stesso livello dell'assieme al quale si trova la regola, e non in un sottoassieme.

Non sopprimere i sottocomponenti. È consigliabile eseguire la soppressione da una regola all'interno del componente.

Ad esempio, un assieme denominato Topassembly contiene SubAssembly:1 e tale sottoassieme contiene SamplePart:1.

Utilizzare una regola all'interno di SubAssembly per sopprimere SamplePart:1. Questa regola può includere un parametro che determina lo stato di soppressione, gestibile mediante una regola in TopAssembly.

Quando si utilizza iLogic per sopprimere un componente, la struttura distinta componenti del componente viene impostata su Riferimento. Questa azione impedisce la comparsa del componente nella distinta componenti. Viene visualizzato nella vista Dati modello, ma non nelle viste Strutturata o Solo parti. Se il componente viene scoperto, iLogic ne ripristina lo stato precedente alla soppressione (Normale, Inseparabile Acquistato o Nascosto).

Prima di poter utilizzare una regola iLogic per modificare lo stato di soppressione di un componente di assieme, creare e attivare un nuovo livello di dettaglio personalizzato.

Sintassi

Component.IsActive("ComponentName")

Esempi

È possibile utilizzare 1 anziché true e 0 anziché false.

Per impostare lo stato di soppressione e la struttura distinta componenti:

Component.IsActive("PartA:1") = false
Component.IsActive("PartB:1") = 0
Component.IsActive("PartC:1") = false
Component.IsActive("PartD:1") = 0

Per leggere lo stato di soppressione e la struttura distinta componenti:

MyBooleanParam = Component.IsActive("ComponentName:1)
If Component.IsActive("PartE") Then
' do something
End If

Component.iComponentIsActive

Questa funzione è una variazione di Component.IsActive che consente di impostare o leggere lo stato di soppressione di un componente iPart o iAssembly. Se non viene modificato manualmente il nome del componente, iPart e iAssembly richiedono l'utilizzo di tale sintassi dedicata.

È consigliabile modificare il nome del componente. In tal caso sarà possibile utilizzare Component.IsActive invece di questa funzione.

Sintassi

Component.iComponentIsActive(“iPartParentName:1”)

iPartParentName

Nome della parte della famiglia senza l'estensione nome file .ipt.

Component.Color

Consente di impostare o leggere il colore di un componente.

Sintassi

Component.Color(“iPartA:1”)

Esempi

Impostazione del colore:

Component.Color("iPartA:1") = "Green"
Component.Color("iPartA:2") = "Aluminum (Cast)"
Component.Color("iPartA:3") = "As Material"

Lettura del colore:

MyStringParameter = Component.Color("iPartA:1")

Component.Visible

Consente di impostare o leggere la visibilità di un componente. Questa funzione non modifica la struttura distinta componenti del componente.

Sintassi

Component.Visible("componentName")

Esempi

Impostazione della visibilità:

Component.Visible("Plate") = true
Component.Visible("Bearing") = false

Lettura della visibilità:

parameter = Component.Visible("Plate")
parameter = Component.Visible("Bearing")
If Component.Visible("PartE") Then
do something
End If

Component.SkipDocumentSave

Specifica se un documento componente viene salvato in caso di modifica e successiva soppressione da parte di una regola.

Sintassi

Component.SkipDocumentSave = True

Se l'opzione è impostata su True, il documento componente non viene salvato.

Il valore di default è False (Component.SkipDocumentSave = False); il documento componente viene salvato.

Component.Replace

Sostituisce una parte o un sottoassieme con un altro. Questa funzione può essere utilizzata anche per sostituire le serie dei componenti.

Utilizzare iMate nei componenti che vengono scambiati per mantenere intatti i vincoli di assieme. È possibile scambiare una parte con una parte, una parte con un assieme o un assieme con una parte.

La funzione esegue una ricerca in più cartelle per trovare il file da utilizzare come sostituzione:

Il nome del file può essere un percorso relativo (rispetto ad uno di questi percorsi di ricerca).

Nota: Prima di utilizzare questa funzione, "stabilizzare" il nome del componente per impedirne la modifica durante lo scambio. Per stabilizzare il nome del componente, modificarlo. È anche possibile stabilizzare il nome modificandolo e quindi ripristinando il nome originale. Se non viene stabilizzato il nome, l'operazione di sostituzione modifica il componente di modo che corrisponda al nuovo nome. Sarà quindi impossibile per la regola trovare il componente nel corso di una nuova esecuzione.

Sintassi

Component.Replace(“ComponentToReplaceName”, “OtherPartfilename.ipt”, <replaceAll>)

ComponentToReplaceName

Il nome della parte o del sottoassieme sostituito.

OtherPartfilename

La parte o l'assieme da utilizzare come sostituzione.

<replaceAll>

Impostare questo valore booleano su True per sostituire tutte le istanze di questo componente. Impostare il valore su False per sostituire solo la singola istanza nominata.

Esempio

If PartType = "Type A" Then
Component.Replace("Widget","PartA.ipt", True)
ElseIf PartType = "Type B" Then
Component.Replace("Widget","PartB.ipt", True)
End If

Component.Replace (con livello di dettaglio specificato)

Questa variazione della funzione Component.Replace sostituisce un componente in un assieme con un altro componente di un determinato livello di dettaglio.

Sintassi

Component.Replace("SubAssem:1", "OtherAssemFilename.iam<Level of Detail>", <replaceAll>)

In questa funzione, l'argomento <replaceAll> corrisponde all'argomento descritto per la funzione Component.Replace più generica.

È inoltre possibile sostituire un sottoassieme con lo stesso sottoassieme ad un diverso livello di dettaglio.

Component.ReplaceiPart

Obbligatorio per iPart con parametri personalizzati, questa funzione è consigliata anche per iPart standard. Utilizzarla al posto di Component.Replace se il componente è una iPart. Dopo la sostituzione è possibile utilizzare iPart.ChangeRow o iPart.FindRow per modificare la configurazione della iPart specifica.

Per una iPart con parametri personalizzati, elencare i valori per i parametri personalizzati dopo rowNumber. I valori devono essere elencati nell'ordine in cui sono presenti nella tabella.

Sintassi

Component.ReplaceiPart("iPart1:1", "OtherPartfilename.ipt", True, rowNumber)

Utilizzare rowNumber per sostituire il componente e scegliere contemporaneamente una riga iPart.

Esempi

Per impostare i parametri personalizzati, ripetere i valori personalizzati in Component.ReplaceiPart e, di nuovo, in iPart.ChangeRow o in iPart.FindRow successivamente nella regola.

Per ChangeRow :

Component.ReplaceiPart("iPart1:1", "OtherPartfilename.ipt", True, rowNumber, customParam1, customParam2)
iPart.ChangeRow("iPart1:1", rowNumber, customParam1, customParam2)

Per FindRow:

Component.ReplaceiPart("iPart1:1", "OtherPartfilename.ipt", True, rowNumber, customParam1, customParam2)
i = iPart.FindRow("iPart1:1", "Dia", ">=", 3.0, "r;|", customParam1, customParam2)

MakePath

Definisce il percorso per un nome componente in un sottoassieme. Per specificare il percorso, elencare tutti i livelli di sottoassieme nell'ordine in cui appaiono nella struttura. Questa funzione è obbligatoria se si desidera specificare un nome componente quando lo stesso nome esiste anche in un'altra posizione all'interno dell'assieme.

Sintassi

MakePath(“SubassemblyComponentName”,“PartComponentName”)

Esempi

Component.Color(MakePath("SubAssem1:1", "Part2:1")) = “Green”
Component.IsActive(MakePath("SubAssem1:1", "SubSubAssem2:1", "Part2:1")) = “Yellow”