| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX |
Autor
|
Thema: Punktkoordinaten assoziativ auslesen (1183 mal gelesen)
|
Konstrukteur101 Mitglied
Beiträge: 7 Registriert: 05.07.2015
|
erstellt am: 08. Okt. 2015 09:25 <-- editieren / zitieren --> Unities abgeben:
Ich möchte mit einem Journal folgendes tun: Ich habe eine Skizze, die durch eine Veränderung einer Expression schrittweise geändert wird. Das Funktioniert soweit auch mit meinem Journal (Wurde mit einer For Schleife gelöst). Jetzt ist auf dieser Skizze ein Punkt gesetzt, der Sich auch wie geplant mit bewegt. Ich möchte nun realisieren, dass bei jedem Schritt dieser Punkt in den Raum oder auf eine andere Skizze projiziert wird, um am Ende eine Bahnkurve Des Punktes zu bekommen. Ich habe das Versucht über den Befehl Insert Point umzusetzen (Bei "Kurve Projizieren" muss man immer die Skizze aufmachen und schließen) und das funktioniert auch. Bei beispielsweise 30 Schritten setzt mein Journal auch 30 Punkte, aber immer auf die Selbe stelle. Wie kann ich denn die Koordinaten meines Skizzenpunktes immer neu auslesen? Grüße Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2700 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-2306 3D Printer Prusa MK2 S
|
erstellt am: 10. Okt. 2015 09:55 <-- editieren / zitieren --> Unities abgeben: Nur für Konstrukteur101
Zitat: Original erstellt von Konstrukteur101: Wie kann ich denn die Koordinaten meines Skizzenpunktes immer neu auslesen?
Ein Punkt hat die Eigenschaft Coordinates. Da steht X,Y und Z drin. Bei der immer wieder empfohlenen Verwendung einer IDE wird diese Eigenschaft auch angezeigt. X,Y,Z kannst Du dann ausgeben oder jeweils einen neuen Punkt draus machen. Gruß, Michael Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Konstrukteur101 Mitglied
Beiträge: 7 Registriert: 05.07.2015
|
erstellt am: 13. Okt. 2015 09:27 <-- editieren / zitieren --> Unities abgeben:
Hallo Vielen Dank für die Hilfe. Ich bin Mittlerweile sowiet gekommen, dass ich Die Koordinaten eines Punktes in einer Skizze auslesen und als Variablen weiter nutzen kann. Gelöst habe ich das in Etwa so: Code: Dim GSP As Point Const nameToFind As String = "Gesamtschwerpunkt" Dim found As Boolean = False For Each pt As Point In workPart.Points If pt.Name = nameToFind Then GSP = pt found = True 'stop looping after the point is found Exit For End If Next If found Then 'lw.WriteLine("point named: " & nameToFind & " was found, coordinates: " & thePoint.Coordinates.X.ToString) Else ' lw.WriteLine("no point named: " & nameToFind & " was found") End If 'lw.WriteLine("point named: " & nameToFind & " was found, coordinates: " & thePoint.Coordinates.tostring) 'lw.Close() 'Koordinaten des gefundenen Punkts auslesen Dim GSPX as double dim GSPY as double Dim GSPZ as double GSPX= "100" GSPY=GSP.coordinates.y.tostring GSPZ=GSP.coordinates.z.tostring 'lw.WriteLine(" Haben wir Y? " & GSPZ) 'lw.Close() 'Point3d mit gefunden Koordinaten erstellen dim GSP3D as point3d= new point3d (GSPX, GSPY, GSPZ) 'Point mit Gefundenen Koordinaten erstellen, warum auch immer? dim GSP2D as point GSP2D = workPart.Points.CreatePoint(GSP3D) GSP2D.SetVisibility(SmartObject.VisibilityOption.Visible)
Das ist nur ein Teil meines Journalcodes, den ich mir aus einigen Beispielen Zusammengesetzt habe. Jetzt möchte ich jedoch das selbe mit einem Punkt im Raum Machen, ich nehme an dass ist dann ein Point3d? Leider funktioniert das auslesen der Coordinaten (GSP.coordinates.y.tostring) bei dem Punkt im Raum nicht. Was muss man da noch verändern? Viele Grüße Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2700 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-2306 3D Printer Prusa MK2 S
|
erstellt am: 16. Okt. 2015 13:24 <-- editieren / zitieren --> Unities abgeben: Nur für Konstrukteur101
Zitat: Original erstellt von Konstrukteur101:
'Point mit Gefundenen Koordinaten erstellen, warum auch immer?
Ein Point ist das Objekt in NX, ein Punkt den man sehen kann, falls eingeblendet ;) . Ein Point3d ist nur die Koordinate, also drei Gleitkommazahlen. Zitat: Leider funktioniert das auslesen der Coordinaten (GSP.coordinates.y.tostring) bei dem Punkt im Raum nicht. Was muss man da noch verändern?
Was funktioniert dabei nicht ? <Point>.Coordinates und <Part>.Points.CreatePoint() machen keinen Unterschied zwischen 2D und 3D. Entscheidend ist nur die Z-Koordinate. Gruß, Michael Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Konstrukteur101 Mitglied
Beiträge: 7 Registriert: 05.07.2015
|
erstellt am: 20. Okt. 2015 09:07 <-- editieren / zitieren --> Unities abgeben:
Wenn ich einen Punkt im Raum Auswählen möchte, kommt folgende Fehlermeldung: System.NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt. Dabei in der Meldung wird auf folgende Zeile hingewiesen: GSPX=GSP.coordinates.x.tostring Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Jan Boettcher Mitglied
Beiträge: 184 Registriert: 22.06.2005 NX 7.5 - NX 2306 SolidWorks 2006 - 2021 Win 10
|
erstellt am: 20. Okt. 2015 12:01 <-- editieren / zitieren --> Unities abgeben: Nur für Konstrukteur101
Dann wird GSP Nothing sein. Du hast also gar keinen Point. Warum das so ist, habe ich auch durch intensives Meditieren nicht ermitteln können. Zum vorher angegebenen Quelltext passt der Fehler jedenfalls nicht. Es käme dieser Fehler aber bei GSPX=GSP.coordinates.y.tostring, wenn der Punkt anhand des Namens nicht gefunden wird. Viele Grüße Jan ------------------ Jan Böttcher www.ib-boettcher.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Technischen Zeichner / Bauzeichner / BIM-Konstrukteur (m/w/d) (527) | Gestalten Sie anspruchsvolle Projekte - werden Sie Teil unseres Teams!
Als führende Ingenieurgesellschaft auf den Gebieten Beratung, Planung, Projektmanagement und Bauüberwachung realisiert Vössing seit über 40 Jahren Infrastrukturprojekte jeder Größenordnung. Mit über 700 Mitarbeiterinnen und Mitarbeitern planen und gestalten wir nationale und internationale Projekte von der Konzipierung bis zur Inbetriebnahme.... | Anzeige ansehen | Technischer Zeichner, Bauzeichner |
|
Konstrukteur101 Mitglied
Beiträge: 7 Registriert: 05.07.2015
|
erstellt am: 20. Okt. 2015 12:08 <-- editieren / zitieren --> Unities abgeben:
|