Partager via


Ink.HitTest, méthode (Rectangle, Single)

Mise à jour : November 2007

Retourne la collection Strokes contenue dans un Rectangle (page pouvant être en anglais) donné.

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

Syntaxe

'Déclaration
Public Function HitTest ( _
    selectionRectangle As Rectangle, _
    percentIntersect As Single _
) As Strokes
'Utilisation
Dim instance As Ink
Dim selectionRectangle As Rectangle
Dim percentIntersect As Single
Dim returnValue As Strokes

returnValue = instance.HitTest(selectionRectangle, _
    percentIntersect)
public Strokes HitTest(
    Rectangle selectionRectangle,
    float percentIntersect
)
public:
Strokes^ HitTest(
    Rectangle selectionRectangle, 
    float percentIntersect
)
public Strokes HitTest(
    Rectangle selectionRectangle,
    float percentIntersect
)
public function HitTest(
    selectionRectangle : Rectangle, 
    percentIntersect : float
) : Strokes

Paramètres

  • selectionRectangle
    Type : System.Drawing.Rectangle
    Rectangle de sélection, en coordonnées d'espace d'entrée manuscrite.
  • percentIntersect
    Type : System.Single
    Valeur en pourcentage qui détermine quels objets Stroke sont inclus dans la collection Strokes. Les objets Stroke qui coupent le rectangle sont inclus dans la collection Strokes si le pourcentage de points dans les objets Stroke contenus dans le rectangle est supérieur ou égal au pourcentage passé au paramètre percentIntersect.

Valeur de retour

Type : Microsoft.Ink.Strokes
Collection Strokes contenue dans la zone spécifiée.

Notes

Pour déterminer quels points d'un objet Stroke donné coupent la zone de test de positionnement, appelez la méthode Stroke.GetRectangleIntersections, qui retourne les points où un objet Stroke coupe un Rectangle (page pouvant être en anglais) donné.

Exemples

Dans cet exemple, tous les objets Stroke d'un InkOverlay qui ont au moins 75 % de leurs points à l'intérieur d'un rectangle, comme défini par les 2000 x 2000 unités HIMETRIC supérieures gauches du contrôle d'entrée manuscrite, deviennent rouges. On peut rendre visible le rectangle en utilisant les points de sélection pour créer un objet Stroke.

Const RectSideInkUnits As Integer = 2000
' get the control. InkOverlay.AttachedControl must be set
Dim inkControl As Control = mInkOverlay.AttachedControl
' create the rectangle used for the hit test
Dim hitTestRect As Rectangle = New Rectangle(0, 0, RectSideInkUnits, RectSideInkUnits)
' create boundary points in order to show the rectangle by creating a stroke
Dim boundaryPts() As Point = _
    { _
        New Point(RectSideInkUnits, 0), _
        New Point(RectSideInkUnits, RectSideInkUnits), _
        New Point(0, RectSideInkUnits) _
    }

' show the rectangle by creating a stroke
mInkOverlay.Ink.CreateStroke(boundaryPts)
' Find strokes that fall at least 75% within the rectangle
Dim hitStrokes As Strokes = mInkOverlay.Ink.HitTest(hitTestRect, 75.0F)
' change the found strokes to red
hitStrokes.ModifyDrawingAttributes(New DrawingAttributes(Color.Red))
' invalidate the ink control
inkControl.Invalidate()
const int RectSideInkUnits = 2000;
// get the control. InkOverlay.AttachedControl must be set
Control inkControl = mInkOverlay.AttachedControl;
// create the rectangle used for the hit test
Rectangle hitTestRect = new Rectangle(0, 0, RectSideInkUnits, RectSideInkUnits);
// create boundary points in order to show the rectangle by creating a stroke
Point[] boundaryPts = new Point[3] 
    {
        new Point(RectSideInkUnits, 0),
        new Point(RectSideInkUnits, RectSideInkUnits),
        new Point(0, RectSideInkUnits)
    };

// show the rectangle by creating a stroke
mInkOverlay.Ink.CreateStroke(boundaryPts);
// Find strokes that fall at least 75% within the rectangle
Strokes hitStrokes = mInkOverlay.Ink.HitTest(hitTestRect, 75.0f);
// change the found strokes to red
hitStrokes.ModifyDrawingAttributes(new DrawingAttributes(Color.Red));
// invalidate the ink control
inkControl.Invalidate();

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

Ink, classe

Membres Ink

HitTest, surcharge

Microsoft.Ink, espace de noms

Strokes

ExtendedProperties