Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  NX
  Dynamische Variablenbeziehung zwischen Teilen per Ausdruck

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
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX
  
Solid Edge Simulation | Linear-statische Berechnungen in der mechanischen Konstruktion
Autor Thema:  Dynamische Variablenbeziehung zwischen Teilen per Ausdruck (2143 mal gelesen)
Schneizla
Mitglied
HIWI

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

Beiträge: 6
Registriert: 18.10.2012

NX 7.5

erstellt am: 18. Okt. 2012 17: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,

ich habe eine Baugruppe, die n Teile enthält, welche über Ausdrücke unterdrückt werden. Die Variable die diesen Ausdrücke steuert ist ein String (z.B. TESTSTRING, Unterdrückung über Befehl comparestring). Es ist immer nur eines dieser Teile aktiv (nicht unterdrückt).
Ich möchte nun eine Variable (TESTVAR) anlegen, die den Wert einer Variablen aus den Unterdokumenen angibt (Wave-Verknüpfung). Diese hat in den Unterdokumenten immer den gleichen Namen (z.B. TESTINT).
Über eine Wave-Beziehung normalerweise möglich. Ich möchte aber in dieser Beziehung immer nur das aktive Teil angeben. Also hier beispielsweise über einen Ausdruck mit der Variabeln TESTSTRING. Hätte mir (um das ganze zu verdeutlichen) dann etwas in der Art "TESTVAR= TESTSTRING::TESTINT" vorgestellt. TESTSTRING sollte hier nur der Platzhalter für den benötigten string sein.

Alternative wäre über eine Summen aus den einzelnen festen Wave-Beziehungen und (theoretisch) n-vielen IF/ELSE Beziehungen, unschön.

Kennt jemand eine elegante Lösung für das Problem?

P.S. Die Namen der untergeordneten .prt´s kann ich beliebig anpassen, also theoretisch alle in TESTSTRING möglichen Werte. Und das System ist NX 7.5.
Danke

[Diese Nachricht wurde von Schneizla am 19. Okt. 2012 editiert.]

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

Walter Hogger
Moderator
Maschinenbauingenieur


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

Beiträge: 3961
Registriert: 06.10.2000

UG V2 bis UG V18
NX1 bis NX2008 ("NX19")

erstellt am: 19. Okt. 2012 13:17    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 Schneizla 10 Unities + Antwort hilfreich

Hallo Schneizla,

ich hab deinen Beitrag nun zweimal gelesen und werde nicht ganz schlau daraus.

Meinst du die Aufgabenstellung: IF "das Eine ist unterdrückt" THEN "das Andere ist nicht unterdrückt" ? Sowas geht.

Kannst du's besser beschreiben?

Gruß

------------------
Walter Hogger

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

Rainer Schulze
Ehrenmitglied V.I.P. h.c.
Dipl.-Ing. im Ruhestand


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

Beiträge: 4419
Registriert: 24.09.2012

erstellt am: 19. Okt. 2012 13:32    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 Schneizla 10 Unities + Antwort hilfreich

>>Kennt jemand eine elegante Lösung für das Problem?

Deine Fragestellung liegt etwas ausserhalb meines Erfahrungshorizonts,
aber da niemand eine Lösung anbietet, möchte ich Dich auf einen Punkt hinweisen:
In einer Baugruppe mit einer Anzahl von N Teilen existiert eine Untermenge M,
von denen M-1 Teile unterdrückt sind.
Selbst wenn Du in Betracht ziehst, ein Programm zu schreiben:
Anhand welches Identifikationsmerkmals willst Du denn aus N - (M-1)
das eine Teil erkennen, dessen Attribut Du verwenden willst?

>>... eine Summen aus den einzelnen festen Wave-Beziehungen ...

Summe?
Aber egal, was Du meinst: Das setzt voraus, dass es keine weiteren WAVE-Verknüpfungen in dieser Baugruppe gibt. Ist das verlässlich gegeben, auch hinsichtlich eventueller zukünftiger Änderungen?

------------------
Rainer Schulze

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

Schneizla
Mitglied
HIWI

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

Beiträge: 6
Registriert: 18.10.2012

NX 7.5

erstellt am: 19. Okt. 2012 14:41    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


Erklarung.JPG

 
Danke erstmal für die Antworten.
Ich denke ich hab noch nicht ganz klar Formuliert was ich machen will, deshalb ein .jpg zur Erklärung im Anhang

Im Beispiel gibt es 3 Teile (A,B,C), die je die Variable X enthalten. Die Variable MERKMAL steuert die Unterdrückung. Es ist immer das Teil aktiv, dessen Kennbuchstabe in MERKMAL hinterlegt ist (im Vorliegenden Fall also "A"). Das funktioniert auch super.
Es sind immer N-1 Elemente unterdrückt. Im gezeigten Beispiel ist Teil A aktiv. Ich möchte also in meiner Variable Y (in der Baugruppe) den Wert der Variablen X (aus Teil A) haben. Sollte nun TEIL B aktiv sein, so soll in Y der Wert der Variablen X (aus Teil B) stehen.
Die Idee mit der Summe: Ich wollte diese Formel (für Y) N mal addieren, immer mit anderem Verweis. Ich hatte die Hoffnung, dass aber nur das Teil das nicht unterdrückt wird einen Wert für X zur Verfügung stellt. Es werden aber immer alle X´s addiert.
Mit IFELSE könnte ich nun natürlich über einen Vergleich mit MERKMAL die Teile der Formel ausschalten, die ich nicht haben will. Wird dann aber ziemlich lang.
Sollte das Vorhaben völlig utopisch sein bin ich natürlich für Alternativen offen.

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

Rainer Schulze
Ehrenmitglied V.I.P. h.c.
Dipl.-Ing. im Ruhestand


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

Beiträge: 4419
Registriert: 24.09.2012

erstellt am: 19. Okt. 2012 16:11    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 Schneizla 10 Unities + Antwort hilfreich


ausdruck.JPG

 
Ich habe das Problem im ersten Anlauf zwar zu allgemein betrachtet, aber ohne Programmierung sehe ich nur eine Lösung über verschachtelte if..then..else-Strukturen.
Ich sehe keinen Weg, den Bezug von VAR zum unterdrückten Bauteil durch eine einfache Funktion zu ändern.

------------------
Rainer Schulze

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

Schneizla
Mitglied
HIWI

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

Beiträge: 6
Registriert: 18.10.2012

NX 7.5

erstellt am: 19. Okt. 2012 16: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

OK, vielen Dank. Dann kann ich die Suche an der Stelle mal pausieren lassen.
Da die Anzahl der Dateien nicht sonderlich groß ist, werde ich die klobige ifelse-Lösung wählen.

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

master001
Mitglied
Projektingenieur


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

Beiträge: 454
Registriert: 25.02.2005

erstellt am: 19. Okt. 2012 20: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 Nur für Schneizla 10 Unities + Antwort hilfreich

Hmmm das was du da schilderst könnte man zumindest lösen wenn die Körper in einem Teil liegen würden ;o)

Ich hab sowas mal erstellt um mittels ausdrücken körper in einer Baugruppe auszutauschen.

Viele Grüße

Patric

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

Schneizla
Mitglied
HIWI

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

Beiträge: 6
Registriert: 18.10.2012

NX 7.5

erstellt am: 21. Okt. 2012 17:20    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

Hmm, hört sich interessant an. Ist ziemlich genau was ich brauche. Allerdings die Teile auszutauschen funktioniert schon. Nur die Geschichte mit der Variablen (siehe oben) geht noch nicht.
Wie hast du´s denn gelöst?

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)2024 CAD.de | Impressum | Datenschutz