Autor
|
Thema: Parameter gleichsetzen: Syntax (1454 mal gelesen)
|
grossmao Mitglied Student
Beiträge: 16 Registriert: 15.02.2011 Intel Core 2 Duo 2,2 GHz ; 4GB ATI Mobility Radeon HD 4500 Series Windows 7 Professional CATIA V5 R 19
|
erstellt am: 15. Mrz. 2012 15:03 <-- editieren / zitieren --> Unities abgeben:
Hallo CAD'ler, ich habe eine Reaction programmiert, die einen Parameter überwacht. Unterschreitet dieser Parameter einen bestimmten Wert, so soll die Reaction ausgelöst werden. Soweit funktioniert alles und ich kann eine MsgBox ausgeben lassen. Wie aber lautet der richtige Quellcode, wenn ich einen Parameter verändern lassen will? Sinngemäß soll das so aussehen: If length1.value > length2.value Then -->>Setze length3 = length2<<-- (hiefür brauche ich die korrekte Syntax) Ich danke euch für eure Hilfe mfG Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
moppesle Ehrenmitglied V.I.P. h.c. Konstrukteur
Beiträge: 3418 Registriert: 28.05.2009 CATIA V5 R19 SP9 WIN 7 64bit
|
erstellt am: 15. Mrz. 2012 15:17 <-- editieren / zitieren --> Unities abgeben: Nur für grossmao
Hallo grossmao, if `Länge Bauteil` ==`Breite Bauteil` `Höhe Bauteil` =50mm Hey Bernd, noch im Urlaub? ------------------ Gruß Uwe Auch Catia ist nur ein Mensch! [Diese Nachricht wurde von moppesle am 15. Mrz. 2012 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
grossmao Mitglied Student
Beiträge: 16 Registriert: 15.02.2011 Intel Core 2 Duo 2,2 GHz ; 4GB ATI Mobility Radeon HD 4500 Series Windows 7 Professional CATIA V5 R 19
|
erstellt am: 15. Mrz. 2012 15:34 <-- editieren / zitieren --> Unities abgeben:
|
moppesle Ehrenmitglied V.I.P. h.c. Konstrukteur
Beiträge: 3418 Registriert: 28.05.2009 CATIA V5 R19 SP9 WIN 7 64bit
|
erstellt am: 15. Mrz. 2012 15:47 <-- editieren / zitieren --> Unities abgeben: Nur für grossmao
Hallo grossmao, Zitat: wie soll ich deine Antwort deuten?
ja so wie es geschrieben ist. In einer Regel oder Reaction zu verwenden. Zitat: If length1.value > length2.value Then
steht für if `Länge Bauteil` ==`Breite Bauteil` ( `Länge Bauteil`= Parameter1; `Breite Bauteil`=Parameter2) "Then" benötigst du nicht. Zitat: -->>Setze length3 = length2<<--
steht für `Höhe Bauteil` =50mm (`Höhe Bauteil`= Parameter3 der die Änderung beinhalten soll. ------------------ Gruß Uwe Auch Catia ist nur ein Mensch! [Diese Nachricht wurde von moppesle am 15. Mrz. 2012 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
grossmao Mitglied Student
Beiträge: 16 Registriert: 15.02.2011 Intel Core 2 Duo 2,2 GHz ; 4GB ATI Mobility Radeon HD 4500 Series Windows 7 Professional CATIA V5 R 19
|
erstellt am: 16. Mrz. 2012 09:11 <-- editieren / zitieren --> Unities abgeben:
Hallo moppesle, nachdem ich das "Then" rausgenommen habe, zeigt er mir einen Kompilierungsfehler an. Sicher, dass du eine Reaction und keine Rule meinst? Hier mal mein Quellcode, vielleicht könnt ihr mich so besser verstehen: Code: Dim documents1 As Documents Set documents1 = CATIA.DocumentsDim partDocument1 As Document Set partDocument1 = documents1.Item("GEOMETRIE_1.CATPart") Dim part1 As Part Set part1 = partDocument1.Part Dim parameters1 As Parameters Set parameters1 = part1.Parameters Dim length1 As Parameter Set length1 = parameters1.Item("Hypotenuse_IST_rechts_2") Dim length2 As Parameter Set length2 = parameters1.Item("Hypothenuse_SOLL_rechts_2") Dim length3 As Length Set length3 = parameters1.Item("Pendellänge") If length1.Value > length2.Value 'Then MsgBox "Pendellänge kürzen!" Set "Pendellänge" = length2 else MsgBox "Pendellänge OK" "Pendellänge" = "800,00mm" End If
End sub
vielen Dank für eure Mühe Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
moppesle Ehrenmitglied V.I.P. h.c. Konstrukteur
Beiträge: 3418 Registriert: 28.05.2009 CATIA V5 R19 SP9 WIN 7 64bit
|
erstellt am: 16. Mrz. 2012 09:18 <-- editieren / zitieren --> Unities abgeben: Nur für grossmao
Hallo grossmao, willst du ein Makro schreiben oder eine Reaction erstellen? Mein Syntax funzt nur in einer Reaction oder Regel. Dann benötigst du auch keine Deklarationen. In einem Makro sieht das wieder ein wenig anders aus. ------------------ Gruß Uwe Auch Catia ist nur ein Mensch! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
Beiträge: 11780 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 16. Mrz. 2012 09:20 <-- editieren / zitieren --> Unities abgeben: Nur für grossmao
Servus Also ihr redet von verschiedenen Anwendungen (einmal VB einmal in Knowledgware). Versuch es mal so (ich gehe davon aus dann dien Parameter vom Typ "Länge" sind) (ungetestet): Code: If length1.Value > length2.Value ThenMsgBox "Pendellänge kürzen!" length3.value = length2.value else MsgBox "Pendellänge OK" length3.value = 800 End If
Gruß Bernd------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
moppesle Ehrenmitglied V.I.P. h.c. Konstrukteur
Beiträge: 3418 Registriert: 28.05.2009 CATIA V5 R19 SP9 WIN 7 64bit
|
erstellt am: 16. Mrz. 2012 09:35 <-- editieren / zitieren --> Unities abgeben: Nur für grossmao
|
grossmao Mitglied Student
Beiträge: 16 Registriert: 15.02.2011 Intel Core 2 Duo 2,2 GHz ; 4GB ATI Mobility Radeon HD 4500 Series Windows 7 Professional CATIA V5 R 19
|
erstellt am: 16. Mrz. 2012 09:39 <-- editieren / zitieren --> Unities abgeben:
|