Autor
|
Thema: Deklarieren von Skizzenausgaben in VBA (3009 mal gelesen)
|
cyzed Mitglied Ingenieur
Beiträge: 55 Registriert: 27.10.2009 CATIA V5R19 SP3 32Bit Windows XP 32Bit AMD Athlon II X4 620 2,6 GHz 4 GB DDR2 RAM NVIDIA GeForce 7300GT
|
erstellt am: 27. Nov. 2009 12:34 <-- editieren / zitieren --> Unities abgeben:
|
V5Playaz Mitglied Dipl.-Ing (BA)
Beiträge: 447 Registriert: 12.07.2005 DELL PRECISION 390 3,25 GB RAM WIN XP PRO SP2 CATIA V5 R16-19 Delmia V5 R19 VB6, VB2008 Adobe Acrobat 9 Pro Extended
|
erstellt am: 27. Nov. 2009 14:49 <-- editieren / zitieren --> Unities abgeben: Nur für cyzed
Hallo, entweder man spricht diese Elemente direkt über den Strukturbaum an, oder über eine Suchabfrage. zu 1.: via Objektauflösung Strukturbaum-Element selektieren und Code generieren. zu 2.: versuchen per Suche (strg+F) diese Elemente zu finden und zu selektieren. Diese Suchabfrage dann in einem Makro ausführen. Das Umbenennen selbst geht dann über das Ändern der Texteigenschaft. grüße Dominik Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
DanielFr. Moderator Manager
Beiträge: 2506 Registriert: 10.08.2005 HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3
|
erstellt am: 29. Nov. 2009 16:13 <-- editieren / zitieren --> Unities abgeben: Nur für cyzed
Hallo, ich habe das am Freitag mal versucht. Bin aber leider auch nicht zu einem Ergebnis gekommen. Ich denke du musst dir deine Problematik mit den Skizzen nochmal überlegen (in Bezug nehmend auf diesen Beitrag Liste über Regel abfragen). Vielleicht hilft es dir ja weiter wenn du nicht versuchst alle Linien in einen Sketch zu zeichnen und das Feature über die Outputs des Sketches zu steuern sondern mit einer Konstruktionstabelle die dann die entsprechenden Linien einfach als Konstruktionselemente definiert (solch einen Beitrag hatten wir hier bereits. Das ging zwar um Punkte könnte man aber mit Linien genauso machen. Hier mal der Link Variable Muster_Konstruktionstabelle) @ Dominik: 1. Leider geht es nicht mit einer Objektauflösung da hier die komplette Skizze selektiert wird. Selbst wenn man versucht den Typ zu bestimmen erhält man den Sketch. In der Online-Doku steht absolut nicht drinnen. 2. Die Output Elemente kannst du über die Suche in der Umgebung Sketcher und den Typ Output Variable Muster_Konstruktionstabelle(ACHTUNG NICHT OUTPUTS)finden. Hierzu einfach mal ein Makro aufzeichnen und suchen. Der richtige Suchstring wird dann automatisch gesetzt. Im Anschluss musst du dann mit einer Schleife durch die Selektion. Achtung ja mehr Outputs du verwendest desto weniger performant werden Makro´s mit Suchfunktionen ablaufen. Von dem her eher mal den obigen Vorschlag durchdenken ------------------ MFG Daniel Systeminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
cyzed Mitglied Ingenieur
Beiträge: 55 Registriert: 27.10.2009
|
erstellt am: 04. Dez. 2009 11:43 <-- editieren / zitieren --> Unities abgeben:
danke für die Tipps, ich habe das jetzt so weit geschaft, dass ich die Ausgabekomponenten inaktivieren kann...Was müsste ich in meiner Syntax ändern damit die Ausgabekomponente umbenannt wird??? Dim partdocument1 Dim selection1 Dim ausgabe
Set partdocument1 = CATIA.ActiveDocument Set selection1 = partdocument1.Selection selection1.Clear selection1.Search "CATSketchSearch.2DOutput,all" Set ausgabe = selection1.item(1).Value selection1.Clear selection1.Add ausgabe CATIA.StartCommand ("inaktivieren") gruß Alex Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
V5Playaz Mitglied Dipl.-Ing (BA)
Beiträge: 447 Registriert: 12.07.2005 DELL PRECISION 390 3,25 GB RAM WIN XP PRO SP2 CATIA V5 R16-19 Delmia V5 R19 VB6, VB2008 Adobe Acrobat 9 Pro Extended
|
erstellt am: 04. Dez. 2009 11:54 <-- editieren / zitieren --> Unities abgeben: Nur für cyzed
|
cyzed Mitglied Ingenieur
Beiträge: 55 Registriert: 27.10.2009
|
erstellt am: 04. Dez. 2009 12:12 <-- editieren / zitieren --> Unities abgeben:
also irgendwas mache ich da falsch, weil mit ausgabe.name habe ich bereits ausprobiert Dim partdocument1 Dim selection1 Dim ausgabe Set partdocument1 = CATIA.ActiveDocument Set selection1 = partdocument1.Selection selection1.Clear selection1.Search "CATSketchSearch.2DOutput,all"
Set ausgabe = selection1.item(1).Value selection1.Clear ausgabe.Name = "test"
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Starbirth Mitglied Konstrukteur
Beiträge: 119 Registriert: 22.10.2009 Catia V5-6 R24 Windows 7 64bit Intel Xeon (4x3,5GHz) 32B Ram Nvidia Quatro K4200
|
erstellt am: 04. Dez. 2009 12:51 <-- editieren / zitieren --> Unities abgeben: Nur für cyzed
|
ptit.tom Mitglied CAD-Berater
Beiträge: 114 Registriert: 11.02.2005 win10, CATIA R19 bis R30
|
erstellt am: 25. Jan. 2011 17:28 <-- editieren / zitieren --> Unities abgeben: Nur für cyzed
Hallo, Ich grabe das Thema aus. Ich stoße gerade auf die gleiche Schwierigkeiten als Cyzed. Ich will mit einem Makro Ausgaben einer Skizze umbenennen. Leider funktioniert die Eigenschaft ".Name" in diesem Fall nicht. Für Parameters kenne ich den Umweg mit der Methode ".Rename". Es funktioniert in diesem Fall auch nicht. Mein Makro (ich selektiere meine Ausgabe vor dem Start):
Code:
Dim oDoc As PartDocument Set oDoc = CATIA.ActiveDocumentDim MySel As Selection Set MySel = oDoc.Selection Debug.Print MySel.Item(1).Value.Name On Error Resume Next MySel.Item(1).Value.Name = "test" If Err.Number <> 0 Then MsgBox "Something bad just happened", vbCritical, "Rename failed" MySel.Item(1).Value.Rename "test" End If Err.Clear On Error GoTo 0
Ideen ? Gruß, Florent.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
felkampe Mitglied
Beiträge: 4 Registriert: 03.08.2011 Catia V5 R19 SP3
|
erstellt am: 20. Feb. 2012 11:07 <-- editieren / zitieren --> Unities abgeben: Nur für cyzed
Hallo Zusammen! Ich grabe diesen alten Beitrag wieder aus, da ich leider nirgends eine Lösung finden kann... Ich habe ebenfalls das Problem, dass ich ein Ouptut Feature einer Skizze umbenennen will. Die Auswahl des Outputs ist kein Problem, ich finde jedoch nicht den passenden Befehl um auf den Namen zuzugreifen. Die Funktion TypeName gibt übrigens den Typ "item" aus... Für einen Vorschlag wäre ich sehr dankbar! Gruß F.Kampe 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: 20. Feb. 2012 11:21 <-- editieren / zitieren --> Unities abgeben: Nur für cyzed
Servus Über den Displayname (ModelElement) klappt das umbenennen. (siehe auch Forensuche) Code: Sub CATMain()Dim partdocument1 As PartDocument Dim selection1 As Selection Dim ModelElement Set partdocument1 = CATIA.ActiveDocument Set selection1 = partdocument1.Selection selection1.Clear selection1.Search "CATSketchSearch.2DOutput,all" Set ModelElement = selection1.Item(1).Value.GetItem("ModelElement") ModelElement.DisplayName = "Test" End Sub
Gruß Bernd------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
felkampe Mitglied
Beiträge: 4 Registriert: 03.08.2011 Catia V5 R19 SP3
|
erstellt am: 20. Feb. 2012 15:54 <-- editieren / zitieren --> Unities abgeben: Nur für cyzed
|