Partage via


IntersectionDetail Énumération

Définition

Fournit des informations sur l’intersection entre les géométries de la GeometryHitTestParameters et le visuel qui a été atteint.

public enum class IntersectionDetail
public enum IntersectionDetail
type IntersectionDetail = 
Public Enum IntersectionDetail
Héritage
IntersectionDetail

Champs

Nom Valeur Description
NotCalculated 0

La IntersectionDetail valeur n’est pas calculée.

Empty 1

Le Geometry paramètre de test de positionnement et le visuel cible, ou la géométrie, ne se croisent pas.

FullyInside 2

Le visuel cible, ou géométrie, est entièrement à l’intérieur du paramètre de test de Geometry positionnement.

FullyContains 3

Le Geometry paramètre de test de positionnement est entièrement contenu dans la limite du visuel ou de la géométrie cible.

Intersects 4

Le Geometry paramètre de test de positionnement et le visuel cible, ou géométrie, se croisent. Cela signifie que les deux éléments se chevauchent, mais aucun élément ne contient l’autre.

Exemples

L’exemple suivant montre comment utiliser la IntersectionDetail propriété de 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

Remarques

L’illustration suivante montre la relation entre la géométrie du test de positionnement (le cercle bleu) et la géométrie visuelle (carré rouge).

Diagramme d’IntersectionDetail utilisé dans le diagramme des tests Intersection entre la géométrie du test de positionnement et la géométrie visuelle pendant les tests de positionnement

S’applique à