Inventor ホスト API は、ルールからアクセスできます。次のルールを使用して、Inventor API 全体にアクセスすることができます。これは VBA の ThisApplication に相当します。
Intent >InventorApplication.Caption --> "Autodesk Inventor 2012 - [Spiral Staircase.iam]" Intent >InventorApplication.Caption = "MyApplication" --> False Intent >InventorApplication.ApplicationAddins --> <System.__ComObject> Intent >InventorApplication.ApplicationAddins.count --> 48
Inventor API の詳細については、『Inventor API リファレンス』を参照してください。
GetHostObject( p As Part) As Any
GetHostObject メソッドでは、p によって定義される Inventor オブジェクトを表す .NET リファレンスが返されます。p によって Inventor オブジェクトが定義されていない場合は、NoValue が返されます。このメソッドではバインドされている値を使用し、評価は行いません。特定のオブジェクトに対して呼び出すことができるものの詳細については、『Inventor API リファレンス』を参照してください。適用可能な場合、値は Inventor データベースの単位(長さはセンチメートル、角度はラジアン)で返されます。
[ルート]
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>
図面シート
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"
長さ寸法
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
Autodesk.Intent.IntentAPI.Instance.HostAPI を使用して Intent API オブジェクトにアクセスすることができます。このオブジェクトを使用する最も効率的な方法は、ルールを作成することです。
Rule IntentAddinAutomation As Any = Autodesk.Intent.IntentAPI.Instance.HostAPI