Gesture.HotPoint (Propiedad)
Actualización: noviembre 2007
Obtiene el punto activo del movimiento, en coordenadas de espacio de entrada manuscrita.
Espacio de nombres: Microsoft.Ink
Ensamblado: Microsoft.Ink (en Microsoft.Ink.dll)
Sintaxis
'Declaración
Public ReadOnly Property HotPoint As Point
'Uso
Dim instance As Gesture
Dim value As Point
value = instance.HotPoint
public Point HotPoint { get; }
public:
property Point HotPoint {
Point get ();
}
/** @property */
public Point get_HotPoint()
public function get HotPoint () : Point
Valor de propiedad
Tipo: System.Drawing.Point
Punto activo del movimiento, en coordenadas de espacio de entrada manuscrita.
Comentarios
El punto activo es el punto que más se distingue de un movimiento. Suele ser el punto situado en el ángulo de un movimiento o el punto en el que se intenta que se produzca el movimiento con respecto al contenido que lo rodea. Si no se aprecia ningún punto activo para un movimiento conocido, el punto inicial del movimiento será el punto activo.
Por ejemplo, el punto activo del movimiento Check es el punto del ángulo y el punto activo del movimiento Curlicue, en la enumeración ApplicationGesture, es el inicio del trazo que supone el movimiento.
Para obtener más información sobre cómo se usa un punto activo, vea Using Gestures.
Ejemplos
En este ejemplo se desencadena un controlador de eventos cuando se reconoce un movimiento de aplicación. Solo desencadenarán el evento los tipos ApplicationGesture solicitados específicamente por la aplicación (llamando al método SetGestureStatus). Al examinar el primer objeto Gesture pasado al controlador de eventos, si la propiedad Confidence está establecida en un nivel de confianza alto para un movimiento Check, se dibuja un círculo pequeño alrededor de las coordenadas que representa la propiedad HotPoint.
' event handler for InkOverlay.Gesture event
Private Sub mInkObject_Gesture(ByVal sender As Object, ByVal e As InkCollectorGestureEventArgs)
' There might be more than one gesture passed in InkCollectorGestureEventArgs
' The gestures are arranged in order of confidence from most to least
' This event handler is only concerned with the first (most confident) gesture
' and only if the first gesture has RecognitionConfidence.Strong
Dim G As Gesture = e.Gestures(0)
' if this is ApplicationGesture.Check of RecognitionConfidence.Strong confidence
If ApplicationGesture.Check = G.Id And RecognitionConfidence.Strong = G.Confidence Then
Dim mInkOverlay As InkOverlay = DirectCast(sender, InkOverlay)
' assuming here that InkOverlay.AttachedControl property is set.
' This can be set with the .ctor InkOverlay(Control C) or the
' InkOverlay.AttachedControl property can be set later.
Using GR As Graphics = mInkOverlay.AttachedControl.CreateGraphics()
' get the hot point
Dim hotPoint As Point = G.HotPoint
' convert to pixel coordinates
mInkOverlay.Renderer.InkSpaceToPixel(GR, hotPoint)
' draw a small circle
GR.DrawEllipse(Pens.Orange, hotPoint.X - 6, hotPoint.Y - 6, 12, 12)
' cancel the event. This prevents the gesture from disappearing
' and lets you see the small circle and the gesture together
e.Cancel = True
End Using
End If
End Sub
// event handler for InkOverlay.Gesture event
private void mInkObject_Gesture(object sender, InkCollectorGestureEventArgs e)
{
// There might be more than one gesture passed in InkCollectorGestureEventArgs
// The gestures are arranged in order of confidence from most to least
// This event handler is only concerned with the first (most confident) gesture
// and only if the first gesture has RecognitionConfidence.Strong
Gesture G = e.Gestures[0];
// if this is ApplicationGesture.Check of RecognitionConfidence.Strong confidence
if (ApplicationGesture.Check == G.Id && RecognitionConfidence.Strong == G.Confidence)
{
InkOverlay mInkOverlay = (InkOverlay)sender;
// assuming here that InkOverlay.AttachedControl property is set.
// This can be set with the .ctor InkOverlay(Control C) or the
// InkOverlay.AttachedControl property can be set later.
using (Graphics GR = mInkOverlay.AttachedControl.CreateGraphics())
{
// get the hot point
Point hotPoint = G.HotPoint;
// convert to pixel coordinates
mInkOverlay.Renderer.InkSpaceToPixel(GR, ref hotPoint);
// draw a small circle
GR.DrawEllipse(Pens.Orange, hotPoint.X - 6, hotPoint.Y - 6, 12, 12);
// cancel the event. This prevents the gesture from disappearing
// and lets you see the small circle and the gesture together
e.Cancel = true;
}
}
}
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