Stroke.FindIntersections-Methode
Sucht die Punkte, an denen dieses Stroke-Objekt andere Stroke-Objekte innerhalb einer gegebenen Strokes-Auflistung schneidet.
Namespace: Microsoft.Ink
Assembly: Microsoft.Ink (in Microsoft.Ink.dll)
Syntax
'Declaration
Public Function FindIntersections ( _
strokes As Strokes _
) As Single()
'Usage
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[]
Parameter
- strokes
Typ: Microsoft.Ink.Strokes
Die Strokes-Auflistung, mit der überprüft wird, ob Überschneidungen mit diesem Stroke-Objekt vorliegen. Wenn nullNULL-Verweis (Nothing in Visual Basic) (Nothing in Microsoft Visual Basic .NET), werden alle Strokes-Auflistungen im Ink-Objekt verwendet.
Rückgabewert
Typ: array<System.Single[]
Diese Methode gibt ein Array von Gleitkommaindexwerten zurück, die die Positionen angeben, an denen Überschneidungen auftreten.
Ein Gleitkommaindex ist ein Gleitkommawert, der eine beliebige Position zwischen zwei Punkten im Stroke-Objekt darstellt. Beispiele: Wenn 0,0 der erste Punkt im Strich und 1,0 der zweite Punkt im Strich ist, liegt 0,5 genau in der Mitte zwischen dem ersten und dem zweiten Punkt. Ebenso stellt ein Gleitkommaindexwert von 37,25 eine Position dar, die sich 25 Prozent entlang der Zeile zwischen den Punkten 37 und 38 des Strichs befindet.
Hinweise
Hinweis
Die Strokes-Auflistung im strokes-Parameter muss aus dem gleichen Ink-Objekt stammen wie das Stroke-Objekt, das auf Überschneidungen getestet wird.
Mit dieser Methode können nur die Schnittpunkte bestimmt werden.
Beispiele
In diesem Beispiel wird jedes ausgewählte Stroke-Objekt eines InkOverlay überprüft. Wenn der Stroke über mindestens einen Schnittpunkt mit den restlichen Elementen der Strokes-Auflistung im Ink-Objekt verfügt, wird der Stroke am ersten Schnittpunkt geteilt.
' 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]);
}
}
}
Plattformen
Windows Vista
.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Versionsinformationen
.NET Framework
Unterstützt in: 3.0