| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX |
Autor
|
Thema: Objekt (hier Linie) einen Namen zuweisen (1158 / mal gelesen)
|
uger Mitglied CADler & Kinematiker
Beiträge: 1115 Registriert: 25.02.2003 NX10 WIN7 64Bit
|
erstellt am: 30. Aug. 2016 10:56 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen. Meine Hobby-VB-Kenntnisse reichen für NX leider nicht aus. Ich hoffe es kann mir einer auf die Sprünge helfen. Ich möchte einer Linie einen Namen zuweisen. Dazu habe ich folgenden VB-Code erstellt (Ausschnitt) Code:
Dim startPoint1 As Point3d Dim endPoint1 As Point3d Dim line1 As Line Dim NeuerName As String = "" startPoint1 = New Point3d(27,0.19,17.042) endPoint1 = New Point3d(36,0.19,17.042) NeuerName="MeineLinie1"
line1 = workPart.Curves.CreateLine(startPoint1, endPoint1) line1.SetName = (NeuerName)
Die letzte Zeile führt dann zu einem Kompilierungsfehler und das Script bricht ab. Wie müsste die Anweisung aussehen um der Linie einen Namen (den ich unter EIGENSCHAFTEN im NX sehen kann) zuzuweisen? Und: wie müsste der Code aussehen wenn ich ein Attribut, welches am Objekt noch nicht existiert, zuweisen möchte? Die Linie soll z.B. das Attribut MeinAttr mit dem Inhalt "Achse01" erhalten. BTW: Gibt es eine Quelle aus der man diese Basics zur NX-Programmierung beziehen kann? Tutorials? Bücher? Mir scheint das für den Gelegenheitsprogrammierer zu verzwickt. uger ------------------ Deine Wahrnehmung bestimmt deine Realität! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
geraldb Mitglied
Beiträge: 38 Registriert: 13.09.2008
|
erstellt am: 30. Aug. 2016 23:44 <-- editieren / zitieren --> Unities abgeben: Nur für uger
|
Caliban Mitglied
Beiträge: 94 Registriert: 21.02.2015 NX 10.0.3.5 NX 11.0.0.33 GPU: NVIDIA Quadro K2200 CPU: Intel Xeon E3-1245 RAM: 32 GB
|
erstellt am: 31. Aug. 2016 08:18 <-- editieren / zitieren --> Unities abgeben: Nur für uger
Hallo uger, Hast du schon mal ein Journal aufgezeichnet das eine Linie erstellt und das umgeschrieben? Als ich gestern deinen Code Abspielen wollte hat er mir gesagt das er die letzte Zeile nicht versteht. Und das die es ein Definitionsproblem mit der Variable "NeuerName" gibt. (Ein Kompilierungsfehler ist meines Wissens nach ein Fehler der beim Rückübersetzten des Codes in den Internen NX Code auftritt.) Ist der Befehl richtig Definiert? (Deswegen mal im Händischem Journal nachprüfen.)) Ich empfehle dir Visual Studio herrunterzuladen, dort lässt sich der Code ein bisschen angenehmer bearbeiten als in der NX Umgebung. Um ein Tutorial oder ein Buch bezüglich der NX-Programmierung wäre ich auch froh. @geraldb line1.SetName(NeuerName) dürfte nicht funktionieren, da das "=" zur Festlegung des Ausdrucks benötigt wird. VG [Diese Nachricht wurde von Caliban am 31. Aug. 2016 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
uger Mitglied CADler & Kinematiker
Beiträge: 1115 Registriert: 25.02.2003 NX10 WIN7 64Bit
|
erstellt am: 31. Aug. 2016 08:28 <-- editieren / zitieren --> Unities abgeben:
Zitat: Original erstellt von geraldb: Hast Du es schonmal mit
Code:
line1.SetName(NeuerName)
versucht?
Das funktioniert natürlich. Danke. (gelernt: lies den Quellcode Zeichen für Zeichen und denk drüber nach ob es da hingehört!) Wie müsste das denn aussehen wenn ich dem Objekt ein Attribut zuweisen wollte? uger uger ------------------ Deine Wahrnehmung bestimmt deine Realität! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
TheTutuut Mitglied
Beiträge: 51 Registriert: 08.04.2010 NX4 - NX8.5 TC8.3 TC2007 TCeng2005SR1
|
erstellt am: 31. Aug. 2016 09:25 <-- editieren / zitieren --> Unities abgeben: Nur für uger
Hallo uger,
Zitat: Original erstellt von uger:
Das funktioniert natürlich. Danke. (gelernt: lies den Quellcode Zeichen für Zeichen und denk drüber nach ob es da hingehört!) Wie müsste das denn aussehen wenn ich dem Objekt ein Attribut zuweisen wollte
Ich kann Dir bei diesen beiden Themen ("Quellcode richtig schreiben" und "Objekt ein Attribut zuweisen") die beiden Tipps von "Caliban" wärmstens ans Herz legen: Quellcode richtig schreiben: Lade Dir das kostenlose "Visual Studio Express" herunter und erstelle den Quellcode darin. VS-Express hätte Dir beim Schreiben des Codes bereits darauf hingwiesen, dass
Code: line1.SetName = (NeuerName)
falsch ist. Objekt ein Attribut zuweisen: NX bietet für solche Fälle die ausgesprochen hilfreiche Funktion der Journal-Aufzeichnung. Bevor ich mich an eine Zeile Code setze von der ich nicht weiß, ob das in NX überhaupt geht, lass ich mir den Vorgang aus Journal aufzeichnen um einen Überblick zu erhalten, welche Funktionen und Methoden meine Programmieranforderung evtl. in Frage kommen. Außerdem möchte ich bei diesem Punkt nochmal auf den ersten Tipp (VS-Express) kommen, denn dort würdest Du beim Eintippen von
Code: line1.
durch die Intellisense die für "linie1" verfügbaren Methoden angezeigt zu bekommen. Abschließend die Antwort zum letzten Punkt:
Code: line1.SetUserAttribute()
Die Methode hat 4 Überladungen. Welche erfährst Du, wenn Du VS-Express installiert hast... Viele Grüße, Jürgen
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
uger Mitglied CADler & Kinematiker
Beiträge: 1115 Registriert: 25.02.2003 NX10 WIN7 64Bit
|
erstellt am: 31. Aug. 2016 10:02 <-- editieren / zitieren --> Unities abgeben:
Danke für die Tipps. Das mit VS-Express-Installation kläre ich mit unserer IT. Ich habe in der Zwischenzeit in der NX-Hilfe auch die .chm-Datei gefunden die die API-Referenz enthält. Da steht wohl alles drin (wenn man sich in dieser Menge von Classen zurechtfindet ) uger ------------------ Deine Wahrnehmung bestimmt deine Realität! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Walter Hogger Moderator Maschinenbauingenieur
Beiträge: 3886 Registriert: 06.10.2000
|
erstellt am: 31. Aug. 2016 11:02 <-- editieren / zitieren --> Unities abgeben: Nur für uger
|
uger Mitglied CADler & Kinematiker
Beiträge: 1115 Registriert: 25.02.2003 NX10 WIN7 64Bit
|
erstellt am: 31. Aug. 2016 11:39 <-- editieren / zitieren --> Unities abgeben:
Zitat: Original erstellt von Walter Hogger: Hallo Caliban,ein Buch über NX10 und NX11-Systembetreuung und Programmierung ist gerade "in der Mache" bei uns. In ca. zwei Monaten soll es erscheinen. Gruß
Hallo Walter, das ist genau das was ich suche. Kannst Du zumindest das Inhaltsverzeichnis mal hier rein stellen? uger ------------------ Deine Wahrnehmung bestimmt deine Realität! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Walter Hogger Moderator Maschinenbauingenieur
Beiträge: 3886 Registriert: 06.10.2000
|
erstellt am: 31. Aug. 2016 12:04 <-- editieren / zitieren --> Unities abgeben: Nur für uger
Hallo uger, jetzt habe ich mich wohl zu weit aus dem Fenster gelehnt :-( Der Inhalt ist noch etwas im Fluss, aber ich kann dir den aktuellen Plan mal reinlegen, natürlich ohne Gewähr! Der tatsächliche Inhalt ist noch abhängig von: - Was hat sich in der NX11 geändert? - Wer hat Zeit zum Schreiben? - Wie viele Seiten haben wir schon zusammen? - Die letzten Unterlagen sind von NX8.5, geht das noch so, kann man es übernehmen? - usw. Gruß
------------------ Walter Hogger Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| |
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2624 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-1980 3D Printer Prusa MK2 S
|
erstellt am: 31. Aug. 2016 13:31 <-- editieren / zitieren --> Unities abgeben: Nur für uger
Hallo zusammen, in der Online-Hilfe gibt's den NXOpen Programmers Guide. Der ist, neben der net-ref.chm, eine weitere, und für den Anfang m.E. besser geeignete Lektüre. Gruß, Michael ------------------ Ein Mensch wird laut, wenn er was will; wenn er's erst hat, dann wird er still; Das "Danke" ist, nach alter Sitte, Weit seltner als das "Bitte, Bitte". Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |