Několika násobný split plochy -> vrstevnice
Uživatel | Příspěvek |
Břeťa Doležal ![]() ![]() Poslat zprávu | Profil |
Datum:
7.8. 2012
| Zobrazeno:
10949x Konfigurace CATIA: Text dotazu: |
Břeťa Doležal ![]() ![]() Poslat zprávu | Profil |
[#3156]
| Publikováno:
07.08. 2012 - 13:44 Nefunguje mi objSPAWorkbench.Measurable. Že prý objekt nepodporuje tuto vlastnost či metodu. Máte někdo zkušenosti?
|
Ing Jan Cinert ![]() ![]() Poslat zprávu | Profil |
[#3157]
| Publikováno:
07.08. 2012 - 13:51 Tohle přesně jsem sice nedělal, ale řezáním geometrie už jsem zabýval. Teoreticky jsou vaše požadavky celkem dobře splnitelné, nejde o nic závratného, prakticky to ale bude složitější. Celou proceduru bych dal do velkého cyklu, kde se vždy vytvoří rovina a rozřízne zdrojovou plochu (Na začátku asi bude třeba určit polohu první roviny, pokud plocha bude v obecném prostoru.) Výsledkem řezu budou dvě nové plochy. Bude se muset určit, které z nich je "níž" (první nebo každá další vrstevnice) a ta se obarví podle nastavené škály.
Zjištění, které část Splitu je ta konečná, se provede vytvořením extrému a měřením. Pokračuje se dál se zbytkem plochy. Pak je třeba kontrolovat, jestli už nejsme na konci, tj, jestli je ještě co řezat a pokud ne, cyklus ukončit. Nevím jak se makru bude chovat, pokud budou vznikat vícenásobné výsledky - multi domain result. Vytvoření Plane a Split si zkuste nahrát u kód vzniklý rekordérem jen upravit, je to chvilka a jde to snadno. Měří se takto: Dim Distance As Double oRef1 a oRef2 jsou reference měřených objektů, např. plocha a rovina |
Břeťa Doležal ![]() ![]() Poslat zprávu | Profil |
[#3160]
| Publikováno:
07.08. 2012 - 14:41 Uživatel odpovídá na příspěvek #3157:
Díky. V nápovědě pro .GetMinimumDistance mají .Measurable na místo .GetMeasurable. Hurá, mám první krok pro určení horní a spodní roviny. To jak budu rozhodovat o tom který split nechat a který ne bude asi také "sranda". Vypadá to že budu muset dočasně udělat oba s volbou 1 a -1 a potom se z měření rozhodnout. Pokud bude výsledkem více ploch, tak je budu chtít zachovat všechny. To by snad nemusel být problém, pokud bude možné makrem dát volbu "keep all". |
Ing Jan Cinert ![]() ![]() Poslat zprávu | Profil |
[#3161]
| Publikováno:
07.08. 2012 - 14:45 Na keep all zapomeňte, tohle myslím nejde. Já to vždy dělal mrtvé, abych si ušetřl starosti. Na multi domain resultu pak spousta funkcí nejde udělat... |
Břeťa Doležal ![]() ![]() Poslat zprávu | Profil |
[#3194]
| Publikováno:
20.08. 2012 - 09:38 Díky za rady. Už se mi podařilo dodělat základ makra.
Multi domain byl bez komplikací, nechával po řezech vše, tudíž jsem to nemusel ani řešit. Na oplátku ještě kousek kódu na určení, zda jsou roviny rovnoběžné, pro případné zájemce:
|
Ing Jan Cinert ![]() ![]() Poslat zprávu | Profil |
[#3197]
| Publikováno:
20.08. 2012 - 10:10 Ten výsledek vůbec nevypadá špatně. Já už dlouho přemýšlím o makru na zjišťovaní tloušťky materiálu (výsledkem by byla nějaká podobná barevná mapa). Catie to sice umí celkem pěkně, ale musí na to být licence, kterou většinou firmy nemají.
Principem by bylo buď pasování vepsaných koulí mezi dvě plochy nebo vytvoření pravidelné sítě bodů na ploše a pak vytvoření normál a jejich průsečíků s druhou plochou. Rychlost a přesnost by pak závisela na roztečí koulí / bodů. |
Břeťa Doležal ![]() ![]() Poslat zprávu | Profil |
[#3203]
| Publikováno:
21.08. 2012 - 10:10 Nevíte někdo náhodou jak v API zapnout/vypnout volbu "Keep element in half space" u operace Split? Pokud řežu plochu s velikým výškovým rozdílem, tak není problém, zůstává jen jedna část, ale pokud jsou rozdíly pouze v setinách mm. Tak mi Catie nechává obě části plochy při řezu a pokud zapnu volbu Keep element in half space, tak to nechá jen jednu část, což potřebuji. Možná by to řešilo i nějaké přenastavení přesnosti pro výpočet, ale to už vůbec nevím jak ovlivnit....Díky za případnou radu.
|
Ing Jan Cinert ![]() ![]() Poslat zprávu | Profil |
[#3204]
| Publikováno:
21.08. 2012 - 12:07 Tak teď jsem chvíli koukal, že ten dialog je nějaký rozšířený. Tato funkcionalita je dostupná až od R20.
Zkuste na to rekordér, jestli to API podporuje, tak by to měl zaznamenat. Přesnost pro výpočet je asi pevně daný přímo v kódu catie, s tím podle mě nic nepůjde. |
Břeťa Doležal ![]() ![]() Poslat zprávu | Profil |
[#3216]
| Publikováno:
23.08. 2012 - 09:48 Tak to API nepodporuje :o(. V manuálech nic a záznamník také nic. A jsem v ...
No nic, musím upravit výchozí plochu a změnit měřítko v jednom směru, takto to funguje. změní se výškové rozdíly z desítek mm na jednotky mm a bude. |
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.