다음을 통해 공유


Stroke.HitTest 메서드

정의

Stroke가 특정 영역과 교차하는지 또는 특정 영역 내에 있는지 여부를 반환합니다.

오버로드

HitTest(Point)

현재 Stroke가 지정한 점과 교차하는지 여부를 나타내는 값을 반환합니다.

HitTest(IEnumerable<Point>, Int32)

현재 Stroke가 지정한 범위 내에 있는지 여부를 나타내는 값을 반환합니다.

HitTest(IEnumerable<Point>, StylusShape)

지정한 Stroke를 사용하여 지정한 경로가 StylusShape와 교차하는지 여부를 반환합니다.

HitTest(Point, Double)

현재 Stroke가 지정한 영역과 교차하는지 여부를 나타내는 값을 반환합니다.

HitTest(Rect, Int32)

Stroke가 지정된 직사각형의 경계 내에 있는지 여부를 나타내는 값을 반환합니다.

설명

사용할 수는 HitTest 결정 하는 방법 여부를 Stroke 특정 시점을 교차 하는지 또는 지정 된 범위입니다.

메서드 검사 하는지 여부를 Stroke 와 교차 됩니다.

메서드 검사 하는지 여부를 Stroke 둘러싸입니다.

HitTest(Point)

현재 Stroke가 지정한 점과 교차하는지 여부를 나타내는 값을 반환합니다.

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

매개 변수

point
Point

적중 횟수 테스트에 대한 Point입니다.

반환

Boolean

point가 현재 스트로크와 교차하면 true이고, 그렇지 않으면 false입니다.

예제

다음 예제에서는 색이 달라는 Stroke 특정 영역을 교차할 경우 해당 합니다.

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

설명

이 메서드 오버 로드 된와 마찬가지로 HitTest(Point, Double) 메서드는 diameter 1입니다.

적용 대상

HitTest(IEnumerable<Point>, Int32)

현재 Stroke가 지정한 범위 내에 있는지 여부를 나타내는 값을 반환합니다.

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

매개 변수

lassoPoints
IEnumerable<Point>

적중 테스트를 수행할 영역의 범위를 나타내는 Point 형식의 배열입니다.

percentageWithinLasso
Int32

Stroke가 적중된 것으로 간주되기 위해 lassoPoints 내에 있어야 하는 Stroke의 길이 비율입니다.

반환

Boolean

현재 스트로크가 지정한 범위 내에 있으면 true이고, 그렇지 않으면 false입니다.

예제

다음 예제에서는 스트로크 렌더링 자주색 스트로크의 최소 80%의 범위 내에 있으면 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

설명

합니다 HitTest 메서드는 연결의 첫 번째 지점과 마지막 lassoPoints 올가미를 만들려고 합니다.

적용 대상

HitTest(IEnumerable<Point>, StylusShape)

지정한 Stroke를 사용하여 지정한 경로가 StylusShape와 교차하는지 여부를 반환합니다.

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

매개 변수

path
IEnumerable<Point>

적중 시에 대한 다음 경로 stylusShape 입니다.

stylusShape
StylusShape

적중 테스트에 사용할 path의 모양입니다.

반환

Boolean

stylusShape가 현재 스트로크와 교차하면 true이고, 그렇지 않으면 false입니다.

예제

다음 코드는 스트로크 렌더링 자주색 스트로크의 경로 교차 하는 경우 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

설명

HitTest 메서드 stylusShape 적중에 따라 스트로크를 테스트 eraserPath합니다.

적용 대상

HitTest(Point, Double)

현재 Stroke가 지정한 영역과 교차하는지 여부를 나타내는 값을 반환합니다.

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

매개 변수

point
Point

적중 테스트를 수행할 영역의 가운데를 정의하는 Point입니다.

diameter
Double

적중 테스트를 수행할 영역의 지름입니다.

반환

Boolean

지정한 영역이 현재 스트로크와 교차하면 true이고, 그렇지 않으면 false입니다.

예제

다음 예제에서는 색이 달라는 Stroke 특정 영역을 교차할 경우 해당 합니다.

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

적용 대상

HitTest(Rect, Int32)

Stroke가 지정된 직사각형의 경계 내에 있는지 여부를 나타내는 값을 반환합니다.

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

매개 변수

bounds
Rect

적중 횟수 테스트에 대한 영역 경계를 나타내는 Rect입니다.

percentageWithinBounds
Int32

Stroke가 적중된 것으로 간주되기 위해 percentageWithinBounds 내에 있어야 하는 Stroke의 길이 비율입니다.

반환

Boolean

현재 스트로크가 bounds 범위 내에 있으면 true이고, 그렇지 않으면 false입니다.

예제

다음 예제에서는 스트로크 렌더링 자주색 내에 있으면 스트로크의 최소 80%는 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

적용 대상