共用方式為


Stroke.FindIntersections 方法

尋找點,其中這個 Stroke 物件與所指定 Strokes 集合內的其他 Stroke 物件交集。

命名空間:  Microsoft.Ink
組件:  Microsoft.Ink (在 Microsoft.Ink.dll 中)

語法

'宣告
Public Function FindIntersections ( _
    strokes As Strokes _
) As Single()
'用途
Dim instance As Stroke
Dim strokes As Strokes
Dim returnValue As Single()

returnValue = instance.FindIntersections(strokes)
public float[] FindIntersections(
    Strokes strokes
)
public:
array<float>^ FindIntersections(
    Strokes^ strokes
)
public float[] FindIntersections(
    Strokes strokes
)
public function FindIntersections(
    strokes : Strokes
) : float[]

參數

  • strokes
    型別:Microsoft.Ink.Strokes
    Strokes 集合,用來測試與這個 Stroke 物件的交集。如果為 nullNull 參照 (即 Visual Basic 中的 Nothing) (在 Microsoft Visual Basic .NET 中為 Nothing),則使用 Ink 物件中的所有 Strokes 集合。

傳回值

型別:array<System.Single[]
這個方法會傳回浮點索引值的陣列,指出交集發生的位置。
浮點索引是表示 Stroke 物件中兩點之間某個位置的浮點值。舉例來說,如果 0.0 是筆劃的第一點,而 1.0 是筆劃的第二點,0.5 即為第一點和第二點之間的中間處。同樣地,浮點索引值 37.25 則表示筆劃中沿著 37 和 38 兩點間線條上百分之 25 的位置。

備註

ms570062.alert_note(zh-tw,VS.90).gif注意事項:

strokes 參數中的 Strokes 集合必須與您測試交集的 Stroke 物件來自相同的 Ink 物件。

這個方法只能判斷交集的點。

範例

在這個範例中,會檢查 InkOverlay 的每個已選取 Stroke 物件。如果 StrokeInk 物件中的其餘 Strokes 集合至少有一個交集,則 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

請參閱

參考

Stroke 類別

Stroke 成員

Microsoft.Ink 命名空間

Stroke.GetRectangleIntersections

Strokes