Autor
|
Thema: Parameterset erzeugen (5928 mal gelesen)
|
BADU Mitglied Konstrukteur
Beiträge: 124 Registriert: 02.07.2003 Catia V5R19 x64 Win7 x64
|
erstellt am: 25. Aug. 2004 09:37 <-- editieren / zitieren --> Unities abgeben:
|
BADU Mitglied Konstrukteur
Beiträge: 124 Registriert: 02.07.2003 Catia V5R19 x64 Win7 x64
|
erstellt am: 25. Aug. 2004 11:39 <-- editieren / zitieren --> Unities abgeben:
|
BADU Mitglied Konstrukteur
Beiträge: 124 Registriert: 02.07.2003 Catia V5R19 x64 Win7 x64
|
erstellt am: 27. Sep. 2004 11:27 <-- editieren / zitieren --> Unities abgeben:
Hallo Zusammen, ich habe es geschafft ein Parameterset zu erzeugen, allerdings schaffe ich es nur, es in den Hauptkörper einzufügen. Beispiel: -------------------------------------------------------------------- Dim ABody As Body Set ABody = CATIA.ActiveDocument.Part.MainBody Dim AParams As Parameters Set AParams = CATIA.ActiveDocument.Part.Parameters AParams.CreateSetOfParameters ABody ---------------------------------------------------------------------- Habt ihr eine Idee wie ich das erzeugte Parameterset direkt ins Standard-Parameterset (Parameter) einfügen kann?
------------------ Gruss BADU Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
em Michael Kirsch Mitglied Teamleiter KBE Methoden & Tools
Beiträge: 222 Registriert: 21.10.2002 CATIA V5 R16 CATIA V5 R18 CATIA V5 R19 NX 5 NX 6 NX 7.5
|
erstellt am: 27. Sep. 2004 14:15 <-- editieren / zitieren --> Unities abgeben: Nur für BADU
Hallo BADU, so gehts: Sub CATMain() Dim MyPart As Part Set MyPart = CATIA.ActiveDocument.Part Dim MyParameters As Parameters Set MyParameters = MyPart.Parameters MyParameters.CreateSetOfParameters MyPart End Sub Der Methode "CreateSetOfParameters" als Argument "Father" einfach das aktuelle Part mitgeben. Grüße, Michael ------------------
www.em.ag
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
BADU Mitglied Konstrukteur
Beiträge: 124 Registriert: 02.07.2003 Catia V5R19 x64 Win7 x64
|
erstellt am: 28. Sep. 2004 10:05 <-- editieren / zitieren --> Unities abgeben:
Hallo Michael, vielen Dank für deine Hilfe hat mir sehr geholfen. Hast du eine Idee wie ich die Parametersets ins Standard-Parameterset (siehe Bild) einfügen könnte? ------------------ Gruss BADU [Diese Nachricht wurde von BADU am 28. Sep. 2004 editiert.] [Diese Nachricht wurde von BADU am 28. Sep. 2004 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
em Michael Kirsch Mitglied Teamleiter KBE Methoden & Tools
Beiträge: 222 Registriert: 21.10.2002 CATIA V5 R16 CATIA V5 R18 CATIA V5 R19 NX 5 NX 6 NX 7.5
|
erstellt am: 29. Sep. 2004 09:53 <-- editieren / zitieren --> Unities abgeben: Nur für BADU
Hallo BADU, dazu müsstest Du das Parameterset als "Father" übergeben. Und das setzt voraus, dass es als Objekt vorliegt. Parametersets wie auch Parameter sind leider für die COM-Schnittstelle (Makros/VBA) bisher nur unvollständig zu erfassen. Es gibt für COM derzeit noch nicht einmal eine Klasse zur Beschreibung von Parametersets. Anders als bei den Bodies und HybridBodies, die mit COM wunderbar navigierbar sind, liegen aus Sicht eines Makros alle Parameter auf einer Hierarchieebene. Der "Pfad" eines Parameters geht einzig aus dem Namen des jeweiligen Parameters hervor. Mit viel Hackerei kann man versuchen, den Namen aufzulösen und daraus auf die Parametersets zu schließen. Dies ist allerlings auch nicht konsistent, da das Root-Parameterset im Namen niemals auftaucht, untergeordnete Parametersets aber schon. Als nächstes kommen wir zu dem Problem, dass mit der Methode "Parameter.Rename" nicht der wirkliche Name des Parameters verändert werden kann und das Attribut "Parameter.Name" schreibgeschützt ist. Also: Besser Finger weg und warten, bis Parameter über COM vernünftig zu fassen sind. Gruss, Michael ------------------
www.em.ag
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
SebW Mitglied MB-Student
Beiträge: 20 Registriert: 13.05.2004 User von: Catia V5R11; V5R12SP3 Catia V4
|
erstellt am: 27. Okt. 2004 08:25 <-- editieren / zitieren --> Unities abgeben: Nur für BADU
Hallo Michael, was meinst du damit, dass mit RENAME nicht der "wirkliche" Parametername verändert wird? Ich habe schon einige Parameter damit umbenannt und konnte nicht feststellen, dass irgendwelche Probleme aufgetaucht sind. Was ist denn der "wirkliche" Name? Seb Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
BADU Mitglied Konstrukteur
Beiträge: 124 Registriert: 02.07.2003 Catia V5R19 x64 Win7 x64
|
erstellt am: 27. Okt. 2004 10:02 <-- editieren / zitieren --> Unities abgeben:
Hallo SebW Michael hat nicht die Benennung eines Parameters gemeint sondern die Benennung des Starndard-Parametersets (Im Strukturbaum heisst dieser Parameter). Dies kann man tatsächlich nicht umbenennen. ------------------ Gruss BADU Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
em Michael Kirsch Mitglied Teamleiter KBE Methoden & Tools
Beiträge: 222 Registriert: 21.10.2002 CATIA V5 R16 CATIA V5 R18 CATIA V5 R19 NX 5 NX 6 NX 7.5
|
erstellt am: 29. Okt. 2004 00:39 <-- editieren / zitieren --> Unities abgeben: Nur für BADU
Hallo SebW, hallo BADU, anders als bei Shapes verschmelzen bei den Parametern aus Sicht der COM-Programmierschnittstelle Name und Pfad, denn es gibt wie oben erwähnt dort noch keine Klassen, aus denen ein solcher Pfad bestehen könnte. Deshalb ist das Jonglieren mit Parameternamen über Makros mit größter Vorsicht zu behandeln. Beispiel: Ich habe einen Parameter mit dem Namen "Real.1" im Parameterset "Parameters.1". Nun benenne ich den Parameter um: CATIA.ActiveDocument.Part.Parameters.Item("Part.1\Parameters.1\Real.1").Rename "Otto" Nach dieser Operation ist der Parameter tatsächlich mit dem Namen "Otto" ansprechbar, aber er hat dabei seinen gesamten Pfad verloren. Das mag erstmal funktionieren, aber wer die Pfade eliminiert, darf sich nicht wundern, wenn plötzlich zwei Parameter mit gleichem Namen da sind. Grüße, Michael ------------------
www.em.ag
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
shoutz000 Mitglied Techn. Produktdesigner
Beiträge: 168 Registriert: 19.08.2013 CatiaV5 R19 CatiaV5 R24 Windows 7 Professional
|
erstellt am: 17. Sep. 2014 09:01 <-- editieren / zitieren --> Unities abgeben: Nur für BADU
Möglich ist es schon ein neues leeres ParameterSet in das "normale" ParameterSet einzufügen. Hier der Code (Unter V5R19 funktioniert er einwandfrei). Fehlerbehandlungen müssen noch bei Bedarf integriert werden. Sub CATMain() Set oDocument = CATIA.ActiveDocument If TypeName(oDocument) = "PartDocument" Then Set partDocument = CATIA.ActiveDocument Set part = partDocument.Part Set Parameters = part.Parameters Set parameterSet = parameters.RootParameterSet Parameters.CreateSetOfParameters parameterSet End If End Sub Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |