IntersectionDetail Enumeration
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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
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).
Schnittpunkt zwischen Treffertestgeometrie und visueller Geometrie während der Treffertests