AutoCAD のリアクタには、多くのタイプがあります。リアクタの各タイプは、1 つまたは複数の AutoCAD イベントに応答します。
さまざまなタイプの使用可能リアクタは、次のように分類されます。
データベース リアクタは、オブジェクトがデータベースに追加されたときのように、図面データベースに特定のイベントが発生したときにアプリケーションに通知します。
ドキュメント リアクタは、新しい図面ドキュメントを開いたり、他のドキュメント ウィンドウをアクティブにしたり、ドキュメントのロック状態を変更するなど、現在の図面ドキュメントに対して変更が行われたときにアプリケーションに通知します。
編集リアクタは、図面を開いたり、閉じたり、保存したり、DXF ファイルの読み込みや書き出し、システム変数の値を変更するなど、AutoCAD コマンドが呼び出されるたびにアプリケーションに通知します。
リンカー リアクタは、ARX アプリケーションがロードまたはロード解除されるたびにアプリケーションに通知します。
オブジェクト リアクタは、特定のオブジェクトが修正、コピー、削除されるたびにアプリケーションに通知します。
編集リアクタ以外は、リアクタのタイプは分類ごとに 1 つしかありません。次の表に、AutoLISP コードの中で指定するリアクタ名を、タイプ別に示します。
一般的なリアクタのタイプ |
|
---|---|
リアクタ タイプの識別子 |
説 明 |
:VLR-AcDb-Reactor |
データベース リアクタ |
:VLR-DocManager-Reactor |
ドキュメント管理リアクタ |
:VLR-Editor-Reactor |
一般的な編集リアクタ。下位互換性を保持するためにあります。 |
:VLR-Linker-Reactor |
リンカー リアクタ |
:VLR-Object-Reactor |
オブジェクト リアクタ |
AutoCAD 2000 から、汎用クラスの編集リアクタはさらに特定のリアクタ タイプに分類されています。:VLR-Editor-Reactor タイプは、下位互換性を保持するために残してありますが、:VLR-Editor-Reactor を使用して AutoCAD 2000 で採用された新しい編集リアクタを参照することはできません。次の表に、AutoCAD 2000 から使用できるようになった編集リアクタのタイプを示します。
編集リアクタのタイプ |
|
---|---|
リアクタ タイプ |
説 明 |
:VLR-Command-Reactor |
コマンド イベントを通知します。 |
:VLR-DeepClone-Reactor |
ディープ クローン イベントを通知します。 |
:VLR-DWG-Reactor |
図面イベントを通知します(たとえば、図面ファイルを開く、閉じるなど)。 |
:VLR-DXF-Reactor |
DXF ファイルの読み込みまたは書き出しに関連するイベントを通知します。 |
:VLR-Insert-Reactor |
ブロック挿入に関連するイベントを通知します。 |
:VLR-Lisp-Reactor |
AutoLISP イベントを通知します。 |
:VLR-Miscellaneous-Reactor |
他の編集リアクタのタイプには分類されないイベントを通知します。 |
:VLR-Mouse-Reactor |
マウス イベントを通知します(たとえば、ダブルクリックするなど)。 |
:VLR-SysVar-Reactor |
システム変数に対する変更を通知します。 |
:VLR-Toolbar-Reactor |
ツールバーのビットマップに対する変更を通知します。 |
:VLR-Undo-Reactor |
UNDO イベントを通知します。 |
:VLR-Wblock-Reactor |
ブロックの書き出しに関連するイベントを通知します。 |
:VLR-Window-Reactor |
AutoCAD アプリケーション ウィンドウの移動やサイズ変更に関連するイベントを通知します。 |
:VLR-XREF-Reactor |
外部参照のアタッチや変更に関連するイベントを通知します。 |
vlr-types 関数を使用すると、使用可能リアクタ タイプの全リストが返されます。次に、例を示します。
(vlr-types) (:VLR-Linker-Reactor :VLR-Editor-Reactor :VLR-AcDb-Reactor :VLR-DocManager-Reactor :VLR-Command-Reactor :VLR-Lisp-Reactor :VLR-DXF-Reactor :VLR-DWG-Reactor :VLR-Insert-Reactor :VLR-Wblock-Reactor :VLR-SysVar-Reactor :VLR-DeepClone-Reactor :VLR-XREF-Reactor :VLR-Undo-Reactor :VLR-Window-Reactor :VLR-Toolbar-Reactor :VLR-Mouse-Reactor :VLR-Miscellaneous-Reactor :VLR-Object-Reactor)