Stroke.HitTest Methode

Definitie

Geeft als resultaat of de Stroke kruisingen of zich binnen een bepaald gebied bevinden.

Overloads

Name Description
HitTest(Point)

Retourneert een waarde die aangeeft of de huidige Stroke het opgegeven punt doorkruist.

HitTest(IEnumerable<Point>, Int32)

Retourneert een waarde die aangeeft of de huidige Stroke binnen de opgegeven grenzen valt.

HitTest(IEnumerable<Point>, StylusShape)

Retourneert of het opgegeven pad het Stroke gebruik van het opgegeven StylusShapepad doorkruist.

HitTest(Point, Double)

Retourneert een waarde die aangeeft of de huidige Stroke het opgegeven gebied doorkruist.

HitTest(Rect, Int32)

Retourneert een waarde die aangeeft of de Stroke binnen de grenzen van de opgegeven rechthoek valt.

Opmerkingen

U kunt de HitTest methoden gebruiken om te bepalen of een Stroke bepaald punt doorkruist of binnen de opgegeven grenzen valt.

Met de volgende methoden wordt gecontroleerd of de Stroke kruising is uitgevoerd.

Met de volgende methoden wordt gecontroleerd of de Stroke omgeving is omgeven.

HitTest(Point)

Retourneert een waarde die aangeeft of de huidige Stroke het opgegeven punt doorkruist.

public:
 bool HitTest(System::Windows::Point point);
public bool HitTest(System.Windows.Point point);
member this.HitTest : System.Windows.Point -> bool
Public Function HitTest (point As Point) As Boolean

Parameters

point
Point

De Point te bereiken test.

Retouren

trueals point de huidige lijn wordt doorkruist; anders. false

Voorbeelden

In het volgende voorbeeld wordt de kleur van een Stroke bepaald gebied gewijzigd als deze een bepaald gebied doorkruist.

Point myPoint = new Point(100, 100);

if (myStroke.HitTest(myPoint, 10))
{
    myStroke.DrawingAttributes.Color = Colors.Red;
}
Dim myPoint As New System.Windows.Point(100, 100)

If myStroke.HitTest(myPoint, 10) Then
    myStroke.DrawingAttributes.Color = Colors.Red
End If

Opmerkingen

Deze methode gedraagt zich op dezelfde manier als de overbelaste HitTest(Point, Double) methode wanneer diameter dit 1 is.

Van toepassing op

HitTest(IEnumerable<Point>, Int32)

Retourneert een waarde die aangeeft of de huidige Stroke binnen de opgegeven grenzen valt.

public:
 bool HitTest(System::Collections::Generic::IEnumerable<System::Windows::Point> ^ lassoPoints, int percentageWithinLasso);
public bool HitTest(System.Collections.Generic.IEnumerable<System.Windows.Point> lassoPoints, int percentageWithinLasso);
member this.HitTest : seq<System.Windows.Point> * int -> bool
Public Function HitTest (lassoPoints As IEnumerable(Of Point), percentageWithinLasso As Integer) As Boolean

Parameters

lassoPoints
IEnumerable<Point>

Een matrix van het type Point dat de grenzen van het gebied aangeeft dat moet worden getest.

percentageWithinLasso
Int32

Het percentage van de lengte van de Stroke, die moet worden gebruikt lassoPoints om Stroke als treffer te worden beschouwd.

Retouren

true als de huidige lijn binnen de opgegeven grenzen valt; anders false.

Voorbeelden

In het volgende voorbeeld wordt een pennenstreek paars weergegeven als ten minste 80% van de lijn binnen de grenzen van myPoints.

Point[] myPoints = new Point[] {
    new Point(100, 100),
    new Point(200, 100),
    new Point(200, 200),
    new Point(100, 200)};

if (aStroke.HitTest(myPoints, 80))
{
    aStroke.DrawingAttributes.Color = Colors.Purple;
}
Dim myPoints() As System.Windows.Point = _
                      {New System.Windows.Point(100, 100), _
                       New System.Windows.Point(200, 100), _
                       New System.Windows.Point(200, 200), _
                       New System.Windows.Point(100, 200)}

If aStroke.HitTest(myPoints, 80) Then
    aStroke.DrawingAttributes.Color = Colors.Purple
End If

Opmerkingen

De HitTest methode verbindt de eerste en laatste punten om lassoPoints de lasso te maken.

Van toepassing op

HitTest(IEnumerable<Point>, StylusShape)

Retourneert of het opgegeven pad het Stroke gebruik van het opgegeven StylusShapepad doorkruist.

public:
 bool HitTest(System::Collections::Generic::IEnumerable<System::Windows::Point> ^ path, System::Windows::Ink::StylusShape ^ stylusShape);
public bool HitTest(System.Collections.Generic.IEnumerable<System.Windows.Point> path, System.Windows.Ink.StylusShape stylusShape);
member this.HitTest : seq<System.Windows.Point> * System.Windows.Ink.StylusShape -> bool
Public Function HitTest (path As IEnumerable(Of Point), stylusShape As StylusShape) As Boolean

Parameters

path
IEnumerable<Point>

Het pad dat stylusShape volgt voor het testen van treffers.

stylusShape
StylusShape

De vorm waarmee path de test moet worden bereikt.

Retouren

trueals stylusShape de huidige lijn wordt doorkruist; anders. false

Voorbeelden

Met de volgende code wordt een pennenstreek paars weergegeven als de pennenstreek het pad van myPoints.

Point[] myPoints = new Point[] {
    new Point(100, 100),
    new	Point(200, 100),
    new	Point(200, 200),
    new	Point(100, 200)};

EllipseStylusShape myStylus = new EllipseStylusShape(5.0, 5.0, 0.0);

if (aStroke.HitTest(myPoints, myStylus))
{
    aStroke.DrawingAttributes.Color = Colors.Purple;
}
Dim myPoints() As System.Windows.Point = _
                      {New System.Windows.Point(100, 100), _
                       New System.Windows.Point(200, 100), _
                       New System.Windows.Point(200, 200), _
                       New System.Windows.Point(100, 200)}

Dim myStylus As New EllipseStylusShape(5.0, 5.0, 0.0)

If aStroke.HitTest(myPoints, myStylus) Then
    aStroke.DrawingAttributes.Color = Colors.Purple
End If

Opmerkingen

De HitTest methode gebruikt stylusShape om de slag langs eraserPathte testen.

Van toepassing op

HitTest(Point, Double)

Retourneert een waarde die aangeeft of de huidige Stroke het opgegeven gebied doorkruist.

public:
 bool HitTest(System::Windows::Point point, double diameter);
public bool HitTest(System.Windows.Point point, double diameter);
member this.HitTest : System.Windows.Point * double -> bool
Public Function HitTest (point As Point, diameter As Double) As Boolean

Parameters

point
Point

Hiermee Point definieert u het midden van het gebied om de test te bereiken.

diameter
Double

De diameter van het gebied dat moet worden getest.

Retouren

true indien het opgegeven gebied de huidige lijn doorkruist; anders, false.

Voorbeelden

In het volgende voorbeeld wordt de kleur van een Stroke bepaald gebied gewijzigd als deze een bepaald gebied doorkruist.

Point myPoint = new Point(100, 100);

if (myStroke.HitTest(myPoint, 10))
{
    myStroke.DrawingAttributes.Color = Colors.Red;
}
Dim myPoint As New System.Windows.Point(100, 100)

If myStroke.HitTest(myPoint, 10) Then
    myStroke.DrawingAttributes.Color = Colors.Red
End If

Van toepassing op

HitTest(Rect, Int32)

Retourneert een waarde die aangeeft of de Stroke binnen de grenzen van de opgegeven rechthoek valt.

public:
 bool HitTest(System::Windows::Rect bounds, int percentageWithinBounds);
public bool HitTest(System.Windows.Rect bounds, int percentageWithinBounds);
member this.HitTest : System.Windows.Rect * int -> bool
Public Function HitTest (bounds As Rect, percentageWithinBounds As Integer) As Boolean

Parameters

bounds
Rect

Een Rect die de grenzen aangeeft van het gebied dat moet worden getest.

percentageWithinBounds
Int32

Het percentage van de lengte van de Stroke, die moet worden gebruikt percentageWithinBounds om Stroke als treffer te worden beschouwd.

Retouren

true als de huidige lijn binnen de grenzen van bounds; anders ligt false.

Voorbeelden

In het volgende voorbeeld wordt een pennenstreek paars weergegeven als ten minste 80% van de lijn binnen de Rectlijn valt.

Rect rect1 = new Rect(100, 100, 100, 100);

if (aStroke.HitTest(rect1, 80))
{
    aStroke.DrawingAttributes.Color = Colors.Purple;
}
Dim rect1 As New Rect(100, 100, 100, 100)

If aStroke.HitTest(rect1, 80) Then
    aStroke.DrawingAttributes.Color = Colors.Purple
End If

Van toepassing op