Freigeben über


Ink.HitTest-Methode (Rectangle, Single)

Gibt die innerhalb eines bekannten Rechtecks enthaltene Strokes-Auflistung zurück.

Namespace:  Microsoft.Ink
Assembly:  Microsoft.Ink (in Microsoft.Ink.dll)

Syntax

'Declaration
Public Function HitTest ( _
    selectionRectangle As Rectangle, _
    percentIntersect As Single _
) As Strokes
'Usage
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

Parameter

  • percentIntersect
    Typ: System.Single
    Der Prozentwert, der bestimmt, welche Stroke-Objekte in die Strokes-Auflistung aufgenommen werden. Stroke-Objekte, die das Rechteck schneiden, werden in die Strokes-Auflistung aufgenommen, wenn der Prozentanteil der Punkte dieser Stroke-Objekte, die innerhalb des Rechtsecks liegen, größer oder gleich dem im percentIntersect-Parameter übergebenen Prozentwert ist.

Rückgabewert

Typ: Microsoft.Ink.Strokes
Die Strokes-Auflistung, die im angegebenen Bereich enthalten ist.

Hinweise

Um zu bestimmen, welche Punkte eines bekannten Stroke-Objekts den Trefferüberprüfungsbereich schneiden, rufen Sie die Stroke.GetRectangleIntersections-Methode auf. Diese Methode gibt die Punkte zurück, bei denen das Stroke-Objekt ein bekanntes Rechteck schneidet.

Beispiele

In diesem Beispiel werden alle Stroke-Objekte eines InkOverlay-Objekts, bei denen mindestens 75 % der Punkte innerhalb eines Rechtecks liegen, das durch die obere linken 2000 x 2000 HIMETRIC-Einheiten des Freihandeingabesteuerelements definiert wird, in rot geändert. Das Rechteck wird durch Auswahlpunkte sichtbar gemacht, mit denen ein Stroke-Objekt erstellt wird.

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();

Plattformen

Windows Vista

.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Versionsinformationen

.NET Framework

Unterstützt in: 3.0

Siehe auch

Referenz

Ink-Klasse

Ink-Member

HitTest-Überladung

Microsoft.Ink-Namespace

Strokes

ExtendedProperties