This documentation is archived and is not being maintained.

IStylusSyncPlugin.Packets Method

Informs the object implementing the IStylusSyncPlugin interface that the stylus is moving on the digitizer surface.

Namespace: Microsoft.StylusInput
Assembly: Microsoft.Ink (in microsoft.ink.dll)

void Packets (
	RealTimeStylus sender,
	PacketsData data
)
void Packets (
	RealTimeStylus sender, 
	PacketsData data
)
function Packets (
	sender : RealTimeStylus, 
	data : PacketsData
)
Not applicable.

Parameters

sender

The RealTimeStylus object that called this method.

data

Information about the stylus movement.

You can modify the packet data by calling the inherited SetData method of the PacketsData object contained in the data parameter.

NoteNote:

An ArgumentExceptionArgumentException exception is thrown by the SetData method if the length of the array in the value parameter is not a multiple of the value of the inherited PacketPropertyCount property.

You can cancel the packets by calling the SetData method with the value parameter set to null (Nothing in Microsoft Visual Basic .NET).

This C# example is excerpted from the RealTimeStylus Plug-in Sample. The example implements a Packets method that draws a small circle in the location of each new packet received.

public void Packets(RealTimeStylus sender,  PacketsData data)
{           
  // For each new packet received, extract the x,y data
  // and draw a small circle around the result.
  for (int i = 0; i < data.Count ; i += data.PacketPropertyCount)
  {
    // Packet data always has x followed by y followed by the rest
    Point point = new Point(data[i], data[i+1]);

    // Since the packet data is in Ink Space coordinates, we need to convert to Pixels...
    point.X = (int)Math.Round((float)point.X * (float)myGraphics.DpiX/2540.0F);
    point.Y = (int)Math.Round((float)point.Y * (float)myGraphics.DpiY/2540.0F);

    // Draw a circle corresponding to the packet
    myGraphics.DrawEllipse(Pens.Green, point.X - 2, point.Y - 2, 4, 4);
  }
}

This Visual Basic .NET example is excerpted from the RealTimeStylus Plug-in Sample. The example implements a Packets method that draws a small circle in the location of each new packet received.

Public Sub Packets(ByVal sender As RealTimeStylus, ByVal data As PacketsData) _
 Implements IStylusSyncPlugin.Packets
    ' For each new packet received, extract the x,y data
    ' and draw a small circle around the result.
    Dim i As Integer
    For i = 0 To data.Count - data.PacketPropertyCount Step data.PacketPropertyCount
        ' Packet data always has x followed by y followed by the rest
        Dim point As New Point(data(i), data((i + 1)))

        ' Since the packet data is in Ink Space coordinates,
        ' we need to convert to Pixels...
        point.X = Math.Round((System.Convert.ToSingle(point.X) * _
              System.Convert.ToSingle(myGraphics.DpiX) / 2540.0F))
        point.Y = Math.Round((System.Convert.ToSingle(point.Y) * _
              System.Convert.ToSingle(myGraphics.DpiY) / 2540.0F))

        ' Draw a circle corresponding to the packet
        myGraphics.DrawEllipse(Pens.Green, point.X - 2, point.Y - 2, 4, 4)
    Next i
End Sub 'Packets

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0
Show: