Die Inventor Host-API erfolgt über rules . Mit den folgenden rule , können Sie auf die gesamte Inventor-API zugreifen. Sie entspricht ThisApplication in VBA.
Intent >InventorApplication.Caption
--> "Autodesk Inventor 2012 - [Spiral Staircase.iam]"
Intent >InventorApplication.Caption = "MyApplication"
--> False
Intent >InventorApplication.ApplicationAddins
--> <System.__ComObject>
Intent >InventorApplication.ApplicationAddins.count
--> 48
Weitere Informationen zur Inventor-API finden Sie in der Inventor-API-Referenz.
GetHostObject( p As Part) As Any
Die Methode GetHostObject gibt die .NET-Referenz für das Inventor-Objekt zurück, das von p definiert wird. Wenn p kein Inventor-Objekt definiert, und die Methode gibt NoValue . Die Methode verwendet gebundene Werte und wertet nichts aus. Weitere Informationen darüber, was für das jeweilige Objekt aufgerufen werden kann, finden Sie in der Inventor-API-Referenz. Wo zutreffend, werden Werte in Inventor-Datenbankeinheiten zurückgegeben: Zentimeter für Länge und Bogenmaß für Winkel.
Wurzel
Intent >GetHostObject(Me)
--> <Inventor._DocumentClass>
Intent >GetHostObject(Me).FullFileName
--> "C:\Users\Public\Documents\Autodesk\Inventor ETO 2012\Inventor\Samples\Spiral Staircase.iam"
Intent >GetHostObject(Me).Type
--> <kDocumentObject>
Zeichnungsblatt
Intent >GetHostObject(Me).type
--> <kSheetObject>
Intent >GetHostObject(Me).DrawingViews
--> <System.__ComObject>
Intent >GetHostObject(Me).DrawingViews.Count
--> 3
Intent >GetHostObject(Me).DrawingViews.Get_Item(1)
--> <System.__ComObject>
Intent >GetHostObject(Me).DrawingViews.Get_Item(1).Name
--> "Front"
Lineare Bemaßung
Intent >GetHostObject(Me)
--> <System.__ComObject>
Intent >GetHostObject(Me).Type
--> <kLinearGeneralDimensionObject>
Intent >GetHostObject(Me).ExtensionLineOneVisible
--> True
Intent >GetHostObject(Me).IntentOne
--> <System.__ComObject>
Intent >GetHostObject(Me).IntentOne.IntentType
--> <kPointEnumIntent>
Intent >GetHostObject(Me).IntentOne.PointOnSheet
--> <System.__ComObject>
Intent >GetHostObject(Me).IntentOne.PointOnSheet.x
--> 18.7777841101695
Intent >GetHostObject(Me).IntentOne.PointOnSheet.y
--> 27.8127309322038
Sie können auf das Intent-API-Objekt mit Autodesk.Intent.IntentAPI.Instance.HostAPI zugreifen. Die praktischste Methode zum Verwenden dieses Objekts ist, erstellen Sie eine rule :
Rule IntentAddinAutomation As Any = Autodesk.Intent.IntentAPI.Instance.HostAPI