Diskuzní fórum, poradna
CAD diskuze, rady, výměna zkušeností |
Veřejné diskuzní fórum k CAD aplikacím - ptejte se na libovolné otázky týkající se oboru CAx, podělte se o vaše znalosti a zkušenosti s programy AutoCAD, Inventor, Revit, Fusion 360, 3ds Max a s dalšími CAD aplikacemi.
Zaregistrujte se nebo se přihlašte a zašlete váš příspěvek do odpovídajícího fóra. Viz další informace o CAD Fóru. Nechcete se registrovat? Zeptejte se v naší Facebook poradně.
Fórum nenahrazuje technický support firmy Arkance Systems (CAD Studio) - přímá podpora pro zákazníky funguje na helpdesk.cadstudio.cz
PŘEPSÁNÍ PARAMETRU |
Odpovědět | archiv |
Autor | |
Lukáš Záruba
TOP uživatel Přihlášen: 02.lis.2007 Lokalita: ČR (SČ) Používám: inventor 2015 Stav: Offline Bodů: 429 |
Téma: PŘEPSÁNÍ PARAMETRU Zasláno: 13.bře.2019 v 13:23 |
Zdravím,
Mám pravidlo které mi založí a vyplní parametr "POLOTOVAR". jak mám napsat aby se mi parametr který již existuje přepsal tímto s více hodnotami? Dim oParams As Parameters Dim oPartDoc As PartDocument = ThisDoc.Document Dim oPartCompDef As PartComponentDefinition = oPartDoc.ComponentDefinition oParams = oPartCompDef.Parameters Dim oUserParams As UserParameters = oParams.UserParameters Try p = Parameter("POLOTOVAR") Catch oUserParams.AddByValue("POLOTOVAR","", UnitsTypeEnum.kTextUnits) MultiValue.SetList("POLOTOVAR", "PLECH", "JAKL", "TRUBKA 4HR", "TRUBKA OBD", "TY� PLOCH�", "TY� KULAT�", "TY� Z�VITOV� (DIN 975)" ) End Try |
|
Budu rád za radu i případně všelijaké postřehy.
|
|
krupicka
Profil člena
Odeslat soukromou zprávu
Najít příspěvky člena
Navštívit stránky člena
Přidat do seznamu známých
Arkance Systems support Arkance Systems Přihlášen: 15.říj.2015 Lokalita: ČR (Pha) Používám: Inventor HSM Stav: Offline Bodů: 122 |
Zasláno: 14.bře.2019 v 09:14 |
Dobrý den,
Musíme ověřit existenci parametru. V případě, že existuje, jej odstranit a vytvořit nový. Šel jsem na to procházením všech parametrů a porovnáváním jejich názvů s názvem "POLOTOVAR" Dim oParams As Parameters Dim oPartDoc As PartDocument = ThisDoc.Document Dim oPartCompDef As PartComponentDefinition = oPartDoc.ComponentDefinition oParams = oPartCompDef.Parameters Dim ParaExist As Boolean = False Dim oUserParams As UserParameters = oParams.UserParameters Try For i = 1 To oParams.Count If oParams(i).Name = "POLOTOVAR" Then ParaExist = True Exit For End If Next Catch End Try MessageBox.Show(ParaExist, "Existence parametru POLOTOVAR") If ParaExist = True Then Parameter.Param("POLOTOVAR").Delete End If Try p = Parameter("POLOTOVAR") Catch oUserParams.AddByValue("POLOTOVAR","", UnitsTypeEnum.kTextUnits) MultiValue.SetList("POLOTOVAR", "PLECH", "JAKL", "TRUBKA 4HR", "TRUBKA OBD", "TYC PLOCHA", "TYC KULATA", "TYC ZAVITOVA (DIN 975)" ) End Try
S pozdravem Martin Krupička, CAD Studio |
|
Lukáš Záruba
TOP uživatel Přihlášen: 02.lis.2007 Lokalita: ČR (SČ) Používám: inventor 2015 Stav: Offline Bodů: 429 |
Zasláno: 14.bře.2019 v 09:48 |
Díky, přesně to jsem potřeboval. Už mi to funguje.
|
|
Budu rád za radu i případně všelijaké postřehy.
|
|
Lukáš Záruba
TOP uživatel Přihlášen: 02.lis.2007 Lokalita: ČR (SČ) Používám: inventor 2015 Stav: Offline Bodů: 429 |
Zasláno: 15.bře.2019 v 11:02 |
Je možné toto pravidlo napsat tak aby fungovalo i pro sestavu? pokud ano, tak jak to napíšu?
|
|
Budu rád za radu i případně všelijaké postřehy.
|
|
Vladimír Michl
Profil člena
Odeslat soukromou zprávu
Najít příspěvky člena
Navštívit stránky člena
Přidat do seznamu známých
Moderátor Arkance Systems Přihlášen: 09.zář.2004 Lokalita: ČR (JČ) Používám: Dodáváme produkty Autodesk Stav: Offline Bodů: 21434 |
Zasláno: 17.bře.2019 v 08:10 |
Pro parametr sestavy nebo pro parametry všech komponent sestavy a podsestav? (to už je složitější). Pro parametr sestavy stačí upravit záhlaví - typy objektů.
|
|
Lukáš Záruba
TOP uživatel Přihlášen: 02.lis.2007 Lokalita: ČR (SČ) Používám: inventor 2015 Stav: Offline Bodů: 429 |
Zasláno: 18.bře.2019 v 08:40 |
Zdravím,
Chtěl bych tímto pravidlem vyhledat, vymazat a znovu vytvořit uživatelský parametr "POLOTOVAR" v sestavě. Toto pravidlo funguje pro díl ale v sestavě hlásí chybu. Jedná se mi o to že budu postupně připisovat hodnoty do pravidla v "MultiValue.SetList" a proto když bude tato změna tak potřebuji aby byl starý seznam hodnot nahrazen novými. Hlavně u starých nebo převzatých projektů kde tento parametr není, nebo je vyplněn jinak.
|
|
Budu rád za radu i případně všelijaké postřehy.
|
|
Navara
Profil člena
Odeslat soukromou zprávu
Najít příspěvky člena
Navštívit stránky člena
Přidat do seznamu známých
Arkance Systems support Arkance Systems Přihlášen: 08.zář.2008 Lokalita: ČR (Pha) Používám: Inventor Stav: Offline Bodů: 1636 |
Zasláno: 18.bře.2019 v 09:30 |
Tohle už začíná být docela rozsáhlé.
Co se týká zpracování sestavy, tak stačí upravit záhlaví, ale doporučuju to udělat tak, aby to fungovalo pro obojí (sestava i součást). To znamená získat oUserParams jak pro sestavu, tak pro součást. Zbytek uzavřít do metody s argumentem oUserParams. No a v té metodě před smazáním parametru zkontrolovat, jestli je to přegenerování parametru nutné. Jinak totiž dochází ke změně souboru a budou neustále vznikat nové verze, které bude nutné ukládat i v případě, že fakticky k žádné změně nedojde. |
|
Lukáš Záruba
TOP uživatel Přihlášen: 02.lis.2007 Lokalita: ČR (SČ) Používám: inventor 2015 Stav: Offline Bodů: 429 |
Zasláno: 18.bře.2019 v 11:04 |
Děkuji za nápad pane Navaro, mohl byste mi napsat jak by šlo upravit abych získat oUserParams?
Co se týče zjišťování nutnosti přegenerování, tak bych si s tím nelámal hlavu. Jelikož toto pravidlo je spouštěno ručně, pouze při nutnosti použít starý projekt nebo přenzané díly jako nový. Tím pádem se vždycky něco změní ( materiál, geometrie,.... ).
|
|
Budu rád za radu i případně všelijaké postřehy.
|
|
Pro technickou podporu CAD
kontaktujte Helpdesk
Odpovědět | |
Přejít na fórum | Oprávnění fóra Nemůžete vytvářet nová témata v tomto fóru Nemůžete odpovídat na témata v tomto fóru Nemůžete vymazávat vaše příspěvky v tomto fóru Nemůžete upravovat vaše příspěvky v tomto fóru Nemůžete vytvářet ankety v tomto fóru Nemůžete hlasovat v anketách v tomto fóru |
Stránka byla vygenerována za 0,719 sekund.