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
Základy Catia
Ke stažení
Doporučujeme
Pracovní příležitosti
Reklama a kampaně
O fóru
Vznik a historie
Statistiky
Přehledy
Hledat na fóru
Nápověda

Seznam příspěvků uživatele

V tabulce jsou všechny příspěvky uživatele Jakub Dědík (DJakub) řazené podle témat. Kliknutím na název téma se zobrazíte celou diskusi.

TémaZaloženoOdpověď
Práce více konstruktérů na jednom projektu 5.12. 2023 Dobrý den, nejlevnější řešení je síťový disk - na něm si projekt rozdělit do složek podle konstruktérů a každé té složce dát práva na změnu jen konkrétnímu konstruktérovi. Ostatní tam můžou mít práva pouze na otevírání.

Takhle nikdo nepřeuloží v dané složce, na co nemá práva.

Pro to aby se to nastavilo správně je potřeba jen rozuměnt správě uživateslkých účtů MS Windows.

Další možnost je vlastní git server - https://git-scm.com/book/cs/v2/Git-na-serveru-Zprovozn%C4%9Bn%C3%AD-Gitu-na-serveru - je s tím více práce a je to spíše určený pro psaní kódu. Nicméně je to vynikající nástroj na verzování a ukládání pokroku. Pokud by každý den konstruktér posílal data zpět do repozitáře můžete se pak zpět k modelům vracet pokud se někde rozbijí nebo udělají nechtěné změny.

Je to však náročnější na naučení pro uživatele. I vývojářům softwaru to chvíli trvá, než se ho naučí.
 
zobrazení křivostního přechodu dvou ploch 30.9. 2021 Zdravím, s tímto jsem se už párkrát setkal a stávalo se mi to třeba u šroubů. Kde nebyla vidět díra šroubu ve které byl. V ten momet to catia nevykreslovala protože to bylo protínající se body do sebe. Šroub byl o něco větší než díra.
Vykreslovalo se to pak tak, že šroub přímo protínal body ale nebyla vidět hrana kde začíná závit v plechu.

Nevím jestli to bude u vás podobný případ ale ověřil bych si že tam není nějaká malá kolize a plochy plynule nenavazují. Při konverzi to může catia osekat co se protíná a pak vznikne přechod ... to je pouze můj odhad proč to vidíte odlišně

na viditelnost těchto spojení má vliv
 
Zrcadlení 15.9. 2021 V sestavě nelze zrcadlit tak že výsledek nebude nový part. Vždy budete muset zrcadlový díl mít jako odlišný soubor od původního. Pokud toto nechcete musíte zrcadlit v rámci partu do nového body. Pak jeden Part obsahuje pravou a levou část. V praxi jsem to však neviděl a záleží na typu konstrukce jak s Catií pracujete.

Zajímavý trik pane Cinerte :)
 
Kopírování dílů v sestavě 15.9. 2021 Pokud chcete jen rozmnožit díly jedním směrem do prostoru lze použít

http://catiadoc.free.fr/online/asmug_C2/asmugbt0312.htm
 
Obrábění v sestavě 15.9. 2021 Zdravím, nejsem si jistý jestli rozumím správně otázce, ale jestli používáte v sestavě díly před obrobením a po obrobení nejjednodušší podle mě je si vytvořit scény kde definuji co je za díly viditelné a výkresy navážu na scény ze sestavy (naklikají se při tvorbě pohledu) ... - relativně křehké pokud si to ručně reviduji po změnách

Nebo použít modify links v pohledu kde si pak naklikám díly co mají být vidět - docela křehké když se ubírají a přidávají díly

Nebo použít Overload properties a zneviditelním díly co mě nezajímají - hodně křehké na updaty, přidávání a ubírání dílů, doporučuji pak používat naklikávání přímo v sestavě né na výkresu
 
Links of document 20.7. 2021 Pokud je to sestava tak bych se podíval na featury které jsou v ní použité. Tzn. projít si vše co se nachází zde a zobrazit si případně i formule, parametry a pod.

Catie píše že je to typ linku shape - hledal bych tedy featury co souvisí s designem.
Links of document 19.7. 2021 Dobrý den,
tuto se stává pokud design dílu použil element z jiného dílu (plocha, bod, přímka apod.) a nebylo to z publikací nýbrž jen nakliknutím. Pak se to také může stát pokud kopírujete featury z partu do partu.

Doporučuji si projít stromy dílů a pro odhalení který díl zlobí otevírat jeden po druhém v nové catii. Pak si projít stromy a najít kde by to mohlo být - to opravit a už to po vás nic chtít nebude.
 
Rybina 7.7. 2021 Pokud se rybinou myslí tuto



tak mě napadá to udělat přes patterny do čtverce (obdélníka) a pak ořezat požadovaným tvarem. Na tuto skutečně není potřeba makra ani nějakého složitého postupu. Prostě udělat to tak jak to dělá fréza.
 
UserDefineProperties a relations 30.4. 2021 Na propojení parametru ze stromu a parametru v user properties je nutné vyrobit formuli

třeba takto


Dim param1() As String = {"Seite", "Bezeichnung", "Halbzeug", "Norm/Zeich", "Werkstoff", "Werkst.Nr.", "Bemerkung"}
Dim param2() As String = {"Seite", "Bezeichnung", "Halbzeug", "Norm/Zeich", "Werkstoff", "Werks.Nr.", "Bemerkung"}
fce1 = oPart.Parameters.Item(oPart.Name() & "\Properties\" & param1(parametr))
oPart.Relations.CreateFormula(param1(parametr), "", fce1, oParams.GetNameToUseInRelation(oPart.Parameters.GetItem(param2(parametr))))


Prolinkování parametrů je nutné ověřovat jestli jsou formule aktivní a pokud ne tak si to pořešit :)

doporučuji si prostudovat api od dassaultu ať tomu více rozumíte
 
Bill of materials 27.4. 2021 Jestli jsem to správně pochopil, chcete aby to fungovalo tak, že otevřete hlavní sestavu, vyberete pár partů a pustíte makro. To udělá excel s vybranýma partama a jejich výskyt v celé sestavě.

Není snazší tyto informace vykopírovat z BOM co už catie dělá standartně ?

Jinak teda pokud se jedná o úpravu makra tak mě napadají 2 možnosti - využít metodu Search na objektu Selection nebo udělat iteraci zkrz celý strom hlavní sestavy.

Iterace zkrz celý strom je například tuta funkce (VB)

Private Sub AnalyzeLoop(SourceProds As Products)
For Each Instance As Product In SourceProds
'práce na partech nebo productech
If Instance.Products.Count > 0 Then
AnalyzeLoop(Instance.ReferenceProduct.Products)
End If
Next
End Sub

Funkce Search by měla fungovat tak že kolekci selection naplní nalezenýma partama ... z toho se dá dostat počet pátrů

Jinak když vidím ten zápis do excelu tak bych doporučoval rychlejší metodu a to zapisovat celé Array do excelu - je to asi tisíckrát rychlejší :)

třeba takto

ExlSheet.Range("A12").Resize(BOMEls.PosID.GetLength(0), BOMEls.PosID.GetLength(1)).Value = BOMEls.PosID

 
Makro - porovnání dílů 14.4. 2021 Kdysi dávno jsem přišel na jednu analýzu v sestavách. Distance and Band Analysis
Sice pro to není určená, lze však také porovnávat díly mezi sebou a vidět odlišnosti.
Další je možnost využití přímo funkce Compare Products z DMU Space Analysis

Na rychlou tvorbu obrázků je nejepší používat Capture a neukládát obrázky jednotlivě ale házet to do albumu a ten na konci práce vykrást tak jak potřebuji do prezentace. Máte fotky hotový během pár minut ...
 
vyhledání dílu v sestavě 12.10. 2020 Na toto téma so toho dá vymyslet opravdu hodně :) ... kdysi jsem měl nápad udělat si jednoduchou appku co mi načte bom a data z CATIE a já si budu klikat díl po dílu v appce a catie mi je bude zobrazovat a hned při tom budu mít možnost měnit parametry přes appku, jakou výrobou bude díl vytvářenej a další detaily co se tvořily složitě ručně + kontrola designu. Kdybych tam jako konstruktér zůstal asi bych to vymyslel :D, pak se změnila práce a toto už jsem nepotřeboval.

zkuste si projít dokumentaci a něco napsat

Za mě bych asi řešil tyto kroky

- zjistit co je v catii otevřený
- zobrazit to tak jak by se mi hodilo
- reagovat na to v catii při výběru tam kde jsem si to zobrazil
 
CATDrawing do DXF 12.10. 2020 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.
CATDrawing do DXF 12.10. 2020 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.
 
Premenovanie PartBody podla nazvu Partu 26.9. 2020 Pokud jde o main body tak kod který to udělá na všech načtených partech v catii je :
Kod ve VB.NET patří do visual studia :)

Sub Main()

Dim CatiaApp As Application
CatiaApp = GetObject(, "CATIA.Application")
For Each Doc As Document In CatiaApp.Documents
If TypeOf Doc Is PartDocument Then
Dim TempPartDoc As PartDocument = Doc
TempPartDoc.Part.MainBody.Name = TempPartDoc.Part.Name
End If
Next
End Sub
Premenovanie PartBody podla nazvu Partu 26.9. 2020 Dobrý den,

Pokud je v catii otevřená pouze setava kterou chcete měnit, prošel bych kolekci CATIA.Documents a pokud by byl dokument CATPart provedl bych přejmenování. Je to rychlé a snadné a vůbec neřešíte strukturu sestavy.


 
Visual Studio 26.9. 2020 Dobrý den,
píšu automatizaci na VS2017 a případně i na posledních VS2019. Co je například zajímavé na comunitní verzi tak je možnost sdílení kódu s několika uživateli přímo v IDE. Takže každý vidí kdo co napsal, co píše a lze se tak snadno domluvit a kooperovat nebo i vyučovat :).

Jak pan Cinert uvedl, je důležité zohlednit vaše programátorské schopnosti a potřebu použití nových technologií. Raději dávám přednost přístupu držet krok s dobou a používat aktuální nástroje a systémy. Kdo by dneska chtěl dobrovolně psát makra v CATIA V5 VBA IDE, pokud k tomu nemá vyloženě důvod?

Pokud si to dobře vybavuji, tak v 3DExperience je možnost dokonce vytvářet projekty ve Visaul Studiu (2015) a celý projekt je zakládán a řízen z ni. I Dassault jde s dobou :)
 
Logování chybové hlášky 26.9. 2020 Uživatel cituje z příspěvku #6762:
' ...ti co to mají na háku zkusí makro jednou použít (bez přečtení návodu či zkouknutí ukázkového videa), první pokus skončí chybou, tak prohlásí, že to funguje na h...o (a že autor je neschopný blbec), a dál makro použít nezkouší ---> ztráta pro obě strany. '


Zdá se že máme všichni stejné zkušenosti :D. Ať udělá člověk aplikaci blbuvzdornou co nejvíc, vždy se najde někdo kdo si ani nepřečte manuál. Nejhorší je že ta blbuvzdornost je víc pracnější než samotná automatizace práce v catii ...
Logování chybové hlášky 26.9. 2020 Zdravím Pavle,
používáni try catch je asi nejsazší způsob jak chytat neočekávané chyby a já je používám stejně. Vždy do catch pošlu buď info o stavu operace, nebo jen objekt chyby a mám jednen sub co zase rozhodne podle parametru který dostane jesli bude logovat, vyhazovat hlášky a pod.

Osobně nedávám try catch uplně všude ale pouze tam kde se něco děje a vím že nedokažu vstup ošetřit dostatečně na to abych to měl 100% pokryté. Jako nejčastější kontroly jsou - jestli typ objektu co jsem dostal je správný, jestli není objekt prázdný, jestli má kolekce nějaké oběkty.

Celou proceduru kde se začne volat práce je v try catch, tím se mi chytne zbytek co jsem nepořešil.

Existuje taky třída Log pokud používáš VS např WinForm nebo WPF.

https://docs.microsoft.com/en-us/dotnet/api/microsoft.visualbasic.logging.log?view=netframework-4.8

případně tady je postup řešení
https://stackoverflow.com/questions/20368699/handling-exception-at-application-level

je to využití eventu, který nastane při každé chybě, pak ho na něj stačí reagovat
 
Sketch / Unable to cast COM 26.9. 2020 Souhlasím , že dassault má velký štěstí, že jeho uživatelé nejsou vývojáři ale konstruktéři, pak jim prochází spoustu nedodělků v jejich softwarech. Osobně už jsem nabyl dojmu že pokud ti catie funguje, makra fungujou, nedělej s ní od instalace nic. Pokud SP ani HF neni potřeba kvůli datům, nechat to být :D.

Posledně mě dostala instalace R29GA ... kdy vyskočil prázdný error ještě než se instalátor spustil! Vůbec nechápu jak si to může dassault dovolit to pustit takto do světa .... Chyba byla v komponentě pro C++ protože instalátor neunesl to, že už byl nainstalovaný z dřívějška... pak byl v SP1 hotfix na celý problém ...
Sketch / Unable to cast COM 26.9. 2020 Ahoj Pavle,
právě zaregistrovanou Catii poznáš v registrech windows. Zkus hledat CATIA.Application a najdeš její UUID v

\HKEY_CLASSES_ROOT\CLSID\

v parametru LocalServer32 je pak cesta cnex.exe která se spustí pokud například v makru vytvoříš nový objekt CATIA.Application, nebo otevřeš nějakej catia soubor. To je právě Catie o které windows ví. A visual studio ti zobrazuje knihovny právě k ní.

S knihovnama problém být může a nemusí, je tam kvanta objektů a změny se nemusí týkat všech. Může to běžet a nemusí :D.

Osobně se vyplatí nebýt líný a na funkce makra si napsat test, který simuluje vstupy např od uživatele. Mít třeba i testové sestavy a soubory v catii a pokud to s těma knihovnama makrem projde tak je to ok, pokud ne víš že je problém s knihovnou a víš i kde.
 
reference Catia VB.net 26.9. 2020 Dobrý den,
souhlasím s tím, že je lepší používat kompilované knihovy DLL které jsou převzaté z COM referencí.Ostatně ještě další možnost jak si usnadnit práci je vytvořit celé makro jako DLL knihovnu. Při každém novém releasu si vytvořit DLL knihovu makra jen pro něj a v hlavní aplikaci je referencovat. Tím pádem můžete aplikaci používat pořád jednu pro více releasů a ta aplikace se rozhoduje jaké DLL s makren zrovna použije. Je to víc práce, ale z dlouhodobého hlediska si neničíte už práci na staších makrech a není nutné mít pro každý release speciální exe, pak navíc můžete přidat i rozpoznávání releasů a aplikace sama ví jaké dll s makrem použít a uživatel se o to už vůbec nestará.

Ono je všeobecně hodně špatný nápad nechat Catie DLL referencované jako COM. Pokud do toho přidáte ještě instalace 3DExperience tak jse si zadělali na spoustu komplikací :D
 
VB.Net detekovanie viacerých Catí 26.9. 2020 Dobrý den,
udělal jsem stejný průzkum už dřív jako je zde popsaný a dospěl jsem ke stejnmu konci - je to náročné :D. Je to vlastně způsobené samotným Dassaultem, a mám pocit, že tuten problém se šíří dál i na 3DExperience :D. Chtěl jsem to řešit už několikrát ale vždy to okládám, protože na to není čas.
 
Myš a trackball (spaceball) 26.10. 2020 Zdravím, toto téma je docela různorodé. Obecně zastávám názoru, že na myšy se nemá vůbec šetřit, protože je to vaše ruka, která bude mít po x letech neustálého klikání problémy. Např jak píší zde ...

https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4272839/

Prakticky klávesnice a myš je naše lopata a krumpáč. Pokud máte špatné nářadí, práce se dělá špatně. Bohužel tohle né každý chápe a šetří kde se dá... Každému taky padne do ruky něco jiného.

Přirovnal bych námahu při práci v catii podobně jako vrcholovým hráčům RTS, MOBA a FPS apod. Koukal bych tedy po kvalitních ergonomických myších určených pro profesionální hraní. Za mě obětování kolečka jen pro Catii je krok zpět. Předpokládám, že kontruktér musí ještě používat excel, pdf, powerpoint, www, word a emaily a zde si zbytečně ztěžujete ovládání ostatních aplikací. Navíc když je spousty aplikací kde je funkční zkratka ctr+točení kolečka myšy jako zoom in a out.

Navrhoval bych vyzkoušet si několik myší a vybrat si co padne do ruky. Také bych nebyl líný a naučil se ovládat například zkratky, která každá draší myš má (například namapovat update, uložení, properties, hide show a další nejpoužívanější nástroje)

Pokud bych mohl navrhnout jeden typ co už delší dobu používám tak je to starší verze tuté logitech MX Master.

https://www.logitech.com/cs-cz/products/mice/mx-master-3.910-005694.html