| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX |
Autor
|
Thema: Pattern aus Teamcenter laden (2873 mal gelesen)
|
Supermario Mitglied
Beiträge: 305 Registriert: 27.02.2004 UG NX10 TCUA
|
erstellt am: 16. Apr. 2008 14:22 <-- editieren / zitieren --> Unities abgeben:
Hallo, wenn ich schon mal dabei bin, noch eine Frage. Ich möchte ein Pattern aus Teamcenter laden. Ohne TCE funktioniert das so super: Dim pattern_name As String = "C:\Pattern_A" ufs.Patt.Import(pattern_name, "local_pattern_name", autoscale_option, transform_data, pattern_tag) Aber aus TCE? Einfach für "C:\Pattern_A" -> "@DB/Pattern_A" oder "@DB/Pattern/A" hat nicht funktioniert. Vielleicht hat von Euch jemand eine Idee! Gruß Mario Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Sirus Ehrenmitglied CAD Applikationsentwickler
Beiträge: 1571 Registriert: 03.06.2004
|
erstellt am: 16. Apr. 2008 15:58 <-- editieren / zitieren --> Unities abgeben: Nur für Supermario
|
Supermario Mitglied
Beiträge: 305 Registriert: 27.02.2004 UG NX10 TCUA
|
erstellt am: 16. Apr. 2008 16:04 <-- editieren / zitieren --> Unities abgeben:
Natürlich existiert das Pattern. Ich habe es in TCE erzeugt und als ich nicht weiter gekommen bin, exportiert in nativ UG um das Teil nativ zu testen. Und siehe da, mit Angabe des Pfades funktioniert alles. Nur nativ nützt mir ein Pattern nichts. Im TCE kann ich es verwalten und vor Änderungen schützen. Nativ ist das so eine Sache. Gruß Mario! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
passt1 Mitglied dipl. Techniker HF
Beiträge: 803 Registriert: 28.08.2002
|
erstellt am: 16. Apr. 2008 16:52 <-- editieren / zitieren --> Unities abgeben: Nur für Supermario
Hallo Mario, Wir haben die selbe Anforderung. Aus mir nicht genau bekannten Gründen, mussten wir ein GRIP Programm schreiben, dass uns die Pattern aus einem Nativen Ordner (Schreibgeschützt) importiert. Hilft Dir im Moment natürlich nicht, ich kann aber mal versuchen das Programm zu kriegen und mich zu den Gründen mal schlau zu machen. Eventuell kannst Du es ja an Deine Umgebung anpassen. Soviel ich weis wurde das von uns programmiert/geschrieben, also kein Problem mit Copyright. Ich hoffe ich darf eine Gegenfrage stellen, ohne den Thread zu "entführen": Wie macht Ihr das, oder wie habt ihr es geplant, dass diese Pattern nicht in die StüLi kommen? Sie werden ja, soweit ich das mitlesen konnte, ebenfalls im TcE als Item eröffnet. Habt ihr da ein spezielles Item, das z.B. nur die Geometrie ohne Eintrag in die StüLi macht? Oder habt Ihr Pattern auf der StüLi? Nicht oder? Hintergrund bei mir ist die integration der Pattern in einen Teilekatalog (aClass). Hier möchte ich die Pattern ebenfalls anbieten, mit Verbindung zu einem im TcE erstellten Item, nur ohne Eintrag in die StüLi. Also eigentlich ähnlich wie UDF's... bin da echt noch bisschen am rätslen wie ich das hinkriege. Wie geschrieben, dass mit dem GRIP Programm kläre ich noch ab, eventuell kann ich es sogar verschicken. Wenn Dir ein GRIP überhaupt etwas nützt. ------------------ MfG Pascal Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ThomasZwatz Ehrenmitglied V.I.P. h.c. cadadmin
Beiträge: 5433 Registriert: 19.05.2000 (12-2023) --------------------------------------------- [stable] NX2007(2027.5020) + SE2023 U6 + TC13.3.0.3, RAC +AWC6.2.2 SingleSite 4Tier, DocMgt, Client4Office, MRO, ReqMgt, SchedMgt, T4S, TcVis Mockup, TcSSO, SEEC, Multi-CAD BCT-Inspector Neutral v22R2 --------------------------------------------- [testing] NX2007(2027.5020) + SE2023 U6 + TC13.3.0.3, RAC +AWC6.2.2 BCT-Inspector Neutral v22R2 @M7720 Win10 (21H2)
|
erstellt am: 16. Apr. 2008 20:53 <-- editieren / zitieren --> Unities abgeben: Nur für Supermario
Lustig, mir blüht bis zum Sommer eine ähnliche Aufgabe ... Und zwar haben vor einiger Zeit Kollegen mehrere Macros erzeugt, die genau das machen (Pattern aus TcEng importieren). Die Kollegen sind nimmer greifbar ... Anfang August gehen wir auf NX5 und ich muß das ganze auf NX5 migrieren und weiß nicht mal wie das interaktiv geht - dann könnte man ja ein Journal erstellen lassen und mal schauen was da so mitgeschrieben wird ... Hilfts euch wenn ich das Macro reinstelle ? ( Oder kann man vielleicht ein Macro "journalen" ) In Sachen Stüli komm ich nicht ganz mit, da hab ich kein Problem ... allerdings verwenden wir nicht die Standard-STL Funktionalität sondern greifen ausschliesslich auf die BOM-view zu. Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Supermario Mitglied
Beiträge: 305 Registriert: 27.02.2004 UG NX10 TCUA
|
erstellt am: 17. Apr. 2008 07:20 <-- editieren / zitieren --> Unities abgeben:
Hallo Pascal, hallo Thomas, Ihr macht mir vielleicht Mut! Na ja, schauen wir mal. Die Sache mit der Stückliste kann ich auch nicht recht nachvollziehen Pascal. Wir verwenden auf unseren Zeichnungen schon lang keine Stückliste mehr. Aber vielleicht reden wir auch aneinander vorbei, darum möchte ich noch mal kurz umschreiben was ich mit dem Journal erreichen möchte. Unsere Konstrukteure haben sich kleine Bilder mit Ansichten in ein extra Part angelegt, die sie immer wieder benötigen. Unter NX1 konnte man diese Ansichten mit den Befehl "Teil importieren" aus Teamcenter holen und auf der Zeichnung ablegen. Seit NX4 werden die Ansichten, hauptsächlich die Bemassungen nicht mehr richtig importiert, d.h. zum Teil zerstört dargestellt. Deshalb kam mir die Idee mit den Pattern (Mustern). Zuerst habe ich es mit den UG-Tools probiert. Klappte ganz gut, aber ich muß alle Parameter (flexible Bemassungswerte) manuell eingeben. Diese könnten aber auch berechnet werden. Deshalb jetzt das Journal. Hier kann ich meine Bestimmungsgrößen abfragen, Werte berechnen und gezielt mit dem Muster als Text in die Zeichnung einbringen. Manuel lade ich die Pattern, oder Muster (wir haben UG in deutsch) in die Zeichnung über "Format->Muster->Muster laden". Unter der Anwendung "Konstruktion" ist dieser Befehl auch verfügbar, aber ich habe dazu noch keine Anwendung gefunden. Oh, ein kleiner Roman,
Gruß Mario Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
älg Mitglied CADmin
Beiträge: 403 Registriert: 17.06.2003
|
erstellt am: 17. Apr. 2008 07:26 <-- editieren / zitieren --> Unities abgeben: Nur für Supermario
|
passt1 Mitglied dipl. Techniker HF
Beiträge: 803 Registriert: 28.08.2002 SW: NX9.0.3.4, Teamcenter 10.1.2.2, aClass V16.0.4.0, WIN7/64bit, Office 2010 HW: Dell Precision T3610, Intel Xeon E5-1650 v2 / 3.50GHz / 32GB RAM / NVIDIA Quadro K5000
|
erstellt am: 17. Apr. 2008 10:39 <-- editieren / zitieren --> Unities abgeben: Nur für Supermario
Hallo, Wie geschrieben, will ich den Thread nicht zu sehr entführen. Ich mache zum Thema StüLi/Pattern noch einen eigenen Thread auf. Ich hoffe das ich in Zukunft hier in diesem Teil des Forums auch etwas nützliches beitragen kann. Da Checkmate und andere neue Sachen kommen, ist wohl ein bekannt machen mit Programmierfunktionen nicht mehr zu umgehen. Also könnt Ihr mit einem Frischling rechnen, der sicher einige Fragen haben wird @Topic: Da unsere IT Gruppe und fast alle Superuser im Moment an einer Schulung sind, kann ich da noch nicht nachhaken. Bleibe aber drann, bin am Nachmittag wieder beim "Rudel"... Muss jetzt aber ganz ehrlich sagen, dass wir halt wirklich nur pure 2D Geometrien verwenden über dieses Programm. Ob das auch mit 3D Daten bzw. Ansichten funktioniert.. Sind denn zu diesen Ansichten auch 3D Geometrien angehägt? Das habe ich noch nicht ganz kapiert. Warum wir genau die Standard Funktion, zum Import von Pattern, nicht benutzen muss ich ebenfalls nachfragen. ------------------ MfG Pascal Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Supermario Mitglied
Beiträge: 305 Registriert: 27.02.2004 UG NX10 TCUA
|
erstellt am: 17. Apr. 2008 11:25 <-- editieren / zitieren --> Unities abgeben:
|
älg Mitglied CADmin
Beiträge: 403 Registriert: 17.06.2003
|
erstellt am: 17. Apr. 2008 12:57 <-- editieren / zitieren --> Unities abgeben: Nur für Supermario
|
Supermario Mitglied
Beiträge: 305 Registriert: 27.02.2004 UG NX10 TCUA
|
erstellt am: 17. Apr. 2008 16:35 <-- editieren / zitieren --> Unities abgeben:
|
Supermario Mitglied
Beiträge: 305 Registriert: 27.02.2004 UG NX10 TCUA
|
erstellt am: 21. Apr. 2008 08:40 <-- editieren / zitieren --> Unities abgeben:
Hallo @all, mit externer Hilfe ist es mir gelungen, Pattern aus TCE zu importieren. Vielen Dank noch mal an Herrn Berger von detac! Euch möchte ich natürlich den Code nicht vorenthalten. Module import_pattern Dim s As Session = Session.GetSession() Dim ufs As UFSession = UFSession.GetUFSession() Sub Main() Dim pattern_tag As NXOpen.Tag Dim pattern_name As String Dim transform_data() As Double = {1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1} Dim autoscale_option As Integer = 1 Dim lw As ListingWindow = s.ListingWindow ufs.Ugmgr.EncodePartFilename("din_a4","A","","",pattern_name) lw.Open() lw.WriteLine("Retrieving " + pattern_name) ufs.Patt.Import(pattern_name , "local_pattern_name", autoscale_option, _ transform_data, pattern_tag) ufs.View.FitView(NXOpen.Tag.Null, 1.0) End Sub "din_a4" ist dabei der Name des Items. Gruß Mario Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ThomasZwatz Ehrenmitglied V.I.P. h.c. cadadmin
Beiträge: 5433 Registriert: 19.05.2000
|
erstellt am: 21. Apr. 2008 09:31 <-- editieren / zitieren --> Unities abgeben: Nur für Supermario
Ich weiß, die Leute kriegen einfach nie genug ... aber kann man da auch noch anstelle der Positionierung über Koordinaten eine Platzierung über Mausklick einbauen ? (vielleicht sogar so daß das Pattern mit Größenvorschau am Mauszeiger hängt ) . Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
älg Mitglied CADmin
Beiträge: 403 Registriert: 17.06.2003
|
erstellt am: 21. Apr. 2008 09:44 <-- editieren / zitieren --> Unities abgeben: Nur für Supermario
Hab ich ja mit meinem encode-Tip richtig gelegen ... Im Gegensatz zu einem Forums-Mitglied oder -Mod ist Herr Berger allerdings von Berufs wegen dazu da, Dir den Code zu schreiben - mein Brötchengeber erwartet von mir etwas anderes ... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Supermario Mitglied
Beiträge: 305 Registriert: 27.02.2004 UG NX10 TCUA
|
erstellt am: 22. Apr. 2008 08:28 <-- editieren / zitieren --> Unities abgeben:
|
RobertM Mitglied
Beiträge: 223 Registriert: 03.12.2008 noch NX 8.5 + TC Teamcenter 9.1.2.2 64-Bit
|
erstellt am: 23. Jun. 2015 12:04 <-- editieren / zitieren --> Unities abgeben: Nur für Supermario
|
| Technische:r Kontraktmanager:in Bautechnik | Wärme und Energie sind unser Beitrag zur Lebensqualität - jeden Tag aufs Neue. In Berlin versorgen wir rund 1,4 Millionen Wohneinheiten zuverlässig und klimaschonend mit Fernwärme. Mit dem Know How unserer rund 2000 Mitarbeitenden decken wir die gesamte Wertschöpfungskette der Fernwärme ab - von der Erzeugung über den Netzbetrieb und -ausbau bis hin zum Vertrieb. Wir arbeiten bei der BEW Berliner ... | Anzeige ansehen | Ingenieure und technische Berufe |
|
denga Mitglied DH-Student
Beiträge: 2 Registriert: 08.06.2015
|
erstellt am: 17. Jul. 2015 09:06 <-- editieren / zitieren --> Unities abgeben: Nur für Supermario
Hi, ich hab auch schon einiges mit imports am laufen... Pattern Imports aus TC hab ich so: public static Tag importPart(String partName,String revID,String patternName,double x,double y ,int layer) { //Pattern Real Data, rp4[13] [0] - [8] Pattern Orientation Matrix [9] - [11] Pattern Origin [12] Pattern Scale int lay = thePart.Layers.WorkLayer; thePart.Layers.WorkLayer = layer; double[] transform_data = {1,0,0,0,1,0,0,0,1,x,y,0,1.0}; Tag pattern= Tag.Null; String encodedPartFileName; theUfSession.Ugmgr.EncodePartFilename(partName, revID, "", "", out encodedPartFileName); theUfSession.Patt.Import(encodedPartFileName, patternName, 1, transform_data, out pattern); thePart.Layers.WorkLayer = lay; return pattern; } Normale Part Imports aus TC so
private static Tag import(String partName,String revID, double x, double y, int layer) { int lay = thePart.Layers.WorkLayer; thePart.Layers.WorkLayer = layer; Session theSession = Session.GetSession(); PartImporter importerFrame = theSession.Parts.Work.ImportManager.CreatePartImporter(); importerFrame.LayerOption = PartImporter.LayerOptionType.Work; importerFrame.Scale = 1; String encodedPartFileName; theUfSession.Ugmgr.EncodePartFilename(partName, revID, "", "", out encodedPartFileName); importerFrame.FileName = encodedPartFileName; Point3d dest = new Point3d(x, y, 0); importerFrame.CreateNamedGroup = true; importerFrame.ImportViews = false; importerFrame.ImportCamObjects = false; importerFrame.DestinationCoordinateSystemSpecification = PartImporter.DestinationCoordinateSystemSpecificationType.Work; Matrix3x3 element; element.Xx = 1.0; element.Xy = 0.0; element.Xz = 0.0; element.Yx = 0.0; element.Yy = 1.0; element.Yz = 0.0; element.Zx = 0.0; element.Zy = 0.0; element.Zz = 1.0; NXMatrix matrix; matrix = theSession.Parts.Work.NXMatrices.Create(element); importerFrame.DestinationCoordinateSystem = matrix; importerFrame.DestinationPoint = dest; NXObject part = importerFrame.Commit(); importerFrame.Destroy(); thePart.Layers.WorkLayer = lay; return part.Tag; } ------------------ Gruß Denis Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|