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

Vymazani elementu

UživatelPříspěvek
Pavel Krsek

Poslat zprávu | Profil
Datum: 13.8. 2012 | Zobrazeno: 10028x
Konfigurace CATIA:

Text dotazu:
Ahoj,
vedel by prosim nekdo jak v makru najit vlastnost elementu (plane, poiont, curve), zda-li ma nejake "deti" (features) a pokud nema, zda-li se muze dany element vymazat.
Nikde se mi to nedari najit.

Napodlo me na to i jit "obloukem" tj. po vymazani elementu zjistit vlastnost part, zda-li status update je aktivni ci nikoliv a pak prikazem zpet vratit vymazany element, ale to neni idealni reseni.

Diky za pripadne rady.

Ing Jan Cinert

Poslat zprávu | Profil
[#3177] | Publikováno: 13.08. 2012 - 14:30
Typ elementu je popsaný v dokumentaci, je to vlastnost Type objektu SelectedElement.

Zjistit potomky feature se nedá, jde to pouze obráceně, tj. zjistit rodiče. Pro zjištění, jestli lze element smazat bez porušení návaznosti byste si musel udělat mapovací tabulku feature / parent všech elementů a pak zjišťovat, jestli element ke smazání není náhodou rodičem nějakého jiného.

To vaše řešení je nevhodné, u velkých modelů by to trvalo strašně dlouho.
Pavel Krsek

Poslat zprávu | Profil
[#3180] | Publikováno: 16.08. 2012 - 07:17
Diky za radu.
Seznam s jednotlivymi features jiz mam (priklad: Pad.1, Pocket.2, Hole.1 atd....), ale nyni nevim (nemuze ani najit v helpu), jak vyhledat rodice daneho feature. Pres klasicky "Parent" dostanu nazev Body ve kterem se nachazi, ale to nepotrebuji.

Diky za pripadnou dalsi radu.
Ing Jan Cinert

Poslat zprávu | Profil
[#3181] | Publikováno: 16.08. 2012 - 11:52
Takhle to samozřejmě nejde, vlastnost Parent vrací rodičovský objekt, ale ne vlastní referenci. U každé feature je to jejich specifická vlastnost, např. u sketch based se dá zjistit skica, u Line jde zjistit její počáteční a koncový bod.

Ale jak říkám, bylo by to strašně složité, musely by se projít všechny feature a podle typu každé z nich zjistit jejich rodiče (a pokud by byly použity brep elementy, bylo by to ještě složitejší) a tohle všechno někam uložit. Pak byste věděl, kam vstupuje element ke smazání.

Je to analogie jako part - drawing. Chcete smazat part, a abyste zjistil, které výkresy jsou na něj navázány, musíte projít všechny výkresy. Nejde to zjistit z partu.
karel koupelna

Poslat zprávu | Profil
[#3199] | Publikováno: 20.08. 2012 - 20:47
Asi tomu nerozumím ale existuje c:Delete Useless Elements...
a funguje to.
Ing Jan Cinert

Poslat zprávu | Profil
[#3201] | Publikováno: 20.08. 2012 - 22:11
Ale jo, to samo funguje perfektně, ale pokud jsou v modelu nějaké specifické elementy (směry formování, roviny bounding boxu,...) tak stejně musí uživatel ručně a zdlouhavě vybírat, co se má smazat, jinak mu to vezme všechno a pak se jen chytí za hlavu.

V principu to ale nejde to na co se Pavel ptá a je to dostupné v hlavním menu v Part designu. :-)


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.