Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  NX Programmierung
  Koordinaten aus Punkt auslesen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX
Autor Thema:  Koordinaten aus Punkt auslesen (4251 mal gelesen)
Lila95
Mitglied
Dipl.-Ing.


Sehen Sie sich das Profil von Lila95 an!   Senden Sie eine Private Message an Lila95  Schreiben Sie einen Gästebucheintrag für Lila95

Beiträge: 31
Registriert: 19.08.2008

erstellt am: 17. Sep. 2008 14:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo mal wieder!
Kann mir jemand verraten, wie ich einzelne Koordinaten aus einem Punkt auslesen kann?
Möchte einen neuen Punkt erzeugen, der bis auf die z-Koordinate die gleichen Koordinaten hat wie die eines ermittelten Punkts.
Merci im voraus!
Alina

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

älg
Mitglied
CADmin


Sehen Sie sich das Profil von älg an!   Senden Sie eine Private Message an älg  Schreiben Sie einen Gästebucheintrag für älg

Beiträge: 403
Registriert: 17.06.2003

erstellt am: 18. Sep. 2008 08:01    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich

Schau Dir die Funktionen LocalX(...) resp. LocalY(...) und LocalZ(...) an.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Overcast
Mitglied



Sehen Sie sich das Profil von Overcast an!   Senden Sie eine Private Message an Overcast  Schreiben Sie einen Gästebucheintrag für Overcast

Beiträge: 111
Registriert: 21.12.2005

.

erstellt am: 24. Sep. 2008 12:48    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich

Da ich aus dem Fred nicht erkennen kann, welche API hier gefragt ist, poste ich einfach mal ein VB Beispiel 

UG/Answer: report_selected_point_relative_to_absolute_and_wcs.vb

Code:

Option Strict Off

Imports System
Imports System.Environment
Imports NXOpen
Imports NXOpen.UF
Imports NXOpen.UI
Imports NXOpen.Utilities

Module MyPointConstruct

  Sub Main()

    Dim theSession As Session = Session.GetSession()
    Dim UFS As NXOpen.UF.UFSession

    Dim point_tag As NXOpen.Tag

    Dim AbsPt(2) As Double
    Dim WcsPt(2) As Double

    Dim response As Integer

    UFS = NXOpen.UF.UFSession.GetUFSession()

    UFS.Ui.LockUgAccess(NXOpen.UF.UFConstants.UF_UI_FROM_CUSTOM)

    UFS.Ui.PointConstruct("Select a Point", UFS.Ui.PointBaseMethod.PointNoMethod, point_tag, AbsPt, response)

    UFS.Ui.UnlockUgAccess(NXOpen.UF.UFConstants.UF_UI_FROM_CUSTOM)

    UFS.Csys.MapPoint(UFConstants.UF_CSYS_ROOT_COORDS, AbsPt, UFConstants.UF_CSYS_ROOT_WCS_COORDS, WcsPt)

    MsgBox("ABS X : " & AbsPt(0) & "  Y : " & AbsPt(1) & " Z : " & AbsPt(2))
    MsgBox("WCS X : " & WcsPt(0) & "  Y : " & WcsPt(1) & " Z : " & WcsPt(2))

  End Sub

Public Function GetUnloadOption() As Integer
  Return Session.LibraryUnloadOption.Immediately
End Function

End Module


Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Overcast
Mitglied



Sehen Sie sich das Profil von Overcast an!   Senden Sie eine Private Message an Overcast  Schreiben Sie einen Gästebucheintrag für Overcast

Beiträge: 111
Registriert: 21.12.2005

.

erstellt am: 24. Sep. 2008 13:04    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich

Und hier eine einfache KF Variante, welche die genannten Methoden von älg benutzt:

Code:

#! NX/KF 6.0

DefClass: New_Class_Name (ug_base_part);

(Point Modifiable) p: Point( 20, 30, 40 );
(Number Modifiable [mm]) px: LocalX( p:, "world?", FALSE, "inFrame", localFrame: );
(Number Modifiable [mm]) py: LocalY( p:, "world?", FALSE, "inFrame", localFrame: );
(Number Modifiable [mm]) pz: LocalZ( p:, "world?", FALSE, "inFrame", localFrame: );


Gruss,
Frank.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Lila95
Mitglied
Dipl.-Ing.


Sehen Sie sich das Profil von Lila95 an!   Senden Sie eine Private Message an Lila95  Schreiben Sie einen Gästebucheintrag für Lila95

Beiträge: 31
Registriert: 19.08.2008

erstellt am: 24. Sep. 2008 16:38    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hi Frank!
Soweit war ich dann mittlerweile dank älg auch schon. 
Bevorzuge übrigens KF... 
Trotzdem merci beaucoup!
Grüße,
Alina

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

älg
Mitglied
CADmin


Sehen Sie sich das Profil von älg an!   Senden Sie eine Private Message an älg  Schreiben Sie einen Gästebucheintrag für älg

Beiträge: 403
Registriert: 17.06.2003

erstellt am: 25. Sep. 2008 07:17    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich

Oh, wieder eine Seele für KF gewonnen ! 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

AnniR
Mitglied
MaschinenbauIngenierin

Sehen Sie sich das Profil von AnniR an!   Senden Sie eine Private Message an AnniR  Schreiben Sie einen Gästebucheintrag für AnniR

Beiträge: 9
Registriert: 30.01.2018

Siemens NX
Catia V5

erstellt am: 04. Jul. 2018 12:00    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich

Hallo Frank,

Ich habe hier deinen Eintrag gesehen.

Hast du vielleicht auch eine Lösung dafür,
wenn man Punktkoordinaten verschiedener Punkte aus einem Part in eine Excel-Datei konvertieren möchte?

Ich wäre über Hilfe sehr froh.

Liebe Grüße
Anni

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mseufert
Moderator
Freiberuflicher CAD/CAM Ingenieur


Sehen Sie sich das Profil von mseufert an!   Senden Sie eine Private Message an mseufert  Schreiben Sie einen Gästebucheintrag für mseufert

Beiträge: 2624
Registriert: 18.10.2005

HP Z420
WIN7 64 Win 10
UG NX6-1980
3D Printer Prusa MK2 S

erstellt am: 04. Jul. 2018 18:27    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich

Hallo Anni,

nimm' mal die Suchfunktion zu Hilfe und schau' nach points2file. Das ist ein kleines Journal, das hier schon mehrfach in verschiedenen Varianten besprochen wurde. Damit lassen sich Punkte tabellarisch in eine Textdatei schreiben. Von da aus ist es dann nur noch ein kleiner Schritt, und die Punkte sind in Excel.

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 selt'ner als das "Bitte, Bitte".

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Meinolf Droste
Ehrenmitglied V.I.P. h.c.
Dipl.Ing



Sehen Sie sich das Profil von Meinolf Droste an!   Senden Sie eine Private Message an Meinolf Droste  Schreiben Sie einen Gästebucheintrag für Meinolf Droste

Beiträge: 5083
Registriert: 14.12.2000

NTSI Workstation
Core i7-9700K 4.90 GHz
32 GB RAM
NVIDIA Quadro P2000

TC 11.5
NX 12.0.2 MP7
NX 1888 testing
NX 1899 Beta

erstellt am: 05. Jul. 2018 07:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich


points_1.PNG


points_2.PNG


points_3.PNG

 
Moin Anni

da braucht es keine Programmierung zu, das kann NX mit Bordmitteln.

Gebe den Punkten einen eindeutigen Namen, dabei darauf achten das du die Punkte und nicht die Features benennst.
Du kannst das z.bsp. im Teilenavigator im "None-timpstamp-Modus" prüfen, oder du lässt dir die Elementnamen anzeigen.
Dann gehst du im NX Menü auf Werkzeuge, Tabellenkalkulation.
Excel wird gestartet, in der gewünschten Zelle gibst du den Namen des Punktes ein, dann markierst du 3 benachbarte Zellen, und fügst in der Formeleingabe "=Point(Zellennumer mit dem Punkt)" ein. Anschließend "STRG + Shift + Enter", das wars.

Die Werte sind assoziativ, allerdings haben wir festgestellt das Excel 2010 bei Berechnungen teilweise falsche Ergebnisse liefert. In Excel 2013 passiert das nicht.

------------------
Grüße Meinolf

Ich steh auf flotte Dreier

I know I was born and I know that I'll die but the in between is mine - Pearl Jam

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Meinolf Droste
Ehrenmitglied V.I.P. h.c.
Dipl.Ing



Sehen Sie sich das Profil von Meinolf Droste an!   Senden Sie eine Private Message an Meinolf Droste  Schreiben Sie einen Gästebucheintrag für Meinolf Droste

Beiträge: 5083
Registriert: 14.12.2000

NTSI Workstation
Core i7-9700K 4.90 GHz
32 GB RAM
NVIDIA Quadro P2000

TC 11.5
NX 12.0.2 MP7
NX 1888 testing
NX 1899 Beta

erstellt am: 05. Jul. 2018 07:53    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich


points.prt

 
Hier noch das NX Teil dazu.

------------------
Grüße Meinolf

Ich steh auf flotte Dreier

I know I was born and I know that I'll die but the in between is mine - Pearl Jam

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

AnniR
Mitglied
MaschinenbauIngenierin

Sehen Sie sich das Profil von AnniR an!   Senden Sie eine Private Message an AnniR  Schreiben Sie einen Gästebucheintrag für AnniR

Beiträge: 9
Registriert: 30.01.2018

Siemens NX
Catia V5

erstellt am: 05. Jul. 2018 08:28    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich

Hallo Michael, hallo Meinolf,
danke erst mal für eure schnelle Rückmeldung.

@Michael:
Danke für deinen Tipp. Hier habe ich auch bereits schon etwas gefunden, jedoch ist die Konvertierung nach Excel mit einem Klick nicht getan (Siehe unten mein Anliegen)

@Meinolf:
Dieses Vorgehen habe ich auch schon kennengelernt.

Nun würde ich jedoch gerne ein Programm/ Makro haben,
in dem ich mit einem Klick das Vorgehen starten kann und lediglich die gewünschten Punkte auswählen muss, welche ich in der Excel-Datei haben möchte. Zusammengefasst: 1/2 Klicks = ausgefüllte Excel-Tabelle

Ich habe bereits versucht ein Makro über NX aufzunehmen und dieses danach erneut abspielen zu lassen. Hier kommt jedoch immer eine Fehlermeldung, da es ja zu einem Programmwechsel von NX zu Excel kommt. (Das Makro kann dann nicht mehr ausgeführt werden)

Ist es denn überhaupt möglich eine Automatisierung über NX ablaufen zu lassen, in der direkt auch in der Excel-Datei automatisiert wird?
Oder muss ich ein Makro für NX (Punkte benennen, auswählen der Tabellenkalkulation) und ein weiteres für Excel (Zeilenbenennung, Funktionsbenennung, Ausfüllen) erstellen?

Ich hoffe Ihr versteht meine Problematik/ Wunschvorstellung 

Viele Grüße
Anni

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mseufert
Moderator
Freiberuflicher CAD/CAM Ingenieur


Sehen Sie sich das Profil von mseufert an!   Senden Sie eine Private Message an mseufert  Schreiben Sie einen Gästebucheintrag für mseufert

Beiträge: 2624
Registriert: 18.10.2005

HP Z420
WIN7 64 Win 10
UG NX6-1980
3D Printer Prusa MK2 S

erstellt am: 05. Jul. 2018 11:31    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von AnniR:
Nun würde ich jedoch gerne ein Programm/ Makro haben,

Haben oder selbst schreiben ?   

Machbar ist vieles, auch das Schreiben eines Excel-Files. Als Journal geht das allerdings nicht mehr, dazu wird eine kompilierte Anwendung benötigt. Die kann auf alles zugreifen, was die Excel- bzw. Office-Libraries hergeben.

Die wesentliche Frage ist, wie oft das gebraucht wird und ob sich der Aufwand für die Programmierung lohnt.

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 selt'ner als das "Bitte, Bitte".

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

AnniR
Mitglied
MaschinenbauIngenierin

Sehen Sie sich das Profil von AnniR an!   Senden Sie eine Private Message an AnniR  Schreiben Sie einen Gästebucheintrag für AnniR

Beiträge: 9
Registriert: 30.01.2018

Siemens NX
Catia V5

erstellt am: 05. Jul. 2018 12:12    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich

Naja so wies aussieht müsste ich selbst eines schreiben.
Aber du hast recht: für einen solch großen Aufwand, wird es zu selten genutzt.

Habe mich aber nun dafür entschieden, deinen Tipp mit points2file anzunehmen und die Koordinaten in eine Textdatei zu exportieren.
Diese importiere ich schließlich einfach in Excel (Für die Darstellung habe ich ein kleines Makro geschrieben)

Danke für die Ratschläge

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mseufert
Moderator
Freiberuflicher CAD/CAM Ingenieur


Sehen Sie sich das Profil von mseufert an!   Senden Sie eine Private Message an mseufert  Schreiben Sie einen Gästebucheintrag für mseufert

Beiträge: 2624
Registriert: 18.10.2005

HP Z420
WIN7 64 Win 10
UG NX6-1980
3D Printer Prusa MK2 S

erstellt am: 05. Jul. 2018 18:35    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich

... wenn eine Textdatei sauber in Spalten geschrieben ist, geht das Öffnen in Excel problemlos. Hab' das schon - zigmal so gemacht. es sind halt ein paar mehr als 1-2 Klicks. Jedenfalls aber deutlich weniger, als man beim programmieren bräuchte.

Evtl. musst Du auf Punkt/Komma und die Dateiendung achten. *.csv wäre die Alternative zu .txt.

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 selt'ner als das "Bitte, Bitte".

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

AnniR
Mitglied
MaschinenbauIngenierin

Sehen Sie sich das Profil von AnniR an!   Senden Sie eine Private Message an AnniR  Schreiben Sie einen Gästebucheintrag für AnniR

Beiträge: 9
Registriert: 30.01.2018

Siemens NX
Catia V5

erstellt am: 09. Jul. 2018 15:42    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich

Hallo Michael,
ich habe nun etwas hinbekommen was teilweise funktioniert 
Irgendwie habe ich Probleme beim abspeichern.
Das "save as"-Fenster öffnet sich, ich wähle einen Ordner aus und benenne die Datei, jedoch wird diese stumpf mit einer 1 als Dateiname auf meinen Desktop gespeichert. Die gewünschten Daten sind zwar enthalten, jedoch muss ich die Datei erst umbenennen in eine .csv bevor ich diese öffnen kann.
Wo liegt denn nun mein Fehler? Warum speichert die Datei nicht direkt in dem definierten Ordner mit der ausgewählten Benennung?


Ich habe einiges ausprobiert, bin aber noch nicht auf eine Lösung gekommen...

'Dieses Programm speichert die XYZ-Koordinaten aller Punkte des Spann- und Fixierkonzepts in eine .csv-Datei.
'Part muss bei Start bereits aktiviert sein.

Option Explicit Off
'Importieren von Namespace
Imports System
Imports NXOpen
Imports System.Windows.Forms
Imports Excel = Microsoft.Office.Interop.Excel

'Auswahl der Klasse
Module Points2File 

  Public s As Session = Session.GetSession()

  'Start der Hauptmethode "Main"
  Sub Main()

'Variabledekleration
Dim openFileDialog1 As New saveFileDialog()

            'Exportieren der Daten in eine .csv-Datei     
            openFileDialog1.Filter = "txt files All files (*.csv*)|*.csv*"
            openFileDialog1.FilterIndex = 1
            openFileDialog1.RestoreDirectory = True


      Dim workPart As Part = s.Parts.Work
      Dim thePoints As PointCollection = workPart.Points
      Dim wpName As String = workPart.FullPath.ToString()
      Dim textFileName As String = Nothing


 
      textFileName = openFileDialog1.showdialog

if textFileName  = "" then exit sub

      Dim outFile As IO.StreamWriter

      outFile = new IO.Streamwriter(textFileName,False)
      outFile.AutoFlush = True

      For Each thisPoint As Point In thePoints

        'Gespeichert werden CYZ-Koordinaten des Punktes
        '"F6" gibt 6 Stellen vom Dezimalpunkt an (acuh wenn alle 0 sind)
        'Die Koordinaten werden mit einem Punktkomma und einem Leerzeichen getrennt
        outFile.WriteLine(thisPoint.Coordinates.X.ToString("F6") & ";" & _
                          thisPoint.Coordinates.Y.ToString("F6") & ";" & _
                          thisPoint.Coordinates.Z.ToString("F6"))

      'Schleife wiederholt den Vorgang für alle Punkte
      Next
   

      outFile.Close()

      MsgBox("Text File Name: " & textFileName, MsgBoxStyle.Information)

  End Sub

  Public Function GetUnloadOption(ByVal dummy As String) As Integer

      Return Session.LibraryUnloadOption.Immediately

  End Function
End Module

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mseufert
Moderator
Freiberuflicher CAD/CAM Ingenieur


Sehen Sie sich das Profil von mseufert an!   Senden Sie eine Private Message an mseufert  Schreiben Sie einen Gästebucheintrag für mseufert

Beiträge: 2624
Registriert: 18.10.2005

HP Z420
WIN7 64 Win 10
UG NX6-1980
3D Printer Prusa MK2 S

erstellt am: 09. Jul. 2018 16:44    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich

Hallo Anni,

das sieht doch schon ganz gut aus 

Das Problem liegt hier:

Code:
textFileName = openFileDialog1.showdialog

Die Rückgabe von .showdialog ist nicht der gewählte Dateiname, sondern ein sog. DialogResult.

Den Dateinamen erhältst Du nach dem Öffnen des Dialogs mit

Code:
textFileName = openFileDialog1.Filename

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 selt'ner als das "Bitte, Bitte".

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Poseida
Mitglied
Maschinebautechniker, Konstrukteur


Sehen Sie sich das Profil von Poseida an!   Senden Sie eine Private Message an Poseida  Schreiben Sie einen Gästebucheintrag für Poseida

Beiträge: 94
Registriert: 15.12.2010

Moldex 3D R13
NX 10 TC 11

erstellt am: 10. Jul. 2018 06:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich

Hallo,

man kann auch im Journal auf Excel zugreifen, habe ich auch schon gemacht.

Code:
Dim oExcel As Object
        Dim oBook As Object
        Dim oSheet As Object
        Dim I As Integer = 2

        oExcel = CreateObject("Excel.Application")
        oBook = oExcel.Workbooks.Add
        oSheet = oBook.Worksheets(1)
        oSheet.Range("A1").Value = "Größe"
        oSheet.Range("B1").Value = "Hauptmaß"
        oSheet.Range("C1").Value = "Nebenmaß"
        oSheet.Range("D1").Value = "Untere Tol"
        oSheet.Range("E1").Value = "Obere Tol"
        oSheet.Range("F1").Value = "Typ"
        oSheet.Range("A1:F1").Font.Bold = True
oBook.SaveAs("c:\temp\" & "Book1.xls")
oSheet = Nothing
        oBook = Nothing
        oExcel.Quit()
        oExcel = Nothing


Für die Syntax kann man im Excel VBA nachschauen.

------------------
Benjamin

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mseufert
Moderator
Freiberuflicher CAD/CAM Ingenieur


Sehen Sie sich das Profil von mseufert an!   Senden Sie eine Private Message an mseufert  Schreiben Sie einen Gästebucheintrag für mseufert

Beiträge: 2624
Registriert: 18.10.2005

HP Z420
WIN7 64 Win 10
UG NX6-1980
3D Printer Prusa MK2 S

erstellt am: 10. Jul. 2018 12:56    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich

Hallo Benjamin,

besten Dank für den Hinweis. Ich war bis heute davon ausgegangen, daß das Einbinden von Office-Libraries nur bei kompilierten Anwendungen möglich ist. Schon wieder was gelernt 

Was auffällt ist, daß alle Variablen als Object deklariert sind. Ist das schon alles oder muss sonst noch etwas beachtet werden ? Wie sehen denn z.B.die Imports aus ?

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 selt'ner als das "Bitte, Bitte".

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Poseida
Mitglied
Maschinebautechniker, Konstrukteur


Sehen Sie sich das Profil von Poseida an!   Senden Sie eine Private Message an Poseida  Schreiben Sie einen Gästebucheintrag für Poseida

Beiträge: 94
Registriert: 15.12.2010

Moldex 3D R13
NX 10 TC 11

erstellt am: 10. Jul. 2018 14:36    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich

Hallo Michael,

Dass ist schon alles.

Code:

Imports NXOpen
Imports NXOpen.UF
Imports NXOpenUI
Imports NXOpen.Utilities
Imports System.IO

Wie gesagt hier gibt es dann kein IntelliSense, da muss man sich die Syntax vom VBA(EXCEL) holen   .

------------------
Benjamin

[Diese Nachricht wurde von Poseida am 10. Jul. 2018 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mseufert
Moderator
Freiberuflicher CAD/CAM Ingenieur


Sehen Sie sich das Profil von mseufert an!   Senden Sie eine Private Message an mseufert  Schreiben Sie einen Gästebucheintrag für mseufert

Beiträge: 2624
Registriert: 18.10.2005

HP Z420
WIN7 64 Win 10
UG NX6-1980
3D Printer Prusa MK2 S

erstellt am: 10. Jul. 2018 19:28    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich

Nochmals besten Dank.   

------------------
Ein Mensch wird laut, wenn er was will;
wenn er's erst hat, dann wird er still;
Das "Danke" ist, nach alter Sitte,
Weit selt'ner als das "Bitte, Bitte".

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

AnniR
Mitglied
MaschinenbauIngenierin

Sehen Sie sich das Profil von AnniR an!   Senden Sie eine Private Message an AnniR  Schreiben Sie einen Gästebucheintrag für AnniR

Beiträge: 9
Registriert: 30.01.2018

Siemens NX
Catia V5

erstellt am: 16. Jul. 2018 12:28    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich

Hallo Michael,

Damit klappt es super! Vielen Dank.
Hier muss ich jedoch den Dateityp am Ende des Dateinamens mit manuell angeben (.csv), obwohl ich nach einem Dateityp gefiltert habe.
Wie kann ich das hier direkt definieren ?

Code:

textFileName = openFileDialog1.Filename ( "_point.csv)

Hier kommt eine Fehlermeldung auf.
Hast du mir hierbei auch nochmal einen Rat?

Gruß
Annika

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mseufert
Moderator
Freiberuflicher CAD/CAM Ingenieur


Sehen Sie sich das Profil von mseufert an!   Senden Sie eine Private Message an mseufert  Schreiben Sie einen Gästebucheintrag für mseufert

Beiträge: 2624
Registriert: 18.10.2005

HP Z420
WIN7 64 Win 10
UG NX6-1980
3D Printer Prusa MK2 S

erstellt am: 16. Jul. 2018 20:10    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich

Hallo Annika,

lass' die Klammer oder zumindest ihren Inhalt weg.

Diese und die vorherige sind übrigens Fragen, die eine Entwicklerumgebung beantwortet. Damit können dann auch sämtliche Eigenschaften des Dialogs, u.a. die Extension angegeben werden.

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 selt'ner als das "Bitte, Bitte".

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

JanKansi
Mitglied
Ing.

Sehen Sie sich das Profil von JanKansi an!   Senden Sie eine Private Message an JanKansi  Schreiben Sie einen Gästebucheintrag für JanKansi

Beiträge: 2
Registriert: 20.07.2018

erstellt am: 20. Jul. 2018 11:39    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich

Hallo zusammen,

Ich würde gerne wissen, wie ich Punkte aus einer Excel-Datei in ein Part importieren kann.
In dieser Datei befinden sich die Koordinaten der Punkte mit weiteren Informationen.

Gibt es in NX eine Funktion die das ermöglicht?
Oder hat hier jemand in diesem Zusammenhang schon ein Code geschrieben?

Ist es dabei auch möglich in der Excel Punkte (Zeilen) auszuwählen, welche importiert werden sollen?

Ich kann die Daten auch in eine .txt-Datei speichern, falls das mehrere Möglichkeiten öffnet.


Hat da jemand Informationen in die Richtung?

------------------
Danke für eure Hilfe

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP



Entwickler Fluidtechnik (m/w/d)

Wir sind ein erfolgreiches, weltweit tätiges Unternehmen in der Rohr­verbindungstechnik und fertigen mit ca. 400 Mitarbeitern in 16 Tochter­firmen hochwertige Produkte für individuelle Bereiche der Industrie. Die Firma Schwer Fittings ist bestrebt, mit dem Kunden zusammen Lösungs­strategien zu entwickeln, damit ein gemeinsames Ziel erreicht werden kann. Die lang­jährigen Verbindungen und die gemeinsamen ...

Anzeige ansehenEntwicklung
AnniR
Mitglied
MaschinenbauIngenierin

Sehen Sie sich das Profil von AnniR an!   Senden Sie eine Private Message an AnniR  Schreiben Sie einen Gästebucheintrag für AnniR

Beiträge: 9
Registriert: 30.01.2018

Siemens NX
Catia V5

erstellt am: 22. Aug. 2018 10:38    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Lila95 10 Unities + Antwort hilfreich

Hallo Jan,

ich habe mich selbst schon mit dem Thema auseinandergesetzt.
(Punktkoordinaten mit Namen exportiert, Koordinaten geändert und dann wieder importieren (unten stehender Quellcode) --> Koordinaten sollen sich anpassen)

Habe aber selbst auch noch ein Problem.
Die Koordinaten des Punktes ändern sich zwar - die Position des Punktes wird dabei aber nicht direkt angepasst.
(ich muss den Punkt aktivieren und das Dialogfenster "Point" öffnen, in welchem ich die Koordinaten sehe. Erst dann verschiebt sich der Punkt auf die gewünschte Position.
Ich denke die Situation muss abschließend aktualisiert werden, finde in diesem Zusammenhang aber keine Funktion die ich ausführen kann.

Vielleicht hat hier jemand einen Lösungsvorschlag?

Mein aktueller Code lautet wie folgt:

Option Strict Off

Imports System
Imports NXOpen
Imports NXOpen.UF
Imports NXOpenUI
Imports NXOpen.Utilities
Imports System.IO
Imports System.Windows.Forms

Module Test

    Sub Main
        Try
          Dim openFileDialog1 As New OpenFileDialog()
     
            openFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*"
            openFileDialog1.FilterIndex = 1
            openFileDialog1.RestoreDirectory = True
     
            If openFileDialog1.ShowDialog() = DialogResult.OK Then
                Dim session As Session = Session.GetSession()
                Dim sr As StreamReader = new StreamReader(openFileDialog1.FileName)
                Dim line As String

                Try
                    line = sr.ReadLine()
dim Zeile as double
zeile = 1
                    While Not line is Nothing
if zeile > 2 then
                      Dim pt As Point3d
                        Dim delim As Char () = { ";"C }
                        Dim strings As String () = line.Split(delim)
                        pt.x = Double.Parse(strings(1))
                        pt.y = Double.Parse(strings(2))
                        pt.z = Double.Parse(strings(3))
                        Dim p As Point
                        dim found  as boolean
  found  = false
                        for each p in session.Parts.Work.Points
                        if lcase(p.name) = lcase(strings(0)) then
                          p.SetCoordinates (pt)
                          'p.SetVisibility(SmartObject.VisibilityOption.Visible)

                          found  = true
                          exit for
                        end if
                      next

if not found then
                        p = session.Parts.Work.Points.CreatePoint(pt)
                        p.SetVisibility(SmartObject.VisibilityOption.Visible)
                        p.setname ( strings(0))
end if
end if
zeile = zeile + 1
                        line = sr.ReadLine()
                    End While
                Finally
                    sr.Close()
                End Try
            End If
        Catch E As Exception
            MessageBox.Show(E.Message)
        End Try
    End Sub
End Module
               

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz