Partager via


InkAnalyzerBase.AddStroke, méthode (Int32, array<Int32[], array<Guid[])

Mise à jour : November 2007

Ajoute des données de trait à l'analyseur d'entrée manuscrite pour un trait unique et assigne au trait l'identificateur de culture du thread d'entrée actif.

Espace de noms :  System.Windows.Ink.AnalysisCore
Assembly :  IACore (dans IACore.dll)

Syntaxe

'Déclaration
Public Function AddStroke ( _
    strokeId As Integer, _
    strokePacketData As Integer(), _
    strokePacketDescription As Guid() _
) As ContextNodeBase
'Utilisation
Dim instance As InkAnalyzerBase
Dim strokeId As Integer
Dim strokePacketData As Integer()
Dim strokePacketDescription As Guid()
Dim returnValue As ContextNodeBase

returnValue = instance.AddStroke(strokeId, _
    strokePacketData, strokePacketDescription)
public ContextNodeBase AddStroke(
    int strokeId,
    int[] strokePacketData,
    Guid[] strokePacketDescription
)
public:
ContextNodeBase^ AddStroke(
    int strokeId, 
    array<int>^ strokePacketData, 
    array<Guid>^ strokePacketDescription
)
public ContextNodeBase AddStroke(
    int strokeId,
    int[] strokePacketData,
    Guid[] strokePacketDescription
)
public function AddStroke(
    strokeId : int, 
    strokePacketData : int[], 
    strokePacketDescription : Guid[]
) : ContextNodeBase

Paramètres

  • strokePacketData
    Type : array<System.Int32[]
    Tableau contenant les données de paquet du trait.
  • strokePacketDescription
    Type : array<System.Guid[]
    Tableau contenant les identificateurs de la propriété du paquet.

Valeur de retour

Type : System.Windows.Ink.AnalysisCore.ContextNodeBase
Nœud de contexte auquel l'analyseur d'entrée manuscrite a ajouté le trait.

Notes

Le InkAnalyzerBase ajoute le trait à un ContextNodeBase dont la propriété Type a la valeur UnclassifiedInk.

L'analyseur d'entrée manuscrite assigne l'identificateur de culture du thread d'entrée actif au trait et ajoute le trait au premier nœud d'entrée manuscrite non classifié sous le nœud racine de l'analyseur d'entrée manuscrite qui contient des traits présentant le même identificateur de culture. Si l'analyseur d'entrée manuscrite ne trouve pas de nœud présentant le même identificateur de culture, il crée un ContextNodeBase sous son nœud racine et ajoute le trait au nouveau nœud d'entrée manuscrite non classifié.

strokePacketData contient des données de paquet pour tous les points du trait. strokePacketDescription contient les identificateurs globaux uniques (GUID) qui décrivent les types de données de paquet pour chaque point du trait. Pour obtenir la liste des propriétés de paquet disponibles, consultez la classe PacketProperty.

Cette méthode étend la propriété DirtyRegion à l'union de la valeur actuelle de la région et du cadre englobant du trait ajouté.

Si le InkAnalyzerBase contient déjà un trait présentant le même identificateur, le InkAnalyzerBase lève une exception.

Exemples

Cet exemple définit une méthode qui convertit un Stroke en données de paquet et ajoute les données de trait à un InkAnalyzerBase. La méthode retourne le ContextNodeBase auquel l'analyseur d'entrée manuscrite a ajouté le trait.

''' <summary>
''' Adds a stroke to an InkAnalyzerBase.
''' </summary>
''' <param name="baseInkAnalyzer">
''' The analyzer that receives the stroke.</param>
''' <param name="theStroke">The stroke to add.</param>
''' <returns>The node to which the analyzer added the stroke.</returns>
''' <remarks>
''' This method converts stroke data to packet data for example only.
''' The InkAnalyzerBase is used when your application is handling packet
''' data. If your application uses stroke data from an Ink object, then
''' you would use InkAnalyzer.
''' </remarks>
Public Overloads Shared Function MyAddStroke( _
ByVal baseInkAnalyzer As System.Windows.Ink.AnalysisCore.InkAnalyzerBase, _
ByVal theStroke As Microsoft.Ink.Stroke) _
As System.Windows.Ink.AnalysisCore.ContextNodeBase
    If baseInkAnalyzer Is Nothing Then
        Throw New ArgumentNullException("baseInkAnalyzer")
    End If

    If theStroke Is Nothing Then
        Throw New ArgumentNullException("theStroke")
    End If

    ' Add a single stroke to the InkAnalyzerBase.
    Dim result As System.Windows.Ink.AnalysisCore.ContextNodeBase = _
        baseInkAnalyzer.AddStroke(theStroke.Id, _
            theStroke.GetPacketData(), theStroke.PacketDescription)

    Return result
End Function 'AddStroke
/// <summary>
/// Adds a stroke to an InkAnalyzerBase.
/// </summary>
/// <param name="baseInkAnalyzer">
/// The analyzer that receives the stroke.</param>
/// <param name="theStroke">The stroke to add.</param>
/// <returns>The node to which the analyzer added the stroke.</returns>
/// <remarks>
/// This method converts stroke data to packet data for example only.
/// The InkAnalyzerBase is used when your application is handling packet
/// data. If your application uses stroke data from an Ink object, then
/// you would use InkAnalyzer.
/// </remarks>
public static System.Windows.Ink.AnalysisCore.ContextNodeBase MyAddStroke(
System.Windows.Ink.AnalysisCore.InkAnalyzerBase baseInkAnalyzer,
Microsoft.Ink.Stroke theStroke)
{
    if (null == baseInkAnalyzer)
    {
        throw new ArgumentNullException("baseInkAnalyzer");
    }

    if (null == theStroke)
    {
        throw new ArgumentNullException("theStroke");
    }

    // Add a single stroke to the InkAnalyzerBase.
    System.Windows.Ink.AnalysisCore.ContextNodeBase result = baseInkAnalyzer.AddStroke(
        theStroke.Id, theStroke.GetPacketData(),
        theStroke.PacketDescription);

    return result;
}

Plateformes

Windows Vista, Windows XP SP2, Windows Server 2003

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Informations de version

.NET Framework

Pris en charge dans : 3.0

Voir aussi

Référence

InkAnalyzerBase, classe

Membres InkAnalyzerBase

AddStroke, surcharge

System.Windows.Ink.AnalysisCore, espace de noms

InkAnalyzerBase.AddStrokes

InkAnalyzerBase.RemoveStroke

InkAnalyzerBase.RemoveStrokes