Compartir a través de


Stroke.FindIntersections (Método)

Actualización: noviembre 2007

Busca los puntos donde este objeto Stroke forma una intersección con otros objetos Stroke de una colección Strokes determinada.

Espacio de nombres:  Microsoft.Ink
Ensamblado:  Microsoft.Ink (en Microsoft.Ink.dll)

Sintaxis

'Declaración
Public Function FindIntersections ( _
    strokes As Strokes _
) As Single()
'Uso
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[]

Parámetros

  • strokes
    Tipo: Microsoft.Ink.Strokes
    La colección Strokes que se usa para comprobar las intersecciones con este objeto Stroke. Si es nullreferencia null (Nothing en Visual Basic) (Nothing en Microsoft Visual Basic .NET), se usan todas las colecciones Strokes del objeto Ink.

Valor devuelto

Tipo: array<System.Single[]
Este método devuelve una matriz de valores de índice de punto flotante que indican las ubicaciones donde se producen las intersecciones.
Un índice de punto flotante es un valor flotante que representa una ubicación situada en algún lugar entre dos puntos del objeto Stroke. Por ejemplo, si 0,0 es el primer punto del trazo y 1,0 el segundo punto, 0,5 se encontrará a mitad de camino entre el primer y el segundo punto. De igual forma, un valor de índice de punto flotante de 37,25 representa una ubicación que se encuentra en el 25 por ciento de la línea que une los puntos 37 y 38 del trazo.

Comentarios

Nota

La colección Strokes en el parámetro strokes debe proceder del mismo objeto Ink que el objeto Stroke que se esté comprobando para formar la intersección.

Este método solamente puede determinar los puntos de intersección.

Ejemplos

En este ejemplo, se examinan todos los objetos Stroke seleccionados de un objeto InkOverlay. Si Stroke tiene al menos una intersección con el resto de la colección Strokes del objeto Ink, Stroke se divide en el primer punto de intersección.

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

Plataformas

Windows Vista

.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Información de versión

.NET Framework

Compatible con: 3.0

Vea también

Referencia

Stroke (Clase)

Stroke (Miembros)

Microsoft.Ink (Espacio de nombres)

Stroke.GetRectangleIntersections

Strokes