Vítejte !   Přihlášení | Registrace
Hlavní menu
CATIA fórum.cz
Novinky
Seriál CATIA
Obecně o CAD
Novinky ze světa DS
Makra pro CATIA V5
Diskuse
Vytvořit téma
Koncepty
Seznam oblíbených
Soukromé zprávy
Pravidla
Live CHAT
VIP žádost
Základy Catia
Ke stažení
Doporučujeme
Pracovní příležitosti
Reklama a kampaně
O fóru
Nápověda

CATDrawing do DXF

Kompletní přehled příspěvků v tématu CATDrawing do DXF řazený podle data jejich publikace na fóru.

UživatelPříspěvek
Navi

Poslat zprávu | Profil
Datum: 8.10. 2020 | Zobrazeno: 213x
Konfigurace CATIA: V5-6R2018

Text dotazu:
Je možné, že někdo má stejný problém nebo někdo již tento problém vyřešil.
Potřebuji uložit z CATDrawing do DXF, ale každý výkres zvlášť, například v CATDrawing bude 10 sablonu, a musím uložit 10 výkresů DXF, ale s jejich příslušnými názvy, které budou uvedeny ve stromu v CATDrawing. Vytvořil jsem makro v CATScriptu, ale nefunguje se všemi výkresy.
děkuji za každou pomoc.

Milan Frýba

Poslat zprávu | Profil
[#6855] | Publikováno: 12.10. 2020 - 08:17
Zdravím,
Já bych doplnil, že pokud používáte např. souborový manager Total commander (jako v naší firmě), je zde možnost hromadného přejmenování (ctrl+M). Potom již není problém si např. název celého Catdrawingu na začátku pojmenováni *.DXFek nahradit ničím a zůstanou tak pouze názvy listů. Věřím, že podobnou funkci má většina souborových managerů.
Hromadné přejmenování i Windows průzkumník, ale jen pokud se vám líbí názvy typu Výkres (1); Výkres (2); Výkres (3)…
Ing Jan Cinert

Poslat zprávu | Profil
[#6854] | Publikováno: 12.10. 2020 - 09:08
Dobrý den,

v nastavení exportu do různých grafických formátů je přepínač, kterým se řídí, zda bude výkres s více listy exportován jako jeden soubor nebo jako více souborů - pro každý list jeden.

Do názvu souborů se pak za hlavní název přidá ještě název listu, takže pak už nic dalšího není třeba řešit (názvy DXF tedy budou ve formátu VYKRES_SHEET_1, VYKRES_SHEET_2 atd.)

Pokud potřebujete specifický název ve stromu (např. jen samotný název listu), musel byste pak změnit názvy souborů u všech exportovaných DXF (root name ve stromu výkresu odpovídá názvu souboru bez přípony). A to už můžete udělat ručně nebo nějakým skriptem nezávisle na CATIA.

Přiložené obrázky:

Navi

Poslat zprávu | Profil
[#6856] | Publikováno: 12.10. 2020 - 11:02
Uživatel odpovídá na příspěvek #6855:

Zdravim,
děkuji za odpověď, ale to mi nepomůže, total commander nerozpozná, jestli to bude kresba 301 nebo 303

Přiložené obrázky:

Navi

Poslat zprávu | Profil
[#6857] | Publikováno: 12.10. 2020 - 11:04
Uživatel odpovídá na příspěvek #6854:

Dobry den,
děkuji za odpověď, ale to mi nepomůže, mám to všechno na jednom listu

Přiložené obrázky:

Ing Jan Cinert

Poslat zprávu | Profil
[#6858] | Publikováno: 12.10. 2020 - 11:24
Aha, to je dost mrzuté...

Tak potom si vytvořte pro každý pohled nový list, ten pojmenujte podle pozice dílu a jen do něj pomocí cut - paste přesuňte pohledy.
Text v razítku (číslo dílu) se pak dá pomocí funkce Attribute link svázat s názvem listu (obráceně bohužel ne). To vám zabere odhadem ne víc než tři minuty.

Pak se samozřejmě nabízí i možnost makra, ale v tomhle případě to moc nedává smysl - moc práce s minimálním efektem a stejně byste pohledy rozházet do nových listů.

Přiložené obrázky:

Jakub Dědík

Poslat zprávu | Profil
[#6859] | Publikováno: 12.10. 2020 - 12:13
Kdysi jsem si vytvářel jednoduché makro, které na jednom sheetu tvořilo ze všech pohledů samostaté výkresy (soubory) jen s jedním pohledem a uložilo je do dxf. Bylo to řešení pro vytvoření např 30 souborů s pohledy jen pro pálení. Protože jsem líný, udělal jsem to vše v jednom výkresu (pohledy nalinkované na sestavu, jednoduchá kontrola a pod.) a pak je makro už rozházelo do nových výkresů a rovnou uložilo do dxf. Měl jsem pak hotovou práci a mohl si vesele klikat výkresy dál.

Zde je část kódu co se stará o celou práci, je to vyjmuté z mé staré funkce.


Dim oSelect As Selection
oSelect = drawingDocument1.Selection
oSelect.Clear()
oSelect.Add(drawingDocument1.Sheets.Item(1).Views.Item(i))
oSelect.Copy()
oSelect = oNewDrawing.Selection
oSelect.Add(oNewDrawing.Sheets.Item(1))
oSelect.Paste()
oSelect.Clear()


Tento kód je výtažek principu používání selection. Samotná funkce tak jak jsem jí používal já je trochu složitější. Nicméně vytvořit funkci, která všechny pohledy z jednoho sheetu rozhází na vlastní sheet a pojmenuje je podle dílů není složitá a použil bych zde právě selection.

Jak psal pan Cinert, jde o to jak moc s tímto bojujete. Pokud vám to manuálně celkově zabere málo času, smířil bych se s tím. Pokud vás to stojí dost času a úsilí a je to dlouhodobý problém i co se týká např při updatech a změnách v designu kde se to generování dat pro výrobu pořád opakuje tak bych si makro vytvořil, případně nechal vytvořit.
Navi

Poslat zprávu | Profil
[#6860] | Publikováno: 12.10. 2020 - 13:00
Uživatel odpovídá na příspěvek #6859:

Zdravim
Udělal jsem makro pro oddělení každého z nich, ale hledá pouze přesné názvy, je možné vytvořit makro, kde hledá libovolné jméno

Přiložené obrázky:

Jakub Dědík

Poslat zprávu | Profil
[#6861] | Publikováno: 12.10. 2020 - 13:09
Použijte kolekci Views a projděte jí celou s tím, že musíte ignorovat první 2 položky - jedna je Working view a druhá je background view. V dokumentaci bych je hledal zde.

Osobně si myslm že se dost trápíte jestli používáte catscript a nevíte přesně co máte psát. Raději bych už ve vašem případě použil VBA IDE co je v Catii V5 protože aspoň vám to umožní našeptávání a debug.

Přiložené obrázky:



Uživatel nepřihlášen

Pro zobrazení obsahu stránky / provedení akce (vytvoření nového téma, napsání odpovědi do diskuse apod.) musíte být přihlášeni.