Partager via


Stroke.FindIntersections, méthode

Mise à jour : November 2007

Recherche les points où cet objet Stroke croise d'autres objets Stroke dans une collection Strokes donnée.

Espace de noms :  Microsoft.Ink
Assembly :  Microsoft.Ink (dans Microsoft.Ink.dll)

Syntaxe

'Déclaration
Public Function FindIntersections ( _
    strokes As Strokes _
) As Single()
'Utilisation
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[]

Paramètres

  • strokes
    Type : Microsoft.Ink.Strokes
    Collection Strokes utilisée pour tester les intersections avec cet objet Stroke. Si nullune référence null (Nothing en Visual Basic) (Nothing en Microsoft Visual Basic .NET), toutes les collections Strokes de l'objet Ink sont utilisées.

Valeur de retour

Type : array<System.Single[]
Cette méthode retourne un tableau de valeurs d'index à virgule flottante qui indiquent les emplacements des intersections.
L'index à virgule flottante désigne une valeur float qui représente un emplacement situé entre deux points de l'objet Stroke. Par exemple, si 0.0 est le premier point du trait et 1.0 le deuxième, 0.5 est à mi-chemin entre le premier et le deuxième points. De la même façon, une valeur d'index à virgule flottante de 37,25 représente un emplacement qui est situé à 25 % sur la longueur de la ligne entre les points 37 et 38 du trait.

Notes

ms570062.alert_note(fr-fr,VS.90).gifRemarque :

La collection Strokes du paramètre strokes doit provenir du même objet Ink que l'objet Stroke dont vous testez les intersections.

Cette méthode ne peut déterminer que les points d'intersection.

Exemples

Dans cet exemple, chaque objet Stroke sélectionné d'un InkOverlay est examiné. Si le Stroke a au moins une intersection avec le reste de la collection Strokes de l'objet Ink, le Stroke est fractionné au niveau du premier point d'intersection.

' 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]);
        }
    }
}

Plateformes

Windows Vista

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Informations de version

.NET Framework

Pris en charge dans : 3.0

Voir aussi

Référence

Stroke, classe

Membres Stroke

Microsoft.Ink, espace de noms

Stroke.GetRectangleIntersections

Strokes