Forum:NX
Thema:CGM extern konvertieren
Möchten Sie sich registrieren?
Wer darf antworten? Registrierte Benutzer können Beiträge verfassen.
Hinweise zur Registrierung Sie müssen registriert sein, um Beiträge oder Antworten auf Beiträge schreiben zu können.
Ihr Benutzername:
Ihr Kennwort:   Kennwort vergessen?
Anhang:    Datei(en) anhängen  <?>   Anhänge bearbeiten  <?>
Grafik für den Beitrag:                                                
                                                       
Ihre Antwort:

Fachbegriff
URL
Email
Fett
Kursiv
Durchgestr.
Liste
*
Bild
Zitat
Code

*HTML ist AUS
*UBB-Code ist AN
Smilies Legende
Netiquette

10 20 40

Optionen Smilies in diesem Beitrag deaktivieren.
Signatur anfügen: die Sie bei den Voreinstellungen angegeben haben.

Wenn Sie bereits registriert sind, aber Ihr Kennwort vergessen haben, klicken Sie bitte hier.

Bitte drücken Sie nicht mehrfach auf "Antwort speichern".

*Ist HTML- und/oder UBB-Code aktiviert, dann können Sie HTML und/oder UBB Code in Ihrem Beitrag verwenden.

T H E M A     A N S E H E N
Lilu2Go

Beiträge: 64 / 0

UG NX10 native
Win10 64 Bit
NVidia Quadro K2200

Hallo,

ich möchte .prt Dateien per batch (also extern) in .cgm konvertieren. So etwas machen wir z.B. schon mit dem jt Format für unsere 3D-Modelle.
Meine Frage also: geht das?

Grüßle Lilu 

mseufert

Beiträge: 2224 / 0

HP Z420
WIN XP32 / WIN7 64
UG NX6-11
SUN Ultra 60
Solaris 7
CADDS5

Zitat:
Original erstellt von Lilu2Go:

Meine Frage also: geht das?

Hallo Lilu2Go,

schau' Dir mal das Thema Journaling/NXOpen an. Da gibt's alles, was man zur Automatisierung wiederkehrender Aufgaben braucht.

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".

Lilu2Go

Beiträge: 64 / 0

UG NX10 native
Win10 64 Bit
NVidia Quadro K2200

Hallo,

ja das habe ich ansatzweise schon gemacht. Nochmal zur Klarstellung:
Eine jt datei kann man ja mit einem externen Converter --> nx10\PVTRANS\ugtopv.exe erstellen. Eine cgm-Datei kann man aber nur über das "geöffnete" NX erzeugen. Liege ich da richtig? 

ThomasZwatz

Beiträge: 4679 / 40

(09-2017)
[stable]
NX10.0.3.5 MP11 + TC10.1.7.1
SingleSite 4Tier, DocMgt, Client4Office, MRO, ReqMgt, SchedMgt, T4S, TcVis Mockup, TcSSO
BCT-Inspector Neutral V16.1.4
ANSYS 17.1[testing]
NX10.0.3.5 MP18 und 11.0.2.7 MP01 + TC10.1.7.1
SingleSite 4Tier, DocMgt, Client4Office, MRO, ReqMgt, SchedMgt, T4S, TcVis Mockup, TcSSO
BCT-Inspector Neutral V16.1.4
ANSYS 17.1
@M6600 Win7-64

Einen OOTB Translator wie für JT gibt's da IMHO nicht.

Beim CGM Export geht's wahrscheinlich um DrawingSheets (?), d.h. du wirst dabei angeben müssen, welche das sind / sein sollen.

Ein "geöffnetes NX" braucht man dazu nicht unbedingt, das kann man auch über ein Journal oder Programm machen lassen ( diese "öffnen" dann ein NX, aber ohne Grafik ).

Poseida

Beiträge: 75 / 0

NX 8.5 + Teamcenter 8.3.3.10 + Moldex 3D R13
NX 10 TC 11

Hallo,

man kann ein Journal schreiben was die Übersetzung in CGM übernimmt und dann über die CMD mit run_journal.exe ausführen. Liegt in deiner NX Installation. http://ww3.cad.de/foren/ubb/Forum4/HTML/010341.shtml#000001

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

Lilu2Go

Beiträge: 64 / 0

UG NX10 native
Win10 64 Bit
NVidia Quadro K2200

Guten Morgen,

danke für die Antworten. Mit den Infos werd ichs schon hinbekommen 

Lilu2Go

Beiträge: 64 / 0

UG NX10 native
Win10 64 Bit
NVidia Quadro K2200

Hallo,

soweit funktioniert jetzt alles. Allerdings versuche ich gerade eine Variable an meine vb Datei zu übergeben (zu konvertierende Datei) und irgendwie krieg ich es nicht hin. Vielleicht kann mir nochmal einer helfen. Wie genau muss ich im Code sArgs(0) angeben?!

Das ist meine Kommandozeile:
C:\UGS\NX10\UGII\run_journal.exe C:\Users\krithast\Desktop\Neu\cgm_export_220317.vb -args "C:\Users\krithast\Desktop\Neu\710_2502_001.prt"


Und hier ist mein Journal:

Option Strict Off
Imports System
Imports NXOpen

Module NXJournal
Sub Main (ByVal args() As String)

Dim theSession As Session = Session.GetSession()

Dim basePart1 As BasePart
Dim partLoadStatus1 As PartLoadStatus
basePart1 = theSession.Parts.OpenBaseDisplay(sArgs(0), partLoadStatus1)
Dim workPart As Part = theSession.Parts.Work
Dim displayPart As Part = theSession.Parts.Display
partLoadStatus1.Dispose()


Dim markId1 As Session.UndoMarkId
markId1 = theSession.SetUndoMark(Session.MarkVisibility.Invisible, "Start")

Dim cGMBuilder1 As CGMBuilder
cGMBuilder1 = workPart.PlotManager.CreateCgmBuilder()

cGMBuilder1.Colors = CGMBuilder.Color.BlackOnWhite

cGMBuilder1.XDimension = 215.9

cGMBuilder1.YDimension = 279.4

cGMBuilder1.OutputText = NXOpen.CGMBuilder.OutputTextOption.Polylines

cGMBuilder1.VdcCoordinates = NXOpen.CGMBuilder.Vdc.Real

cGMBuilder1.RasterImages = True

cGMBuilder1.ImageResolution = NXOpen.CGMBuilder.ImageResolutionOption.High

theSession.SetUndoMarkName(markId1, "CGM exportieren-Dialogfenster")


Dim markId2 As Session.UndoMarkId
markId2 = theSession.SetUndoMark(Session.MarkVisibility.Invisible, "CGM exportieren")

Dim sheets1(0) As NXObject
Dim drawingSheet1 As Drawings.DrawingSheet = CType(workPart.DrawingSheets.FindObject("BLATT"), Drawings.DrawingSheet)

sheets1(0) = drawingSheet1
cGMBuilder1.SourceBuilder.SetSheets(sheets1)

Dim filenames1(0) As String
filenames1(0) = "C:\Users\krithast\Desktop\Neu\710_2502_001.cgm"
cGMBuilder1.SetFilenames(filenames1)

Dim nXObject1 As NXObject
nXObject1 = cGMBuilder1.Commit()

theSession.DeleteUndoMark(markId2, Nothing)

theSession.SetUndoMarkName(markId1, "CGM exportieren")

cGMBuilder1.Destroy()

theSession.DeleteUndoMark(markId1, Nothing)

theSession.Parts.CloseAll(BasePart.CloseModified.CloseModified, Nothing)

End Sub
End Module


Oder ok, ich hab eigentlich zwei Probleme   
Unsere Zeichnungsblätter heissen auch manchmal auch Drawing statt Blatt. Da dachte ich mir ich schreib:

.... CType(workPart.DrawingSheets.FindObject("*A*"), Drawings.DrawingSheet)...

Das nimmt er aber nicht an. Hat einer ne Idee wie ich das löse?

Vielen Dank Ihr seid alle suuuper! *schleim*

[Diese Nachricht wurde von Lilu2Go am 23. Mrz. 2017 editiert.]

[Diese Nachricht wurde von Lilu2Go am 03. Apr. 2017 editiert.]

Poseida

Beiträge: 75 / 0

NX 8.5 + Teamcenter 8.3.3.10 + Moldex 3D R13
NX 10 TC 11

auf die schnelle würde ich sagen simpler Syntaxfehler  . Nimm mal das "s" vor "Args(0)" heraus in Zeile "basePart1 = theSession.Parts.OpenBaseDisplay(sArgs(0), partLoadStatus1)"

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

Lilu2Go

Beiträge: 64 / 0

UG NX10 native
Win10 64 Bit
NVidia Quadro K2200

OOOHHH NEEEIN !!!!!!! 2 Stunden für die katz 

dann bleibt nur noch die letzte kleinigkeit mit den zeichnungsblättern

Poseida

Beiträge: 75 / 0

NX 8.5 + Teamcenter 8.3.3.10 + Moldex 3D R13
NX 10 TC 11

Hast du keine Entwicklungsumgebung? Da kann man solche "Schreibfehler" sehr leicht erkennen.
Zu den Zeichnungsblättern: auf die schnelle kannst du ja probieren noch eine Zeile mit "drawingSheet1 = CType(workPart.DrawingSheets.FindObject("Drawing"), Drawings.DrawingSheet)" einzufügen.

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

Lilu2Go

Beiträge: 64 / 0

UG NX10 native
Win10 64 Bit
NVidia Quadro K2200

Hallo,

sorry das ich das thema wieder hoch hole, aber ich habe immer noch das Problem mit dem Blatt-Namen. Hat da einer noch eine andere Idee?
Die Lösung von Poseida funktioniert leider nicht

mseufert

Beiträge: 2224 / 0

HP Z420
WIN XP32 / WIN7 64
UG NX6-11
SUN Ultra 60
Solaris 7
CADDS5

Zitat:
Original erstellt von Lilu2Go:
Hat da einer noch eine andere Idee?
Die Lösung von Poseida funktioniert leider nicht

Poseida hat u.a. eine Entwicklungsumgebung empfohlen. Die würde hier helfen  und kann zudem kostenlos z.B. bei Microsoft heruntergeladen 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 seltner als das "Bitte, Bitte".

Lilu2Go

Beiträge: 64 / 0

UG NX10 native
Win10 64 Bit
NVidia Quadro K2200

Hallo,

ich habe mittlerweile das Notepad bekommen. Hat mir auch nicht weitergeholfen.

mseufert

Beiträge: 2224 / 0

HP Z420
WIN XP32 / WIN7 64
UG NX6-11
SUN Ultra 60
Solaris 7
CADDS5

Hallo Lilu2Go,

Notepad, egal ob MS-Standard oder Notepad++ ist keine Entwicklerumgebung, da hat dir jemand ein faules Ei untergejubelt.

Editor zu IDE verhält sich in etwa wie ein paar alte Schlappen verglichen mit einem Rennrad. Was würdest Du eher benutzen um vorwärts zu kommen ? Willst Du dich immer wieder von anderen tragen/mitnehmen lassen oder doch den Sprung auf's Rad wagen ?

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".

(c)2017 CAD.de