| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX |
Autor
|
Thema: NX Open: Teilebezeichnung auslesen (1346 mal gelesen)
|
Inf301c Mitglied
Beiträge: 10 Registriert: 19.11.2019
|
erstellt am: 19. Nov. 2019 12:23 <-- editieren / zitieren --> Unities abgeben:
Guten Tag Ich lese zur Zeit mit visual basic die Nummer aller Teile in einer Baugruppe aus. Zusätzlich benötige ich aber auch die Bezeichnung dieser Teile. Code:
Public theSession As Session = Session.GetSession() Public lw As ListingWindow = theSession.ListingWindow Dim dispPart As Part = theSession.Parts.Display Dim c As ComponentAssembly = dispPart.ComponentAssembly lw.Open lw.WriteLine("Assembly: " & c.RootComponent.DisplayName) lw.Close
Dieser Code gibt mir jetzt die Nummer der Baugruppe. Wie erhalte ich aber die Bezeichnung? Alternativ würde auch der Objektname, den ich unter den Eigenschaften finde genügen. Dieser setzt sich aus Nummer, Index und Bezeichnung zusammen. Freundliche Grüße [Diese Nachricht wurde von Inf301c am 13. Dez. 2019 editiert.] [Diese Nachricht wurde von Inf301c am 13. Dez. 2019 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
matthias-p Moderator Konstruktion / Anwenderbetreuung
Beiträge: 501 Registriert: 09.06.2006 Teamcenter 11.3 / NX 11 Windows 10
|
erstellt am: 20. Nov. 2019 07:43 <-- editieren / zitieren --> Unities abgeben: Nur für Inf301c
|
geraldb Mitglied
Beiträge: 38 Registriert: 13.09.2008
|
erstellt am: 20. Nov. 2019 07:57 <-- editieren / zitieren --> Unities abgeben: Nur für Inf301c
Da die Informationen der Teile einer Baugruppe ausgelesen werden sollen würde ich den Weg über Attribute gehen bspw. so: Code:
String pName = c.GetUserAttributeAsString("DB_PART_NAME", NXObject.AttributeType.String, -1) lw.WriteLine("Assembly: " & c.RootComponent.DisplayName & ", PartName: " & pName)
Auslesen der Unterstufeninformationen:
Code:
Dim childNo As String = "" Dim childName As String = "" For Each comp As NXOpen.Assemblies.Component In c.RootComponent.GetChildren() childNo = comp.GetInstanceUserAttributeAsString("DB_PART_NO", NXObject.AttributeType.String, -1) childName = comp.GetInstanceUserAttributeAsString("DB_PART_NAME", NXObject.AttributeType.String, -1) lw.WriteLine("Childno: " & childNo & ", Childname: " & childName) Next
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
matthias-p Moderator Konstruktion / Anwenderbetreuung
Beiträge: 501 Registriert: 09.06.2006 Teamcenter 11.3 / NX 11 Windows 10
|
erstellt am: 20. Nov. 2019 08:00 <-- editieren / zitieren --> Unities abgeben: Nur für Inf301c
|
| Vermessungsingenieur*in im Hamburger Hafen als Truppführer*in im Außendienst | Nachhaltiges Hafenmanagement aus einer Hand: wir sorgen für den wirtschaftlichen Herzschlag der Hansestadt. Tag für Tag geben unsere 1.800 Beschäftigten vollen Einsatz in Sachen Schienen, Straßen, Schotter, Brücken, Schleusen, Sperrwerke sowie Sicherheit und Wirtschaftlichkeit im Hafen. Wir planen und begleiten komplexe Projekte für eine Vielzahl von konstruktiven Bauwerken und managen Immobilien und Flächen.... | Anzeige ansehen | Elektrotechnik, Elektronik |
|
Inf301c Mitglied
Beiträge: 10 Registriert: 19.11.2019
|
erstellt am: 22. Nov. 2019 10:46 <-- editieren / zitieren --> Unities abgeben:
Vielen Dank! Genau das habe ich gesucht. Hätte vielleicht noch anmerken sollen, dass ich Teamcenter benutze, ja. Weiss jemand, wie so ein Script in Python aussehen würde? Ich schreibe es momentan in VisualBasic weil mehr Beispiele gefunden werden können, Endziel ist aber Python. Freundliche Grüsse Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |