Funkce komponenty v modulu iLogic

Modul iLogic poskytuje funkce pro nastavení nebo čtení stavů vypnutí a barev komponenty a také funkci pro výměnu jedné komponenty za druhou. Tyto funkce jsou užitečné pro řízení různých konfigurací součástí nebo sestav.

Lze vytvořit model (součást nebo sestavu), který zahrnuje komponenty nutné k znázornění všech možných platných konfigurací výrobku. Tato metoda je známá jako „super modelování“. Když jsou komponenty součástí nebo sestavy příliš složité nebo je jich hodně a super modelování se stane nepraktickým, použijte funkci Component.Replace.

Pro zpřístupnění funkcí komponenty rozbalte položku Komponenty na kartě Systém v oblasti Fragmenty.

Pojmenování komponent

Před odkazováním na názvy v pravidle si přizpůsobte názvy všech komponent. Pokud změníte název komponenty z výchozího názvu přiřazeného aplikací Autodesk Inventor, zajistíte, že se název nezmění, i když se změní odkazovaný soubor .ipt nebo .iam.

Můžete změnit název komponenty zpět na její původní název a stále zachovat její stabilitu. Abyste změnili komponentu, proveďte malou změnu názvu a pak ho opravte zpět na původní název.

U komponent obsahového centra je změna názvu nutná pro funkci Component.IsActive a také pro funkci Component.Replace.

Component.IsActive

Nastavuje nebo čte stav vypnutí a struktury rozpisky komponenty sestavy. Použijte tuto funkci k zahrnutí nebo vyloučení komponenty z konfigurace sestavy.

Tato funkce funguje na vzoru jedné komponenty nebo vzoru komponent. Pro vzory použijte názvy vzorů. Vzor musí být ve stejné úrovni sestavy jako pravidlo a nesmí být v podsestavě.

Podkomponenty nevypínejte. Lepší alternativou je provedení vypnutí z pravidla uvnitř komponenty.

Například sestava nazvaná Sestava nejvyšší úrovně obsahuje Podsestavu:1 a tato podsestava obsahuje Vzorovou součást:1.

Pro vypnutí vzorové součásti:1 použijte pravidlo uvnitř podsestavy. Toto pravidlo může mít parametr, který řídí stav vypnutí a tento parametr můžete řídit pomocí pravidla v sestavě nejvyšší úrovně.

Když k vypnutí komponenty použijete modul iLogic, struktura rozpisky komponenty se nastaví na Reference. Tato akce zamezuje tomu, aby se komponenta objevila v rozpisce. Objevuje se v zobrazení Data modelu, ale ne ve strukturovaném zobrazení nebo v zobrazení Pouze součásti. Jestliže je komponenta nevypnutá, modul iLogic vrací komponentu do jejího stavu před vypnutím (Normální, Neoddělitelný, Zakoupený nebo Skrytý).

Předtím, než použijete modul iLogic k provedení změny stavu vypnutí komponenty sestavy, vytvořte a aktivujte novou uživatelskou Úroveň detailu.

Syntaxe

Component.IsActive("ComponentName")

Příklady

Můžete použít hodnotu 1 namísto true a hodnotu 0 namísto false.

Nastavení stavu vypnutí a struktury rozpisky:

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

Čtení stavu vypnutí a struktury rozpisky:

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

Component.iComponentIsActive

Změna stavu Komponenta je aktivní. Tato funkce nastavuje nebo čte stav vypnutí komponenty iSoučásti nebo iSestavy. Jestliže ručně nezměníte název komponenty, pak iSoučásti a iSestavy vyžadují použití této vyhrazené syntaxe.

Doporučujeme, abyste provedli změnu názvu komponenty. Jestliže změnu provedete, pak můžete místo této funkce použít funkci Component.IsActive.

Syntaxe

Component.iComponentIsActive(“iPartParentName:1”)

Název nadřazené iSoučásti

Název součásti rodiny bez přípony názvu souboru .ipt.

Component.Color

Nastavuje nebo čte barvu komponenty.

Syntaxe

Component.Color(“iPartA:1”)

Příklady

Nastavení barvy:

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

Čtení barvy:

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

Component.Visible

Nastavuje nebo čte viditelnost komponenty. Tato funkce nemění strukturu rozpisky komponenty.

Syntaxe

Component.Visible("componentName")

Příklady

Nastavení viditelnosti:

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

Čtení viditelnosti:

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

Component.SkipDocumentSave

Určuje, zda se dokument komponenty uloží, když se změní a pak je vypnut pravidlem.

Syntaxe

Component.SkipDocumentSave = True

Když je funkce nastavena na hodnotu True, dokument komponenty se neuloží.

Výchozí hodnota je False ( Component.SkipDocumentSave = False), dokument komponenty se uloží.

Component.Replace

Výměna jedné součásti nebo podsestavy za druhou. Tuto funkci lze použít pouze pro výměnu vzorů komponent.

Použijte iVazby ve vyměňovaných komponentách pro zachování neporušenosti vazeb sestavy. Lze vyměnit součást za součást, součást za sestavu nebo sestavu za součást.

Tato funkce vyhledá v několika složkách soubor, který se má použít jako náhrada:

Název souboru může být relativní cesta (relativní k jakékoliv z těchto vyhledávacích oblastí).

Poznámka: Před použitím této funkce „stabilizujte“ název komponenty, abyste zabránili jeho změně, když dojde k výměně. Stabilizaci názvu komponenty proveďte jeho změnou. Stabilizaci názvu můžete také provést jeho změnou a pak opakovanou změnou na původní název. Jestliže neprovedete stabilizaci názvu, operace výměny změní komponentu na jiný název. Pravidlo pak nemůže tuto komponentu najít, když se znovu spustí.

Syntaxe

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

Název vyměňované součásti

Název vyměňované součásti nebo podsestavy.

Název souboru druhé součásti

Součást nebo sestava, která má být použita pro výměnu.

<replaceAll>

Nastavením této booleovské hodnoty na hodnotu True vyměníte všechny instance této komponenty. Nastavením této hodnoty na hodnotu False vyměníte pouze instanci s jedním názvem.

Příklad

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

Funkce Component.Replace (se zadanou úrovní detailů)

Tato změna funkce Component.Replace vymění komponentu v sestavě za jinou komponentu na specifikované úrovni detailů.

Syntaxe

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

V této funkci je argument <replaceAll> stejný jako argument popsaný pro obecnější funkci Component.Replace.

Lze také vyměnit podsestavu za stejnou podsestavu na jiné úrovni detailů.

Component.ReplaceiPart

Tato funkce, požadovaná pro iSoučásti s uživatelskými parametry, je také doporučena pro standardní iSoučásti. Když je komponenta iSoučást, použijte tuto funkci místo funkce Component.Replace. Po výměně lze použít funkci iPart.ChangeRow nebo iPart.FindRow k změně specifické konfigurace iSoučásti.

Pro iSoučást s uživatelskými parametry uveďte seznam hodnot pro uživatelské parametry za číslem řádku. Hodnoty musí být uvedeny v pořadí, ve kterém jsou v tabulce.

Syntaxe

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

Pomocí funkce rowNumber vyměňte komponentu a současně zvolte řádek iSoučásti.

Příklady

Chcete-li nastavit uživatelské parametry, zopakujte v pravidle uživatelské hodnoty ve funkci Component.ReplaceiPart a znovu ve funkci iPart.ChangeRow nebo iPart.FindRow.

Funkce ChangeRow:

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

Funkce FindRow:

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

MakePath

Definování cesty k názvu komponenty v podsestavě. Při specifikování cesty uveďte všechny úrovně podsestavy v pořadí, ve kterém se vyskytují ve stromu. Tato funkce je nutná, jestliže chcete specifikovat název komponenty, když stejný název existuje také někde jinde v sestavě.

Syntaxe

MakePath(“SubassemblyComponentName”,“PartComponentName”)

Příklady

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