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

Rules - error

UživatelPříspěvek
Peter Kovac

Poslat zprávu | Profil
Datum: 27.11. 2013 | Zobrazeno: 9963x
Konfigurace CATIA: R18

Text dotazu:
Zdravim

Mam otazku ohladom rules.
Mam vytvorenu napr. parallel line na ploche v urcitom offsete. Ak offset zvacsim a parallel line bude mimo plochy (suportu), hlasi chybu a v tom priapde chcem ciaru deaktivovat. K comu som dospel, je nasledovne:

let c(curve)

c=Set\Direction.2\Parallel.1
If (c.Error==true)
{
c.Activity =false
}
else
{
c.Activity =true

avsak nefunguje, stale hlasi chybu pri parallel a nedeaktivuje ju...
Vie mi niekto pomoct?

Vdaka
Peter

Ing Jan Cinert

Poslat zprávu | Profil
[#4285] | Publikováno: 28.11. 2013 - 10:28
Zkuste místo Rule použít Reaction, to funguje.

Přiložené obrázky:

Peter Kovac

Poslat zprávu | Profil
[#4286] | Publikováno: 28.11. 2013 - 16:11
hm, funguje, dakujem!
Peter Kovac

Poslat zprávu | Profil
[#4287] | Publikováno: 29.11. 2013 - 08:48
Funguje to, ale predsa len otazka :)
Kedze je to reaction, reaguje na nejaku vyvolanu cinnost, v tomto pripade na zmenu offsetu. Co je sice dobre, ale co v pripade, ak sa mi zmeni support. Vtedy to uz fungovat nebude, skusil som najst ine funkcie - nie som si isty, ako funguju atribtuty - je tam dokonca moznost aj error, ale nejdi mi, resp. neviem ako na to.

Najlepsie by bolo asi Rule, ale v tomto pripade to nejde...

Je mozne este nejake ine riesenie?
Ing Jan Cinert

Poslat zprávu | Profil
[#4288] | Publikováno: 29.11. 2013 - 10:02
Rule fungovat nebude. Vlastní kontrola podmínky v Rule se děje při změně na modelu, tj. updatuje se model, vyhodnotí se podmínka a podle toho se provedou akce. Podle mě je problém v tom, že Rule sice pozná, že je v Parallel chyba a deaktivuje jí, ale v tu chvíli už tam chyba zase není a podle Rule by ji měl aktivovat. Takže vznikne jakási nekonečná smyčka a Catia se s tím neporadí.

Co se týká reakce, tak změna parametru není jediná událost, která se dá použít, spolehlivě by měla fungovat událost Update nad celým Partem, nebo nad vybraným feature.
Peter Kovac

Poslat zprávu | Profil
[#4289] | Publikováno: 29.11. 2013 - 10:50
no asi to zle zapisujem - do selection pre reakciu dam part (alebo set), v ktorom sa nachadza moja parallel line a do attribute davam update, zvysok kodu v action ostava rovnaky... nejde :-o
Ing Jan Cinert

Poslat zprávu | Profil
[#4290] | Publikováno: 29.11. 2013 - 12:15
Set asi nebude to pravé, protože Set se de facto neaktualizuje. Pro part to musí fungovat, viz. obrázky. Při jakémkoliv Update to napíše hlášku, Vy si tam dáte svůj skript.

Přiložené obrázky:

Peter Kovac

Poslat zprávu | Profil
[#4291] | Publikováno: 29.11. 2013 - 12:27
no funguje a aj nie :) skusil som len s hlaskou, ze prebehol update a je to ok.
Ale, problem je ten, ze pri chybe, t.j pri tom, ako parallel line nema riesenie, tak v tomto pripade ten update neprebehne, cize sa nemoze vykonat ani Reaction...


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.