Freigeben über


IntersectionDetail Enumeration

Definition

Stellt Informationen über die Schnittmenge der Geometrien in den GeometryHitTestParameters und der visuellen Geometrie bereit, die im Treffertest ermittelt wurde.

public enum class IntersectionDetail
public enum IntersectionDetail
type IntersectionDetail = 
Public Enum IntersectionDetail
Vererbung
IntersectionDetail

Felder

Empty 1

Der Geometry-Treffertestparameter und das visuelle Zielobjekt bzw. die Zielgeometrie bilden keine Schnittmenge.

FullyContains 3

Der Geometry-Treffertestparameter befindet sich vollständig innerhalb der Grenzen des visuellen Zielobjekts bzw. der Zielgeometrie.

FullyInside 2

Das visuelle Zielobjekt bzw. die Zielgeometrie befindet sich vollständig im Geometry-Treffertestparameter.

Intersects 4

Der Geometry-Treffertestparameter und das visuelle Zielobjekt bzw. die Zielgeometrie bilden eine Schnittmenge. Dies bedeutet, dass sich die beiden Elemente überschneiden, kein Element jedoch das jeweils andere Element enthält.

NotCalculated 0

Der IntersectionDetail-Wert wird nicht berechnet.

Beispiele

Im folgenden Beispiel wird gezeigt, wie Sie die IntersectionDetail Eigenschaft von GeometryHitTestResult.

// Return the result of the hit test to the callback.
public HitTestResultBehavior MyHitTestResultCallback(HitTestResult result)
{
    // Retrieve the results of the hit test.
    IntersectionDetail intersectionDetail = ((GeometryHitTestResult)result).IntersectionDetail;

    switch (intersectionDetail)
    {
        case IntersectionDetail.FullyContains:

            // Add the hit test result to the list that will be processed after the enumeration.
            hitResultsList.Add(result.VisualHit);

            return HitTestResultBehavior.Continue;

        case IntersectionDetail.Intersects:

            // Set the behavior to return visuals at all z-order levels.
            return HitTestResultBehavior.Continue;

        case IntersectionDetail.FullyInside:

            // Set the behavior to return visuals at all z-order levels.
            return HitTestResultBehavior.Continue;

        default:
            return HitTestResultBehavior.Stop;
    }
}
' Return the result of the hit test to the callback.
Public Function MyHitTestResultCallback(ByVal result As HitTestResult) As HitTestResultBehavior
    ' Retrieve the results of the hit test.
    Dim intersectionDetail As IntersectionDetail = (CType(result, GeometryHitTestResult)).IntersectionDetail

    Select Case intersectionDetail
        Case IntersectionDetail.FullyContains

            ' Add the hit test result to the list that will be processed after the enumeration.
            hitResultsList.Add(result.VisualHit)

            Return HitTestResultBehavior.Continue

        Case IntersectionDetail.Intersects

            ' Set the behavior to return visuals at all z-order levels.
            Return HitTestResultBehavior.Continue

        Case IntersectionDetail.FullyInside

            ' Set the behavior to return visuals at all z-order levels.
            Return HitTestResultBehavior.Continue

        Case Else
            Return HitTestResultBehavior.Stop
    End Select
End Function

Hinweise

Die folgende Abbildung zeigt die Beziehung zwischen der Treffertestgeometrie (blauem Kreis) und der visuellen Geometrie (dem roten Quadrat).

Diagramm von IntersectionDetail bei Treffertests
Schnittpunkt zwischen Treffertestgeometrie und visueller Geometrie während der Treffertests

Gilt für