| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Zeichnungsansichten automatisch anpassen (2441 mal gelesen)
|
CoolKay Mitglied Principal Consultant
Beiträge: 48 Registriert: 12.02.2003
|
erstellt am: 13. Aug. 2009 15:54 <-- editieren / zitieren --> Unities abgeben:
Moin, ich hab da mal ein Problem: Ich habe eine Bauteilvorlage, bei der ich durch Ändern der Parameter verschiedene Größen mir generiere. Jetzt erzeuge ich gerade die Zeichnung passend dazu. Aber: Die Zeichnung ist immer nur für eine Größe richtig. In meiner ersten Ausprägung ist das der Maßstab 1:1, aber in der nächsten Ausprägung passt der Maßstab schin nicht mehr und müßte 1:2 sein. Hat jemand ein Script, welches mir die Ansicht innerhalb der Zeichnungsvorlage auf den entsprechenden Maßstab bringt, so daß das Bauteil immer noch hübsch ins A4 Blatt passt? Ich möchte später beide Dateien , Modell und ZHG kopieren, im Modell meine Ausprägung definieren, und die ZHG sollte komplett hübsch eingepasst ausschauen und vermaßt sein. ------------------ Gruß Kay ____ Wenn sich die Gelegenheit zu einem Fehler ergibt, wird er gemacht. Der Zeitpunkt ist immer maximal ungeeignet. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mssoftware Mitglied alles mögliche
Beiträge: 76 Registriert: 15.06.2005 Design Suite 2011-2016 Ultimate Microsoft Visual Studio Professional 2010<P>i7 2600K @3,4Ghz Windows 7 64bit nvidia GTX 760 16GB RAM 2x SSD256GB NAS 1TB (gespiegelt)
|
erstellt am: 14. Aug. 2009 09:20 <-- editieren / zitieren --> Unities abgeben: Nur für CoolKay
|
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2166 Registriert: 15.11.2006 Windows 10 x64, AIP 2022
|
erstellt am: 14. Aug. 2009 09:42 <-- editieren / zitieren --> Unities abgeben: Nur für CoolKay
Hallo Wenn du schon .net hast würde ich das Tool (vmtl. eine dll?!?) nur um die Events OnOpenDocument und OnChangeDocument mit einer Prüfung, ob das Dokument eine IDW ist erweitern. Inventor feuert diese Events selber ab und bietet über die API die Möglichkeit darauf zu reagieren. Such mal in der Programmierungshilfe nach "OnDrag". Da ist ein Beispiel für Events dabei. Hilfreich könnte auch noch der EventWatcher sein, der irgendwo im Ordner SDK liegt. Damit kann man sehen welche Events Inventor wann abfeuert. ------------------ MfG RK Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mssoftware Mitglied alles mögliche
Beiträge: 76 Registriert: 15.06.2005
|
erstellt am: 14. Aug. 2009 09:52 <-- editieren / zitieren --> Unities abgeben: Nur für CoolKay
Im Moment ist es noch eine .exe Datei. Da ich auch gerade mit .net angefangen habe, muß ich erst mal sehen wie ich da eine .dll erstelle und diese dann mittels des von dir genannten Beispieles "EventWatcher" einbauen kann. Der Quellcode der .exe ist in dem zip File enthalten. Gruß Maik Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2166 Registriert: 15.11.2006 Windows 10 x64, AIP 2022
|
erstellt am: 15. Aug. 2009 09:09 <-- editieren / zitieren --> Unities abgeben: Nur für CoolKay
Hallo Ich kenne mich mit .net gar nicht aus, daher kann ich nicht helfen. Deine exe hängt sich, laienhaft ausgedrückt, doch auch an eine laufende Inventorinstanz. Deswegen sollte sie auch in der Lage sein Events mitzubekommen. Der EventWatcher ist ein fertiges Programm, den man parallel zum Inventor laufen läßt. In einer Liste kann man anhaken, welche Events man beim Auslösen sehen will - also eine Art Filter, weil es sehr viele Events gibt. Dann macht man z.B. ein Speichern im Inventor und kann danach im EventWatcher Fenster sehen welche Events in welcher Reihenfolge abgefeuert wurden. In VB sieht das dann so aus, wenn beim Speichern einer IDW noch vorher (kbefore) etwas gemacht werden soll:
Code: Option explicit Public objInventorApp as Inventor.ApplicationPrivate WithEvents oAppEvents As ApplicationEvents Private Sub ApplicationAddInServer_Activate(ByVal AddInSiteObject As Inventor.ApplicationAddInSite, ByVal FirstTime As Boolean) ' Save a reference to the Application object. Set objInventorApp = AddInSiteObject.Application Set oAppEvents = objInventorApp.ApplicationEvents end sub Private Sub oAppEvents_OnSaveDocument(ByVal DocumentObject As Document, ByVal BeforeOrAfter As EventTimingEnum, ByVal Context As NameValueMap, HandlingCode As HandlingCodeEnum) If BeforeOrAfter = kBefore Then If DocumentObject.DocumentType = kDrawingDocumentObject Then MsgBox "Hallo" End If End If 'kbefore End Sub Private Property Get ApplicationAddInServer_Automation() As Object Set ApplicationAddInServer_Automation = Nothing End Property Private Sub ApplicationAddInServer_ExecuteCommand(ByVal CommandID As Long) ' No longer used; but must remain here End Sub Private Sub ApplicationAddInServer_Deactivate() Set objInventorApp = Nothing End Sub
In .Net dürfte das sehr ähnlich sein. Vielleicht hilft dir das Beispiel weiter. ------------------ MfG RK Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mssoftware Mitglied alles mögliche
Beiträge: 76 Registriert: 15.06.2005
|
erstellt am: 17. Aug. 2009 14:28 <-- editieren / zitieren --> Unities abgeben: Nur für CoolKay
Hallo rkauskh, vielen Dank für dein Beispiel. am Wochenende habe ich mir erst einmal den grundlegenden Aufbau einer dll in .net angesehen. Nun habe ich im IV Installationsverzeichnis eine Datei Namens "InventorWizard.exe" gefunden, die laut Beschreibung Vorlagen für VB.NET installiert. Leider bricht die Installation mit der Fehlermeldung "keine Visual Studio Version gefunden" ab, obwohl "Microsoft Visual Basic 2008 Express Edition" installiert ist. Naja, dann muss ich mich wohl durch die IV Samples durchwühlen und dann kann ich vermutlich auch irgendwann einmal dein Beispiel nachvollziehen, im Moment fehlen mir noch die Grundlagen. Gruß
Maik [Diese Nachricht wurde von mssoftware am 18. Aug. 2009 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mssoftware Mitglied alles mögliche
Beiträge: 76 Registriert: 15.06.2005 Design Suite 2011-2016 Ultimate Microsoft Visual Studio Professional 2010<P>i7 2600K @3,4Ghz Windows 7 64bit nvidia GTX 760 16GB RAM 2x SSD256GB NAS 1TB (gespiegelt)
|
erstellt am: 06. Sep. 2009 01:13 <-- editieren / zitieren --> Unities abgeben: Nur für CoolKay
|