Autodesk Inventor: IProperties beim Plotten ändern - plotdate, plotuser

Mo, 23.03.2009 - 17:36 -- Daniel Espendiller

Nachdem auf jeder Zeichnung plotdatum und plotuser im Zeichnungskopf über die Autodesk Inventor: Plotten per Makro erstellt wird, soll nun dieser Vorgang direkt ausgeführt werden über Datei > Drucken ... Es soll ja Leute geben, die sich lieber durch ewig lange Menüs klicken, anstatt einen einfachen Button zu nutzen. So umgeht man natürlich die ganze Mimik.

So soll es vorkommen, dass riesige Stabel von Zeichnungen gelocht und gefalltet neben dem Plotsystem liegen und niemand will es gedruckt haben. Um solchen Ausreden aus dem Weg zu gehen habe ich ein gesondertetes Plugin erstellt, welches auf den Druckevent wartet und dann die IProperties plotdatum und plotuser setzt und die Zeichnung aktualisiert.

Installation

Downloaden und installieren und Schriftkopf bearbeiten
weiter Infos: Autodesk Inventor: Plotten per Makro

Quellcode

(Wen es interessiert)

    Public Class StandardAddInServer
        [...]
        Dim WithEvents m_InputEvents As UserInputEvents
        [...]
        Public Sub Activate(...) Implements Inventor.ApplicationAddInServer.Activate
                m_inventorApplication = addInSiteObject.Application
                m_InputEvents = m_inventorApplication.CommandManager.UserInputEvents
        End Sub
        Private Sub m_InputEvents_OnActivateCommand(ByVal CommandName As String, ByVal Context As Inventor.NameValueMap) Handles m_InputEvents.OnActivateCommand
            If m_inventorApplication.ActiveDocumentType = DocumentTypeEnum.kDrawingDocumentObject Then
                If CommandName = "AppFilePrintCmd" Then
                    Try
                        Dim plotCfg As New myPlotter(m_inventorApplication.ActiveDocument)
                        plotCfg.GenerateIProperties()
                        plotCfg.UpdateDocument()
                    Catch ex As Exception
                        MsgBox(ex.Message)
                    End Try
                End If
            End If
        End Sub
        [...]
    End Class