Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Geometrie mit Regel löschen/deaktivieren

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Geometrie mit Regel löschen/deaktivieren (1881 mal gelesen)
dusches
Mitglied



Sehen Sie sich das Profil von dusches an!   Senden Sie eine Private Message an dusches  Schreiben Sie einen Gästebucheintrag für dusches

Beiträge: 26
Registriert: 26.03.2010

erstellt am: 26. Mrz. 2010 11:55    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

hallo,

da ich erst vor kurzem in die  CATIA programmierung eingestiegen bin ich noch relativ unerfahren, was Befehle etc. angeht.

Ich habe das Problem, dass ich ein Intersect deaktivieren möchte, sobald es keine Lösung liefert, damit das Update trotzdem durchläuft.wahlweise kann es auch gelöscht werden.hauptsache es stört das update nicht.
wie lautet denn der befehl für Regeln um geometrie (z.B. Linien oder Punkte) zu löschen bzw. zu deaktivieren?

gibt es denn auch die Möglichkeit das Deaktivieren für die Children separat anzusteuern, so dass manache children nicht deaktiviert werden?

Das ganze soll OHNE ein Makro passieren. Regeln, Reaktionen o-ä. sind aber in Ordnung.
Gibt es da überhaupt eine Möglichkeit?

Vielen Dank schon einmal!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

shorty10l
Mitglied
Projektingenieur


Sehen Sie sich das Profil von shorty10l an!   Senden Sie eine Private Message an shorty10l  Schreiben Sie einen Gästebucheintrag für shorty10l

Beiträge: 11
Registriert: 03.05.2009

CATIA V5 R18 P2
Windows XP, SP5 BN18 HF40

erstellt am: 29. Mrz. 2010 13:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für dusches 10 Unities + Antwort hilfreich

Hallo,

Du könntest einfach einen boolschen Parameter erstellen, und diesen dann über den Formeleditor auf "Activity" des intersects setzen.
Dann könntest Du über die Parametersteuerung true/false den intersect steuern.
Verständlich  ??

Gruß,
Shorty

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

dusches
Mitglied



Sehen Sie sich das Profil von dusches an!   Senden Sie eine Private Message an dusches  Schreiben Sie einen Gästebucheintrag für dusches

Beiträge: 26
Registriert: 26.03.2010

erstellt am: 29. Mrz. 2010 15:23    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

hi shorty,

vielen Dank für die Antwort! Die Idee ist echt sehr gut!

Jetzt verstehe ich leider nur noch nicht genau wie ich den Intersect über den parameter ansteuern kann.
Ich habe im Formeleditor des Parameters die Activity des Intersects eingefügt. Jetzt stellt sich der boolsche parameter auf true/false je nach dem ob ich das Intersect aktiv schalte oder deaktiviere. eigentlich bräuchte ich das ganze aber umgekehrt.

Wie kann ich denn diese Abhängigkeit umdrehen? so dass ich das Intersect aktiviere indem ich den Parameter auf true setze?

gruß
dusches

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

MICHLICK
Mitglied
CAD Methodik Entwickler (CATIA; NX)


Sehen Sie sich das Profil von MICHLICK an!   Senden Sie eine Private Message an MICHLICK  Schreiben Sie einen Gästebucheintrag für MICHLICK

Beiträge: 454
Registriert: 20.06.2001

Der Aufwand bei Änderungen ist groß, wenn die Finger schneller klicken als das Gehirn denkt.

erstellt am: 29. Mrz. 2010 16:25    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für dusches 10 Unities + Antwort hilfreich

Hallo,

Du hast einen Fehler bei der Erstellung der Formel gemacht.
1. alte Formel löschen
2. f(x) aufrufen (Formeleditor)
3. Element auswählen, welches über den Parameter gesteuert werden soll.
4. Den Schalter "Add formula" drücken.
5. Den Parameter in die Formel einfügen.
6. Fertig.

------------------
Gruß Michael B.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

dusches
Mitglied



Sehen Sie sich das Profil von dusches an!   Senden Sie eine Private Message an dusches  Schreiben Sie einen Gästebucheintrag für dusches

Beiträge: 26
Registriert: 26.03.2010

erstellt am: 29. Mrz. 2010 18:13    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

aaaah! wunderbar! ja so klappt es. danke!

jetzt habe ich noch eine Frage zur Regelerstellung...nach mehrfachen Änderungen und Überlegungen komme ich einfach nicht darauf warum mein quelltext einen update cycle erzeugt. das Problem liegt in der letzten Zeile, wo ich sage, dass meine "Curve" das Intersect.2 sein soll.


let i(curve)

i = intersect( `Geometrical Set.1\Flaeche_2` ,`yz plane` )

if (i.Error==true)

{
`Boolean.2` = false
`Geometrical Set.1\Curve` = `Geometrical Set.1\Intersect.1`
}

else
{
`Boolean.2` = true
`Geometrical Set.1\Curve` = `Geometrical Set.1\Intersect.2`
}

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

dusches
Mitglied



Sehen Sie sich das Profil von dusches an!   Senden Sie eine Private Message an dusches  Schreiben Sie einen Gästebucheintrag für dusches

Beiträge: 26
Registriert: 26.03.2010

erstellt am: 30. Mrz. 2010 10:18    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

also...das problem habe ich mit einem kleinen haken erledigt...das update cycle problem ist folgendes:
Die Regel beeinflußt den boolschen Parameter, der das intersect steuert. wenn ich jetzt das intersect in die regel reinschreibe gibt es einen update cycle.
jetzt erzeuge ich die schnitte IN der Regel und übernehme sie nicht von aussen.

anders geschrieben lautet der quelltext:

let isect1(curve)
let isect2(curve)

isect1 = intersect(`Geometrical Set.1\Flaeche_1` , `yz plane` )
isect2 = intersect( `Geometrical Set.1\Flaeche_2` ,`yz plane` )

if (isect2 .Error==true)

{
`Boolean.1` = true
`Boolean.2` = false
`Geometrical Set.1\Curve` = isect1
}


else
{
`Boolean.1` = false
`Boolean.2` = true
`Geometrical Set.1\Curve` = isect2
}

der haken ist nur, dass ich mit meiner lösung die boolschen parameter und damit auch die intersections im strukturbaum gar nicht bräuchte. die kann ich lediglich als "alibi" intersections im baum lassen. gibt es denn eine andere möglichleit die intersections in die regel zu übernehmen?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

MICHLICK
Mitglied
CAD Methodik Entwickler (CATIA; NX)


Sehen Sie sich das Profil von MICHLICK an!   Senden Sie eine Private Message an MICHLICK  Schreiben Sie einen Gästebucheintrag für MICHLICK

Beiträge: 454
Registriert: 20.06.2001

Der Aufwand bei Änderungen ist groß, wenn die Finger schneller klicken als das Gehirn denkt.

erstellt am: 31. Mrz. 2010 08:26    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für dusches 10 Unities + Antwort hilfreich

In diesem Fall solltest Du die Aktivity nicht über die Formel sondern in der Regel steuern.

Einfach die Formel löschen.
In der Regel dann <Elementname>.Activity = false
So sollte es funktionieren und Du bekommst auch keinen update cycle.


------------------
Gruß Michael B.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz