GestureRecognizer.Recognize(StrokeCollection) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Belirtilen StrokeCollectioniçinde hareketleri arar.
public:
System::Collections::ObjectModel::ReadOnlyCollection<System::Windows::Ink::GestureRecognitionResult ^> ^ Recognize(System::Windows::Ink::StrokeCollection ^ strokes);
[System.Security.SecurityCritical]
public System.Collections.ObjectModel.ReadOnlyCollection<System.Windows.Ink.GestureRecognitionResult> Recognize (System.Windows.Ink.StrokeCollection strokes);
public System.Collections.ObjectModel.ReadOnlyCollection<System.Windows.Ink.GestureRecognitionResult> Recognize (System.Windows.Ink.StrokeCollection strokes);
[<System.Security.SecurityCritical>]
member this.Recognize : System.Windows.Ink.StrokeCollection -> System.Collections.ObjectModel.ReadOnlyCollection<System.Windows.Ink.GestureRecognitionResult>
member this.Recognize : System.Windows.Ink.StrokeCollection -> System.Collections.ObjectModel.ReadOnlyCollection<System.Windows.Ink.GestureRecognitionResult>
Public Function Recognize (strokes As StrokeCollection) As ReadOnlyCollection(Of GestureRecognitionResult)
Parametreler
- strokes
- StrokeCollection
Hareketleri StrokeCollection aramak için.
Döndürülenler
Tanınan uygulama hareketlerini GestureRecognizer içeren tür GestureRecognitionResult dizisi.
- Öznitelikler
Örnekler
Aşağıdaki örnekte, a'nın Stroke bir ScratchOut hareket olup olmadığının nasıl belirleneceği gösterilmektedir.
private bool InterpretScratchoutGesture(Stroke stroke)
{
// Attempt to instantiate a recognizer for scratchout gestures.
ApplicationGesture[] gestures = { ApplicationGesture.ScratchOut };
GestureRecognizer recognizer = new GestureRecognizer(gestures);
if (!recognizer.IsRecognizerAvailable)
return false;
// Determine if the stroke was a scratchout gesture.
StrokeCollection gestureStrokes = new StrokeCollection();
gestureStrokes.Add(stroke);
ReadOnlyCollection<GestureRecognitionResult> results = recognizer.Recognize(gestureStrokes);
if (results.Count == 0)
return false;
// Results are returned sorted in order strongest-to-weakest;
// we need only analyze the first (strongest) result.
if (results[0].ApplicationGesture == ApplicationGesture.ScratchOut &&
results[0].RecognitionConfidence == RecognitionConfidence.Strong)
{
// Use the scratchout stroke to perform hit-testing and
// erase existing strokes, as necessary.
return true;
}
else
{
// Not a gesture: display the stroke normally.
return false;
}
}
Private Function InterpretScratchoutGesture(ByVal stroke As Stroke) As Boolean
' Attempt to instantiate a recognizer for scratchout gestures.
Dim gestures() As ApplicationGesture = {ApplicationGesture.ScratchOut}
Dim recognizer As New GestureRecognizer(gestures)
If Not recognizer.IsRecognizerAvailable Then
Return False
End If
' Determine if the stroke was a scratchout gesture.
Dim gestureStrokes As StrokeCollection = New StrokeCollection()
gestureStrokes.Add(stroke)
Dim results As ReadOnlyCollection(Of GestureRecognitionResult)
results = recognizer.Recognize(gestureStrokes)
If results.Count = 0 Then
Return False
End If
' Results are returned sorted in order strongest-to-weakest;
' we need only analyze the first (strongest) result.
If (results(0).ApplicationGesture = ApplicationGesture.ScratchOut) Then
' Use the scratchout stroke to perform hit-testing and
' erase existing strokes, as necessary.
Return True
Else
' Not a gesture: display the stroke normally.
Return False
End If
End Function
Açıklamalar
yöntemi tarafından Recognize döndürülen dizi özelliğine GestureRecognitionResult.RecognitionConfidence göre sıralanır. Örneğin, Recognize aşağıdaki değerlere sahip bir GestureRecognitionResult dizi döndürebilir:
Dizin oluşturma | ApplicationGesture | RecognitionConfidence |
---|---|---|
0 | Check | Strong |
1 | NoGesture | Intermediate |
2 | Curlicue | Poor |
3 | DoubleCurlicue | Poor |
Başka bir deyişle, onay işaretinin bir onay işareti olma olasılığının Stroke yüksek olduğunu, harekette olma olasılığının Stroke nispeten yüksek olduğunu ve bunun bir curlicue veya çift curlicue olma olasılığının Stroke hiç olmadığı anlamına gelirGestureRecognizer.
Not
yöntemi, Recognize diğer uygulama hareketlerinden daha yüksek RecognitionConfidence olan bir dizi NoGesture döndürebilir. Bu, daha düşük olan bir hareketin Stroke aksine, 'nin bir hareket olmaması olasılığının daha yüksek RecognitionConfidenceolduğu anlamına gelir.