アプリケーションは、IDirect3DRMPickedArrayインターフェイスのメソッドを使用して、ピックオブジェクトをグループ化する。ピッキングは、ビューポート中で2D座標またはフレーム中でベクトルが与えられたときに、シーン上のビジュアルを検索するプロセスである。光線ピックについては、「IDirect3DRMPicked2Array」を参照すること。
IDirect3DRMViewport2::Pickメソッドを使用して、IDirect3DRMPickedArrayインターフェイスを取得する。次に、IDirect3DRMPickedArray::GetPickメソッドを呼び出して、IDirect3DRMFrameArrayインターフェイスとビジュアルオブジェクトを取得することができる。フレームの配列は、階層を経てビジュアルオブジェクトに通じるパスである。これは、すなわち、階層中の最上部の親が配列の最初に来るビジュアルオブジェクトの親フレームの階層リストである。
IDirect3DRMPickedArrayインターフェイスは、次のメソッドをサポートする。
GetPick |
GetSize |
すべてのCOMインターフェイスと同様、IDirect3DRMPickedArrayインターフェイスはIUnknownインターフェイスメソッドを継承する。IUnknownインターフェイスは、以下の3つのメソッドをサポートする。
AddRef |
QueryInterface |
Release |
Direct3DRMPickedArrayオブジェクトは、IDirect3DRMViewport2::Pickメソッドの呼び出しによって取得される。
指定されたピックによって交差するDirect3DRMVisualとDirect3DRMFrameオブジェクトを取得する。
構文
HRESULT GetPick(
DWORD index,
LPDIRECT3DRMVISUAL *lplpVisual,
LPDIRECT3DRMFRAMEARRAY *lplpFrameArray,
LPD3DRMPICKDESC lpD3DRMPickDesc
);
パラメータ
- index
- 情報を取得するピックを識別する、ピック配列へのインデックス。
- lplpVisual
- 指定されたピックに関連付けられたDirect3DRMVisualオブジェクトのポインタのアドレス。
- lplpFrameArray
- 指定されたピックに関連付けられたDirect3DRMFrameArrayオブジェクトのポインタのアドレス。
- lpD3DRMPickDesc
- ピックの位置、面、取得するオブジェクトのグループ識別子を指定するD3DRMPICKDESC構造体へのアドレス。
戻り値
成功すればD3DRM_OK、失敗すればエラーを返す。エラーのリストについては、「Direct3D保持モードの戻り値」を参照すること。
参照
Direct3DRMPickedArrayオブジェクトに含まれている要素数を取得する。
構文
DWORD GetSize( );
戻り値
要素数を返す。
トップに戻る
© 1999 Microsoft and/or its suppliers. All rights reserved. Terms of Use.