Condividi tramite


Metodo Stroke.Split

Aggiornamento: novembre 2007

Suddivide l'oggetto Stroke in corrispondenza della posizione specificata nell'oggetto Stroke e restituisce il nuovo oggetto Stroke.

Spazio dei nomi:  Microsoft.Ink
Assembly:  Microsoft.Ink (in Microsoft.Ink.dll)

Sintassi

'Dichiarazione
Public Function Split ( _
    findex As Single _
) As Stroke
'Utilizzo
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

Parametri

  • findex
    Tipo: System.Single
    Valore di indice a virgola mobile che rappresenta il punto in cui suddividere l'oggetto Stroke.

Valore restituito

Tipo: Microsoft.Ink.Stroke
Nuovo oggetto Stroke creato in seguito alla chiamata di questo metodo.

Note

Un indice a virgola mobile è un valore float che rappresenta una posizione tra due punti nel tratto. Ad esempio, se 0,0 è il primo punto nel tratto e 1,0 è il secondo punto nel tratto, 0,5 si trova in posizione intermedia tra il primo e il secondo punto. Allo stesso modo, un valore di indice a virgola mobile di 37,25 rappresenta una posizione che si trova al 25 percento sulla riga tra i punti 37 e 38 del tratto.

Quando un oggetto Stroke viene suddiviso, una parte del tratto mantiene la proprietà Id dell'oggetto Stroke originale. L'altra parte dell'oggetto Stroke diventa un nuovo oggetto Stroke con una proprietà Id maggiore di uno rispetto alla proprietà Id esistente più elevata. Se l'oggetto Stroke originale si trovava in un insieme Strokes (diverso dall'oggetto Ink.Strokes), solo la parte iniziale rimane in tale insieme.

Esempi

In questo esempio, viene esaminato ogni oggetto Stroke selezionato di un oggetto InkOverlay. Se l'oggetto Stroke dispone almeno di un'intersezione con il resto dell'insieme Strokes presente nell'oggetto Ink, l'oggetto Stroke viene suddiviso in corrispondenza del primo punto di intersezione.

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

Piattaforme

Windows Vista

.NET Framework e .NET Compact Framework non supportano tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

Informazioni sulla versione

.NET Framework

Supportato in: 3.0

Vedere anche

Riferimenti

Stroke Classe

Membri Stroke

Spazio dei nomi Microsoft.Ink