Stroke.HitTest Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Retourne si le Stroke croise ou est dans une certaine zone.
Surcharges
HitTest(Point) |
Retourne une valeur qui indique si le Stroke actuel croise le point spécifié. |
HitTest(IEnumerable<Point>, Int32) |
Retourne une valeur qui indique si le Stroke actuel est dans les limites spécifiées. |
HitTest(IEnumerable<Point>, StylusShape) |
Retourne si le chemin d'accès spécifié croise le Stroke à l'aide de la StylusShapespécifiée. |
HitTest(Point, Double) |
Retourne une valeur qui indique si le Stroke actuel croise la zone spécifiée. |
HitTest(Rect, Int32) |
Retourne une valeur qui indique si le Stroke se trouve dans les limites du rectangle spécifié. |
Remarques
Vous pouvez utiliser les HitTest méthodes pour déterminer si un Stroke point se croise ou se trouve dans des limites spécifiées.
Les méthodes suivantes vérifient si l’élément Stroke est croisé.
Les méthodes suivantes vérifient si l’élément Stroke est entouré.
HitTest(Point)
Retourne une valeur qui indique si le Stroke actuel croise le point spécifié.
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
Paramètres
Retours
true
si point
croise le trait actuel ; sinon, false
.
Exemples
L’exemple suivant modifie la couleur d’un Stroke si elle croise une certaine zone.
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
Remarques
Cette méthode se comporte de la même façon que la méthode surchargée HitTest(Point, Double) lorsqu’elle diameter
est 1.
S’applique à
HitTest(IEnumerable<Point>, Int32)
Retourne une valeur qui indique si le Stroke actuel est dans les limites spécifiées.
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
Paramètres
- lassoPoints
- IEnumerable<Point>
Un tableau de type Point qui représente les limites de la zone sur laquelle effectuer un test d'atteinte.
- percentageWithinLasso
- Int32
Pourcentage de la longueur du Stroke qui doit être dans lassoPoints
pour que Stroke soit considéré comme testé.
Retours
true
si le trait actuel se trouve dans les limites spécifiées ; sinon false
.
Exemples
L’exemple suivant affiche un trait violet si au moins 80 % du trait se trouve dans les limites de 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
Remarques
La HitTest méthode connecte les premiers et derniers points pour lassoPoints
créer le lasso.
S’applique à
HitTest(IEnumerable<Point>, StylusShape)
Retourne si le chemin d'accès spécifié croise le Stroke à l'aide de la StylusShapespécifiée.
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
Paramètres
- path
- IEnumerable<Point>
Chemin suivant stylusShape
pour les tests d’accès.
- stylusShape
- StylusShape
Forme du path
avec lequel effectuer le test d'atteinte.
Retours
true
si stylusShape
croise le trait actuel ; sinon, false
.
Exemples
Le code suivant affiche un trait violet si le trait croise le chemin d’accès 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
Remarques
La HitTest méthode utilise stylusShape
pour tester le trait le long eraserPath
.
S’applique à
HitTest(Point, Double)
Retourne une valeur qui indique si le Stroke actuel croise la zone spécifiée.
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
Paramètres
- diameter
- Double
Diamètre de la zone sur laquelle effectuer un test d'atteinte.
Retours
true
si la zone spécifiée croise le trait actuel ; sinon, false
.
Exemples
L’exemple suivant modifie la couleur d’un Stroke si elle croise une certaine zone.
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
S’applique à
HitTest(Rect, Int32)
Retourne une valeur qui indique si le Stroke se trouve dans les limites du rectangle spécifié.
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
Paramètres
- percentageWithinBounds
- Int32
Pourcentage de la longueur du Stroke qui doit être dans percentageWithinBounds
pour que Stroke soit considéré comme testé.
Retours
true
si le trait actuel se trouve dans les limites de bounds
; sinon, false
.
Exemples
L’exemple suivant affiche un trait violet si au moins 80 % du trait se trouve dans le Rect.
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