次の方法で共有


IInkDisp::HitTestCircle メソッド (msinkaut.h)

完全に内側にある、または既知の円で交差する InkStrokes コレクションを取得します。

構文

HRESULT HitTestCircle(
  [in]          long        X,
  [in]          long        Y,
  [in]          float       radius,
  [out, retval] IInkStrokes **Strokes
);

パラメーター

[in] X

インク空間単位でのヒット テスト円の中心の x 位置。

[in] Y

インク空間単位でのヒット テスト円の中心の y 位置。

[in] radius

ヒット テストで使用する円の半径 (インク空間単位)。

[out, retval] Strokes

このメソッドから制御が戻るときに、 には、指定した円の内側または交差するストロークのコレクションが格納されます。

戻り値

このメソッドは、これらの値のいずれかを返すことができます。

リターン コード 説明
S_OK
正常終了しました。
E_POINTER
パラメーターに無効なポインターが含まれていました。
E_INK_EXCEPTION
メソッド内で例外が発生しました。
E_INVALIDARG
表示ハンドルが無効です。
E_UNEXPECTED
予期しないパラメーターまたはプロパティの型。

注釈

ストロークが円と交差する場合は、完全なストロークが返されます。

メソッドは、ストロークに適用される描画属性の完全なセット (ペンの幅全体、ベジエスムージング (存在する場合)、ペン先の形状など) を考慮して、交差部分を計算します。

ストロークまたはストロークのコレクションに対して回転変換またはせん断変換が実行されると、変換された x- 座標と座標は元の座標と y- 同心ではなくなります。 このため、 radius または 座標から引数をx-y-計算することはできません。

既知のストロークのどの点がテスト領域と交差するかを確認するには、IInkStrokeDisp オブジェクトの HitTest メソッドを呼び出します。

アプリケーションは、結果のストロークのコレクションの宛先ポインターを常に渡す必要があります。 交差がない場合、コレクションのカウントは 0 になります。

要件

要件
サポートされている最小のクライアント Windows XP タブレット PC エディション [デスクトップ アプリのみ]
サポートされている最小のサーバー サポートなし
対象プラットフォーム Windows
ヘッダー msinkaut.h
Library InkObj.dll

こちらもご覧ください

HitTest(Point[], Single) メソッド

HitTest(Rectangle, Single) メソッド

IInkDisp

InkDisp クラス

InkStrokes コレクション