指定された BoundingBoxMode フラグを使用して境界を決定し、Stroke オブジェクトを含む、外接する Rectangle を返します。
名前空間 : Microsoft.Ink
アセンブリ : Microsoft.Ink (Microsoft.Ink.dll 内)
構文
'宣言
Public Function GetBoundingBox ( _
mode As BoundingBoxMode _
) As Rectangle
'使用
Dim instance As Stroke
Dim mode As BoundingBoxMode
Dim returnValue As Rectangle
returnValue = instance.GetBoundingBox(mode)
public Rectangle GetBoundingBox(
BoundingBoxMode mode
)
public:
Rectangle GetBoundingBox(
BoundingBoxMode mode
)
public Rectangle GetBoundingBox(
BoundingBoxMode mode
)
public function GetBoundingBox(
mode : BoundingBoxMode
) : Rectangle
パラメータ
- mode
型 : Microsoft.Ink.BoundingBoxMode
BoundingBoxMode 列挙体のメンバ。これは、Stroke オブジェクトの境界ボックスの計算で使用する Stroke オブジェクトの特性 (描画属性など) を指定します。
戻り値
型 : System.Drawing.Rectangle
Stroke オブジェクトの境界ボックスを定義する、外接する Rectangle を返します。
解説
境界 Rectangle はインク空間座標で表されます。
外接する Rectangle は、Stroke オブジェクトを表示するときに無効化または再描画する表示部分に対応しています。
境界ボックスは、BoundingBoxMode モード以外のすべてのモードでキャッシュされます。
境界ボックスがペンの幅の影響を受ける場合は、Renderer オブジェクトのビュー変更に合わせてペンの幅が適切にスケーリングされます。つまり、ペンの幅はビュー変更の行列式の平方根で乗算されてスケーリングされます。
![]() |
---|
ペンの幅を明示的に設定していない場合は、既定値の 53 になります。正しい境界ボックスを生成するためには、ペンの幅を行列式の平方根で乗算する必要があります。境界ボックスの高さと幅はそれぞれ、この計算結果値の 1/2 だけ拡大されます。たとえば、ペンの幅が 53 で行列式の平方根が 50、境界ボックスが (0, 0, 1000, 1000) であるとします。ペンの幅は (53 * 50) / 2 の計算結果に従って、境界ボックスの各方向に対して調整され、右側と下側は 1 ずつ増えます。この結果、(-1325, -1325, 2326, 2326) の境界ボックスが描画されます。 |
![]() |
---|
Windows Vista 以降のバージョンでは、GetBoundingBox はストロークの幅を考慮に入れません。 |
![]() |
---|
このメソッドが返す、外接する Rectangle は、Stroke オブジェクトの境界ボックスのコピーです。このメソッドが返す Rectangle を変更しても、元の Stroke オブジェクトの境界ボックスには影響しません。 |
例
この C# の例では、Stroke オブジェクト theStroke から境界ボックスを取得します。この例では BoundingBoxMode 列挙体の CurveFit 値を使用して、境界ボックスの境界を決定します。
Rectangle theBoundingBox = theStroke.GetBoundingBox(BoundingBoxMode.CurveFit);
この Microsoft Visual Basic .NET の例では、Stroke オブジェクト theStroke から境界ボックスを取得します。この例では BoundingBoxMode 列挙体の BoundingBoxMode 値を使用して、境界ボックスの境界を決定します。
Dim theBoundingBox As Rectangle = theStroke.GetBoundingBox(BoundingBoxMode.CurveFit)
プラットフォーム
Windows Vista
.NET Framework および .NET Compact Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。
バージョン情報
.NET Framework
サポート対象 : 3.0