Compartir a través de


Strokes.GetBoundingBox (Método)

Actualización: noviembre 2007

Devuelve el rectangulo delimitador Rectangle que contiene el objeto Stroke, utilizando el marcador BoundingBoxMode predeterminado para determinar los límites.

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

Sintaxis

'Declaración
Public Function GetBoundingBox As Rectangle
'Uso
Dim instance As Strokes
Dim returnValue As Rectangle

returnValue = instance.GetBoundingBox()
public Rectangle GetBoundingBox()
public:
Rectangle GetBoundingBox()
public Rectangle GetBoundingBox()
public function GetBoundingBox() : Rectangle

Valor devuelto

Tipo: System.Drawing.Rectangle
Devuelve el rectangulo delimitador Rectangle que define el cuadro de límite de la colección Strokes.

Comentarios

El cuadro de límite Rectangle se encuentra en las coordenadas del espacio de entrada manuscrita.

El rectangulo delimitador Rectangle corresponde a la parte de la presentación que se desea invalidar o actualizar al mostrar una colección Strokes.

Cuando el cuadro de límite se ve afectado por el ancho de la pluma, este ancho se escala convenientemente conforme a la transformación de la vista del objeto Renderer. Para ello, el ancho de la pluma se multiplica por la raíz cuadrada del determinante de la transformación de vista.

Nota

Si no ha establecido explícitamente el ancho de la pluma, su valor predeterminado es 53. Debe multiplicar el ancho de la pluma por la raíz cuadrada del determinante para obtener el cuadro de límite correcto. El alto y el ancho del cuadro de límite se amplían la mitad de esta cantidad en cada dirección. Por ejemplo, supongamos que el ancho de la pluma es 53, la raíz cuadrada del factor determinante es 50 y el cuadro de límite es (0, 0, 1000, 1000). El ajuste del ancho de la pluma respecto al cuadro de límite en cada dirección se calcula con esta operación (53 * 50) / 2, y la parte derecha e inferior se incrementan en uno. Esto genera un cuadro de límite representado de (-1325, -1325, 2326, 2326).

Nota

El rectangulo delimitador Rectangle que devuel este método es una copia del cuadro de límite de la colección Strokes. Modificar el Rectangle que devuelve este método no tiene ningún efecto en el cuadro de límite de colección Strokes original.

Ejemplos

En este ejemplo, una colección Strokes de un objeto InkOverlay se recorta a la mitad derecha de la colección Strokes. Primero, se obtiene el rectángulo delimitador de la colección Strokes llamando al método GetBoundingBox. A continuación, se crea un nuevo rectángulo con la mitad derecha recortada y se pasa al método Clip.

' 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
    ' Determine the bounding box for the Strokes collection.
    Dim bounds As Rectangle = allStrokes.GetBoundingBox()
    'Create rectangle for Clip method.
    Dim halfRectangle As Rectangle = _
            New Rectangle(bounds.Left, bounds.Top, bounds.Width / 2, bounds.Height)
    ' Clip the Strokes collection.
    allStrokes.Clip(halfRectangle)
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)
{
    // Determine the bounding box for the Strokes collection.
    Rectangle bounds = allStrokes.GetBoundingBox();
    //Create rectangle for Clip method.
    Rectangle halfRectangle = 
        new Rectangle(bounds.Left, bounds.Top, bounds.Width / 2, bounds.Height);
    // Clip the Strokes collection.
    allStrokes.Clip(halfRectangle);
}

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

Strokes (Clase)

Strokes (Miembros)

GetBoundingBox (Sobrecarga)

Microsoft.Ink (Espacio de nombres)

Stroke.GetBoundingBox

BoundingBoxMode