| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS |
| |
| Baugruppen-Handling mit 3DEXPERIENCE SOLIDWORKS |
Autor
|
Thema: SolidWorks API: Zeichnung aus Teil erstellen (6036 mal gelesen)
|
ratan Mitglied
Beiträge: 6 Registriert: 14.06.2013
|
erstellt am: 14. Jun. 2013 10:32 <-- editieren / zitieren --> Unities abgeben:
|
StefanBerlitz Guter-Geist-Moderator IT Admin (CAx)
Beiträge: 8756 Registriert: 02.03.2000 SunZu sagt: Analysiere die Vorteile, die du aus meinem Ratschlag ziehst. Dann gliedere deine Kräfte entsprechend und mache dir außergewöhnliche Taktiken zunutze.
|
erstellt am: 14. Jun. 2013 11:17 <-- editieren / zitieren --> Unities abgeben: Nur für ratan
Hallo ratan, Zitat: Original erstellt von ratan: [...] mit SWX API eine Zeichnung aus Teil erstellt, genauso wie es SWX macht, ohne eine Ansicht hinzuzufügen.
Wie willst du eine Zeichnung aus einem Teil erstellen ohne dass eine Ansicht eingefügt wird? Ich verstehe nicht, was du meinst oder was du erreichen willst. Ein neues Dokument egst du mit SldWorks::NewDocument an, neue Blätter in einer Zeichnung mit DrawingDoc::NewSheet3 . Die sind immer leer, also ohne Ansichten. Von daher sollte es damit klappen. Ciao, Stefan ------------------ Inoffizielle deutsche SolidWorks Hilfeseite http://solidworks.cad.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ratan Mitglied
Beiträge: 6 Registriert: 14.06.2013
|
erstellt am: 14. Jun. 2013 11:36 <-- editieren / zitieren --> Unities abgeben:
Hallo Stefan, vielen Dank für Deine Antwort. ich möchte den folgenden manuellen Ablauf per API automatisieren: - Ein Teil ist geöffnet - SolidWorks => Menü „Datei“ => Zeichnung aus Teil erstellen Dabei wird kein neues Feature in Featurebaum hinzugefügt (genauso, wenn man neue Zeichnung erstellt „SolidWorks => Menü „Datei“ => Neu…“) ABER die Zeichnung bekommt den Name (Titel) des Teils und wenn man den Menüpunkt „SolidWorks => Menü „Datei“ => Referenzen suchen…“ aufruft, sieht man das Teil als Referenz.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bk.sc Ehrenmitglied V.I.P. h.c. Konstrukteur Sondermaschinenbau
Beiträge: 2776 Registriert: 18.07.2012 -Solid Works 2019 SP5 -Pro Engineer WF 3
|
erstellt am: 14. Jun. 2013 12:09 <-- editieren / zitieren --> Unities abgeben: Nur für ratan
Hallo ratan, es gibt keinen direkten API-Befehl der dem Befehl "Zeichnung aus Baugruppe/Teil erstellen" entspricht. Du kannst nur wie Stefan schon schrieb über einen Umweg zum Ziel gelangen: 1. Ein neues Zeichnungsdokument erzeugen 2. eine Ansicht vom Modell einfügen 3. Zeichnung speichern mit dem Titel des Ausgangsdokumentes 4. Erste Ansicht wieder löschen. So hättest du dann den von dir gewünschten Zustand. So mache ich es auch in meinen Macros, nur ohne, dass wieder löschen der Ansicht da ich diese gleich so plaziere wie ich diese brauche. Aber für was brauchst du das eigentlich? Mehr Informationen eröffnen vielleicht mehr Möglichkeiten Gruß Bernd ------------------ --- Man muß nicht alles wissen, man muß nur wissen wo es steht --- Staatlich anerkannte Deutschniete [Diese Nachricht wurde von bk.sc am 14. Jun. 2013 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ratan Mitglied
Beiträge: 6 Registriert: 14.06.2013
|
erstellt am: 14. Jun. 2013 13:42 <-- editieren / zitieren --> Unities abgeben:
Hallo Bernd, Danke. Das von Dir beschriebene Workaround habe ich noch gestern ausprobiert und nach dem Löschen der Ansicht verliert meine Zeichnung die Referenz zum Bauteil: SW.NewDocument(documentTemplateFullFileName, (int)drawingPageSize, 0, 0); DrwDoc.Create1stAngleViews2(@"C:\abc\Teil1.SLDPRT"); SaveDocument(ModelDoc); ModelDoc.ClearSelection2(true); Feature feature; View view = (View)DrwDoc.GetFirstView(); while (view != null) { //Select only new added views if (view.Name != "Blatt1") { feature = (Feature)DrwDoc.FeatureByName(view.Name); feature.Select2(true, -1); } view = (View)view.GetNextView(); } ModelDoc.EditDelete(); ModelDoc.ForceRebuild3(false); Mache ich was falsch? Gibt's noch Ideen? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
KMassler Ehrenmitglied V.I.P. h.c. CAD Admin + Mädchen für Alles...
Beiträge: 2675 Registriert: 06.11.2000 SolidWorks Start 1999 ** CSWP 01/2008 ** ------------------ Zuletzt beruflich: - SWX2020 SP5; - SAP/PLM+ECTR; - DriveWorks Pro; - Programmierung: VBA, aktuell Visual Studio 2022/VB.Net ------------------ ab 2024 (privat): Onshape und anderes
|
erstellt am: 14. Jun. 2013 14:10 <-- editieren / zitieren --> Unities abgeben: Nur für ratan
Ist doch klar, dass die Referenz verloren geht, wenn das Modell in keiner Ansicht auf dem Blatt enthalten ist. ^^ Wenn du die Referenz behalten willst (wozu auch immer), musst du auch eine Anicht des Modells behalten. Wenn du die nicht sehen willst, dann kannst du sie ausblenden - habe allerdings kein Ahnung, wie das per Api geht. ------------------ Klaus www.al-ko.com | mein Gästebuch | privat... | Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ratan Mitglied
Beiträge: 6 Registriert: 14.06.2013
|
erstellt am: 14. Jun. 2013 14:19 <-- editieren / zitieren --> Unities abgeben:
Hallo Klaus, wie macht es dann SolidWorks: "SolidWorks => Menü „Datei“ => Zeichnung aus Teil erstellen". Als Ergebnis bekommt man eine Zeichnung ohne Ansichten und mit der Referenz des Bauteils („SolidWorks => Menü „Datei“ => Referenzen suchen…“)? Danke. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
StefanBerlitz Guter-Geist-Moderator IT Admin (CAx)
Beiträge: 8756 Registriert: 02.03.2000 SunZu sagt: Analysiere die Vorteile, die du aus meinem Ratschlag ziehst. Dann gliedere deine Kräfte entsprechend und mache dir außergewöhnliche Taktiken zunutze.
|
erstellt am: 14. Jun. 2013 14:31 <-- editieren / zitieren --> Unities abgeben: Nur für ratan
Hallo ratan, ich weiß ja nicht was du bei dir siehst, bei mir ist keine Referenz mehr vorhanden, wenn ich die Ansicht rauslösche ... Ich kenn es auch nur so, es wäre sonst schon ziemlich tödlich für jedes Verwaltungssystem, wenn es so wäre. Es wäre interessant zu sehen, was du siehst - hat vielleicht was mit deiner Version zu tun oder vielleicht guckst du an einer ganz anderen Stelle als wir (auch wenn Datei -> Referenzen suchen recht eindeutig ist ) Ciao, Stefan ------------------ Inoffizielle deutsche SolidWorks Hilfeseite http://solidworks.cad.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ratan Mitglied
Beiträge: 6 Registriert: 14.06.2013
|
erstellt am: 14. Jun. 2013 15:10 <-- editieren / zitieren --> Unities abgeben:
Anbei noch mal den manuellen Weg der Zeichnungserstellung, den ich automatisieren möchte (siehe Anhang). Wie es gemacht wird (Direktbefehl oder ein Workaround per mehreren API-Befehle), ist für mich unwichtig. Ich bitte um Ideen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
gismo Mitglied SWX Support
Beiträge: 1047 Registriert: 05.03.2001 HP Z Book17 G5; 32GB Ram; Quadro P4200 WIN10 Pro; Alle SWX ;)
|
erstellt am: 14. Jun. 2013 15:24 <-- editieren / zitieren --> Unities abgeben: Nur für ratan
Hi ratan, wie man das per API hinbekommt, kann ich dir nicht sagen, da bin ich zu lange raus, aus dem Thema (leider ) allerdings kann ich aus Hotline Erfahrung sagen, dass das schon einige Probleme verursacht, vor allem in Verbindung mit einem PDM. wenn du auf diese Art eine Zeichnung erstellt hast, und dann doch Ansichten eines anderen Modells einfügst, denkt das PDM, die Zeichnung wäre auch dem zuerst referenzierten Modell verknüpft. das gibt "lustige" Effekte, wenn man z.B. eine Strukturkopie (Pack and go innerhalb von EPDM) macht. Ich persönlich würde so etwas, ohne triftigen Grund, nicht machen. CU Thomas ------------------ Viele Grüße Thomas Weith SolidWorks Support Techniker CSWP (Certified SolidWorks Professional) CSWE (Certified SolidWorks Expert) CDWAE (Certified DriveWorks Application Engineer) CSWST (Certified SolidWorks Support Technican) CSWI (Certified SolidWorks Instruktor) DPS Software GmbH Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
StefanBerlitz Guter-Geist-Moderator IT Admin (CAx)
Beiträge: 8756 Registriert: 02.03.2000 SunZu sagt: Analysiere die Vorteile, die du aus meinem Ratschlag ziehst. Dann gliedere deine Kräfte entsprechend und mache dir außergewöhnliche Taktiken zunutze.
|
erstellt am: 14. Jun. 2013 15:44 <-- editieren / zitieren --> Unities abgeben: Nur für ratan
Hm, ich seh zwar die Screenshots, kann es aber trotzdem nicht glauben. Kannst mal ein Video von dem Vorgang machen? Oder gar eine solche Datei mit der Phantimreferenz anhängen? Und ist das SW2012 ode welche Version? Ach ja, und eine Frage die oben schon aufkam und die mich auchinteressiert: wozu um alles in der Welt sollte man so was brauchen? Unabhängig davon kenne ich keinen Weg so etwas per API zu faken, wenn nichts in der Zeichnung ist, was eine Referenz verursacht wird bei mir auch keine angezeigt. Aber ich hab ja auch nicht deine Zeichnungsvorlage ... Ciao, Stefan ------------------ Inoffizielle deutsche SolidWorks Hilfeseite http://solidworks.cad.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bk.sc Ehrenmitglied V.I.P. h.c. Konstrukteur Sondermaschinenbau
Beiträge: 2776 Registriert: 18.07.2012 -Solid Works 2019 SP5 -Pro Engineer WF 3
|
erstellt am: 15. Jun. 2013 20:35 <-- editieren / zitieren --> Unities abgeben: Nur für ratan
Hallo Stefan, man glaubt es kaum aber ratan hat Recht. Die Referenz wird angelegt ohne das eine Ansicht vorhanden ist. Diese bleibt auch vorhanden wenn die Zeichnung "Leer" gespeichert wird. Gruß Bernd ------------------ --- Man muß nicht alles wissen, man muß nur wissen wo es steht --- Staatlich anerkannte Deutschniete [Diese Nachricht wurde von bk.sc am 15. Jun. 2013 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
StefanBerlitz Guter-Geist-Moderator IT Admin (CAx)
Beiträge: 8756 Registriert: 02.03.2000 SunZu sagt: Analysiere die Vorteile, die du aus meinem Ratschlag ziehst. Dann gliedere deine Kräfte entsprechend und mache dir außergewöhnliche Taktiken zunutze.
|
erstellt am: 17. Jun. 2013 09:06 <-- editieren / zitieren --> Unities abgeben: Nur für ratan
|
ratan Mitglied
Beiträge: 6 Registriert: 14.06.2013
|
erstellt am: 17. Jun. 2013 09:16 <-- editieren / zitieren --> Unities abgeben:
|
StefanBerlitz Guter-Geist-Moderator IT Admin (CAx)
Beiträge: 8756 Registriert: 02.03.2000 SunZu sagt: Analysiere die Vorteile, die du aus meinem Ratschlag ziehst. Dann gliedere deine Kräfte entsprechend und mache dir außergewöhnliche Taktiken zunutze.
|
erstellt am: 17. Jun. 2013 10:56 <-- editieren / zitieren --> Unities abgeben: Nur für ratan
Hallo ratan, Der VLC Player ist schon eine gute Wahl, das will ich gar nicht in Abrede stellen, ich bevorzuge allerdings in öffentlichen Foren Dateien und Dokumente, die auf den Standardprogrammen, die auf dem Zielrechner zu erwarten sind, abgespielt werden können. Das ist bei Windows basierenden System nun mal der Windows Media Player. Ich persönlich bevorzuge auch andere Player, ich selbst benutze als Standardplayer den MPC-HC, der kann es auch nicht abspielen - der von Bernd verwendete CAMStudio Lossless Codec von Rendersoft ist halt nicht überall installiert. BOT: das im Video von Bernd da Referenzen angezeigt werden liegt an der Ansichtspalette, derselbe Effekt tritt auch auf, wenn man über Einfügen-Zeichenansicht-Modell ein Modell einfügen will, aber noch nicht abgesetzt hat. Die Ansichtspalette ist praktisch so eine Art permanente mögliche Ansichtseinfügefunktion, wenn du aber in der Ansichtspalette auch einfach auf das rote Kreuzchen klickst ist auch (richtigerweise) keine Referenz da. Erschreckenderweise wird diese "leere" Zeichnung tatsächlich mit der Referenz gespeichert, das halte ich für einen Fehler, und zwar einen groben. Aber wie man das per API nachstellen kann weiß ich trotzdem nicht. Ciao, Stefan ------------------ Inoffizielle deutsche SolidWorks Hilfeseite http://solidworks.cad.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
ratan Mitglied
Beiträge: 6 Registriert: 14.06.2013
|
erstellt am: 21. Jun. 2013 13:23 <-- editieren / zitieren --> Unities abgeben:
|