Stroke.Split メソッド
Stroke オブジェクトを、Stroke オブジェクト上の指定した位置で分割し、新しい Stroke オブジェクトを返します。
名前空間 : Microsoft.Ink
アセンブリ : Microsoft.Ink (Microsoft.Ink.dll 内)
構文
'宣言
Public Function Split ( _
findex As Single _
) As Stroke
'使用
Dim instance As Stroke
Dim findex As Single
Dim returnValue As Stroke
returnValue = instance.Split(findex)
public Stroke Split(
float findex
)
public:
Stroke^ Split(
float findex
)
public Stroke Split(
float findex
)
public function Split(
findex : float
) : Stroke
パラメータ
- findex
型 : System.Single
Stroke オブジェクトを分割する場所を表す浮動小数点インデックス値。
戻り値
型 : Microsoft.Ink.Stroke
このメソッドを呼び出した結果として作成される新しい Stroke オブジェクト。
解説
浮動小数点インデックスは、ストローク内の 2 つのポイントの間のある場所を表す浮動小数点値です。たとえば、0.0 がストローク内の最初のポイントで、1.0 がストローク内の 2 番目のポイントの場合、0.5 が最初のポイントと 2 番目のポイントの間の中間です。同様に、浮動小数点インデックス値 37.25 は、ストロークのポイント 37 と 38 の間の線に沿って 25 パーセント進んだ位置を表しています。
Stroke が分割されると、ストロークの一部分に元の Stroke オブジェクトの Id プロパティが保持されます。Stroke の他の部分は、既存の最大の Id プロパティより 1 大きい Id プロパティを持つ新しい Stroke オブジェクトとなります。元の Stroke が Strokes コレクション内 (Ink.Strokes 以外) にある場合、開始部分のみがそのコレクションに残ります。
例
この例では、InkOverlay で選択された各 Stroke オブジェクトが調べられます。Stroke が、Ink オブジェクトのその他の Strokes コレクションとの間に少なくとも 1 つの交差部分を持つ場合、Stroke は交差部分の最初のポイントで分割されます。
' Access to the Strokes property returns a copy of the Strokes object.
' This copy must be implicitly (via using statement) or explicitly
' disposed of in order to avoid a memory leak.
Using allStrokes As Strokes = mInkOverlay.Ink.Strokes
For Each S As Stroke In mInkOverlay.Selection
' find the intersections
Dim intersections() As Single = S.FindIntersections(allStrokes)
' if we have at least 1 intersection, split the stroke
If intersections.Length > 0 Then
S.Split(intersections(0))
End If
Next
End Using
// Access to the Strokes property returns a copy of the Strokes object.
// This copy must be implicitly (via using statement) or explicitly
// disposed of in order to avoid a memory leak.
using (Strokes allStrokes = mInkOverlay.Ink.Strokes)
{
foreach (Stroke S in mInkOverlay.Selection)
{
// find the intersections
float[] intersections = S.FindIntersections(allStrokes);
// if we have at least 1 intersection, split the stroke
if (intersections.Length > 0)
{
S.Split(intersections[0]);
}
}
}
プラットフォーム
Windows Vista
.NET Framework および .NET Compact Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。
バージョン情報
.NET Framework
サポート対象 : 3.0