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
Kopie náčrtu |
Odpovědět | archiv |
Autor | |
issin
TOP uživatel Přihlášen: 11.čvc.2015 Lokalita: ČR (ZL) Používám: Inventor, Fusion 360 Stav: Offline Bodů: 600 |
Téma: Kopie náčrtu Zasláno: 17.úno.2020 v 08:59 |
S VBA jsem začátečník a většinou pracuji stylem pokus – omyl. Nyní potřebuji poradit, protože už „znám“ asi 50 způsobů, jak to nejde a velmi rád bych byl poslán na správnou cestu, která mne dovede k požadovanému cíli.
Za patřičné nakopnutí předem děkuji. Řeším problém automatizace návrhu, při kterém potřebuji vytvořit několik kopií náčrtu do několika odsazených rovin, přičemž v každé další kopii potřebuji změnit parametr „modul“ o +1. Už jsem dokázal vytvořit jednotlivé odsazené roviny a v nich prázdné náčrty. Odděleně se mi podařilo vytvořit i kopii náčrtu do jiné roviny, ale v tomto náčrtu mi to parametr „modul“ vždy přejmenovalo na „dxx“ (xx = pořadové číslo). Jelikož předem nevím, jaké bude mít parametr „modul“ v novém náčrtu pojmenování nemohu jeho hodnotu přepisovat. Snad jsem problém popsal dost srozumitelně. Příklad, jak by mohl vypadat základní náčrt viz. obrázek. |
|
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: 18.úno.2020 v 07:50 |
Zdravím, je možné přiložit vaše makro nebo pravidlo abychom mohli kód projít, podívat se jestli je v něm vše jak má být a trochu jej vylepšit oč žádáte?
Makro na tvorbu toho, co popisujete, by mělo být celkem jednoduché. Díky.
|
|
issin
TOP uživatel Přihlášen: 11.čvc.2015 Lokalita: ČR (ZL) Používám: Inventor, Fusion 360 Stav: Offline Bodů: 600 |
Zasláno: 21.úno.2020 v 07:12 |
Vše máte v soukromé zprávě.
|
|
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: 21.úno.2020 v 07:38 |
Dobrý den,
děkuji za upozornění, pročetl jsem si pozorně Vaši zprávu. Požadujete poměrně sofistikované řešení, makro, které popisujete, by mělo cca tak alespoň 300 řádků kódu a to rozhodně není na vysvětlování si prostřednictvím fóra. Doporučil bych Vám zamyslet se nad využitím konzultačních nebo programátorských služeb CAD Studia. Výchozí stav - Víceobjemové plechové těleso, kvalitně řízené parametry, a to včetně parametru počítající počet těles v závislosti na celkové délce teleskopu, například. Postup makra by měl být cca následující: Vytvoření kopie víceobjemového dílu. Otevření kopie, změna parametrů, vlastností, aktualizace. Generování odvozených plechových dílů z víceobjemových těles pro možnost rozvinutí a exportu DXF. Vložení vygenerovaných dílů do nové sestavy, včetně původního řídícího víceobjemového modelu, který bude referenční. S čím Vám zde mohu rychle pomoci je funkce, kterou poptáváte v soukromé zprávě, a to je jak vybrat náčrt z grafického okna Inventoru... Myslím si ovšem, že tuto funkci nebudete potřebovat. Dim oApp As Application oApp = ThisApplication Dim oDoc As Document oDoc = oApp.ActiveDocument 'oDoc.SelectionPriority = 67585 'Priorita vyberu prvku - nacrt je prvek Dim oSelectedSketch As Sketch 'Výběr objektu náčrtu vybrat ze stromu součásti. oSelectedSketch = ThisApplication.CommandManager.Pick(SelectionFilterEnum.kSketchObjectFilter, "Vyberte objekt náčrt") MsgBox("Nazev nacrtu " & oSelectedSketch.Name) MsgBox("Počet entit " & oSelectedSketch.SketchEntities.Count()) MsgBox("Počet parametrů " & oSelectedSketch.DimensionConstraints.Count()) 'oDoc.SelectionPriority = 67587 'Hrany a plochy |
|
issin
TOP uživatel Přihlášen: 11.čvc.2015 Lokalita: ČR (ZL) Používám: Inventor, Fusion 360 Stav: Offline Bodů: 600 |
Zasláno: 21.úno.2020 v 21:05 |
Děkuji za pomoc.
Trochu si pohraji s tím co jste mi sem dal a uvidím co dál. |
|
issin
TOP uživatel Přihlášen: 11.čvc.2015 Lokalita: ČR (ZL) Používám: Inventor, Fusion 360 Stav: Offline Bodů: 600 |
Zasláno: 22.úno.2020 v 20:56 |
… a s tím kopírováním mi můžete pomoci.
|
|
issin
TOP uživatel Přihlášen: 11.čvc.2015 Lokalita: ČR (ZL) Používám: Inventor, Fusion 360 Stav: Offline Bodů: 600 |
Zasláno: 23.úno.2020 v 09:40 |
podle toho Vašeho popisu, jak by makro mělo fungovat, mě napadlo zda by tedy nebylo jednodušší pracovat rovnou v sestavě do které bych vložil součást (pouze náčrt profilu a potřebné parametry), makro (na úrovni sestavy) by si vyžádalo vstupní parametry pro výpočet počtu dílů a provedlo by vytvoření příslušného počtu kopií součásti s modifikací parametrů (předpokládám, že při kopírování součásti by nedošlo k přejmenování uživatelských parametrů). Teď už jen domyslet způsob pojmenování součástí. Ideálně podle sestavy, něco jako "Jméno_Sestavy" + "Přípona".
A taky by mělo jít definovat vazby. Upravil issin - 23.úno.2020 v 12:02 |
|
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 1,722 sekund.