| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Inventor11-VBA unsynchron (1224 mal gelesen)
|
Speedy.X Mitglied Dipl.Ing.
Beiträge: 45 Registriert: 17.05.2005
|
erstellt am: 05. Dez. 2006 11:19 <-- editieren / zitieren --> Unities abgeben:
Hallo hilfreiches Forum, mein Inventor11-VBA läuft unsynchron. Um aus Bauteilen Bilder zu machen verwende ich folgende Routine: Dat1 = Dir(Pfd1 & "*.ipt") Do While Dat1 <> "" Dat2 = DName(Dat1) ' Dateiname ohne Extention Set Doc = ThisApplication.Documents.Open(Pfd1 & Dat1, True) Set rCtrlDef = ThisApplication.CommandManager.ControlDefinitions.Item("AppIsometricViewCmd") rCtrlDef.Execute 'angezogen . . . ThisApplication.ActiveView.DisplayMode = kShadedRendering ThisApplication.ActiveView.Update Call ThisApplication.CommandManager.PostPrivateEvent(kFileNameEvent, Pfd1 & Dat2 & "1.jpg") Call ThisApplication.CommandManager.StartCommand(kFileSaveCopyAsCommand) 'ausgezogen ThisApplication.ActiveView.DisplayMode = kWireframeRendering ThisApplication.ActiveView.Update Call ThisApplication.CommandManager.PostPrivateEvent(kFileNameEvent, Pfd1 & Dat2 & "2.jpg") Call ThisApplication.CommandManager.StartCommand(kFileSaveCopyAsCommand) 'Call ThisApplication.Documents.CloseAll Dat1 = Dir() Loop Im F8-Einzelschrittmodus läuft alles sauber. Wenn das Macro aber ungebremst durchläuft sind nur die Hälfte der Dateien zu sehen und werden nicht abgespeichert. Welche Möglichkeit gibt es Inventor zu "synchronisieren", also erst weiterzumachen, wenn Dateiladen und Bildschiraufbau vollständig abgeschlossen sind? Gruß Rainer Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rtend12 Mitglied Dipl.-Ing. (FH) Maschinenbau / Konstrukteur
Beiträge: 436 Registriert: 21.07.2004 Catia V5 (R16SP5, B18SP5) VB.Net 2003
|
erstellt am: 05. Dez. 2006 22:12 <-- editieren / zitieren --> Unities abgeben: Nur für Speedy.X
Hallo Speedy.X, man kann mit odoc.saveas(xxx.bmp) auch eine bmp erzeugen, sollte dann auch als jpg gehen. Hab zwar bisher noch keine Dateien im Batchbetrieb exportiert, aber bei einer Datei, die ich in Step exportiere, ist Inventor erst nach dem Export wieder verwendbar. Gruß Reinhard Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Speedy.X Mitglied Dipl.Ing.
Beiträge: 45 Registriert: 17.05.2005
|
erstellt am: 06. Dez. 2006 08:55 <-- editieren / zitieren --> Unities abgeben:
Hallo Reinhard, Problem ist leider nicht das Format. Das Macro eilt dem Bildschirmaufbau leider so voraus, daß die Schleife schon mit einer neuen Datei beschäftigt ist, während sich das "alte" Modell sich noch in Pose rückt. Ich suche nach einer Möglichkeit das Macro erst weiterzuführen, wenn der Bildschirmaufbau vollständig erfolgt ist. Gruß Rainer Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
PaulSchuepbach Moderator Programmierer
Beiträge: 1005 Registriert: 01.10.2003
|
erstellt am: 06. Dez. 2006 09:49 <-- editieren / zitieren --> Unities abgeben: Nur für Speedy.X
|
Speedy.X Mitglied Dipl.Ing.
Beiträge: 45 Registriert: 17.05.2005
|
erstellt am: 06. Dez. 2006 10:37 <-- editieren / zitieren --> Unities abgeben:
|
eagle82 Mitglied Konstrukteur
Beiträge: 35 Registriert: 23.06.2005 IV10 SP3a
|
erstellt am: 12. Jan. 2007 13:47 <-- editieren / zitieren --> Unities abgeben: Nur für Speedy.X
Hy Speedy! Wenn du wirklich einen Screenshoot brauchst dann gibt es die Möglich keit auf den Bildaufbau zu warten... Erzeuge eine Form die sich selbst wieder entladet jedoch modal zum Makro ist, dadurch muss Inventor um die Form anzuzeigen seinen Bildschirm vorher aufbauen und kann dann erst die Form anzeigen und wenn sich die Form wieder selbst (halbe sek. oder weniger) verschwunden ist dann wird dein Makro weiter ausgeführt und du hast dein gewolltes ergebnis! Funkt so ziemlich gut überall wo du die Oberfläche ansprechen musst! Mfg Mario Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Speedy.X Mitglied Dipl.Ing.
Beiträge: 45 Registriert: 17.05.2005
|
erstellt am: 12. Jan. 2007 14:05 <-- editieren / zitieren --> Unities abgeben:
|