Stroke.GetPacketValuesByProperty (Método) (Guid, Int32, Int32)
Actualización: noviembre 2007
Devuelve los datos para una propiedad de paquete especificada para un intervalo de paquetes en el objeto Stroke.
Espacio de nombres: Microsoft.Ink
Ensamblado: Microsoft.Ink (en Microsoft.Ink.dll)
Sintaxis
'Declaración
Public Function GetPacketValuesByProperty ( _
id As Guid, _
index As Integer, _
count As Integer _
) As Integer()
'Uso
Dim instance As Stroke
Dim id As Guid
Dim index As Integer
Dim count As Integer
Dim returnValue As Integer()
returnValue = instance.GetPacketValuesByProperty(id, _
index, count)
public int[] GetPacketValuesByProperty(
Guid id,
int index,
int count
)
public:
array<int>^ GetPacketValuesByProperty(
Guid id,
int index,
int count
)
public int[] GetPacketValuesByProperty(
Guid id,
int index,
int count
)
public function GetPacketValuesByProperty(
id : Guid,
index : int,
count : int
) : int[]
Parámetros
- id
Tipo: System.Guid
Identificador Guid del objeto PacketProperty que se usa para seleccionar qué datos de paquete se van a recuperar.
- index
Tipo: System.Int32
El punto inicial del índice de base cero hasta un paquete dentro del objeto Stroke.
- count
Tipo: System.Int32
Número de puntos que constituyen los datos del trazo.
Valor devuelto
Tipo: array<System.Int32[]
Devuelve una matriz de enteros de 32 bits firmados que especifica el valor del objeto PacketProperty solicitado para cada punto solicitado desde el objeto Stroke.
Comentarios
Puede ser que una propiedad de paquete concreta no esté disponible en un objeto Stroke determinado. Un Tablet PC puede tener más de una tableta para la entrada de datos del usuario. La colección Tablets contiene una lista de todas las tabletas asociada a Tablet PC. Use el método IsPacketPropertySupported para determinar si una propiedad de paquete concreta es compatible con un objeto Tablet específico o con todas las tabletas disponibles. Use, asimismo, las propiedades InkCollector.DesiredPacketDescription, InkOverlay.DesiredPacketDescription o InkPicture.DesiredPacketDescription para controlar qué propiedades de paquete se van a recopilar en los nuevos trazos.
Ejemplos
En este ejemplo, cada objeto Stroke seleccionado de un objeto InkOverlay se modifica de forma que cada punto de la primera mitad del trazo contiene el valor de paquete NormalPressure mínimo permitido.
Con el método GetPacketValuesByProperty, se obtienen los valores del paquete NormalPressure para la primera mitad del objeto Stroke. Los valores se establecen, a continuación, en el mínimo permitido (que se obtiene a través del método GetPacketDescriptionPropertyMetrics) y se aplican de nuevo al trazo mediante el método SetPacketValuesByProperty.
Try
For Each S As Stroke In mInkOverlay.Selection
' get the PacketProperty.NormalPressure metrics for the stroke
Dim metrics As TabletPropertyMetrics = S.GetPacketDescriptionPropertyMetrics(PacketProperty.NormalPressure)
' we want to get half of the NormalPressure values
Dim halfWayPt As Integer = S.PacketCount / 2
' get the NormalPressure values for the first half of the packets
Dim npValues() As Integer = S.GetPacketValuesByProperty(PacketProperty.NormalPressure, 0, halfWayPt)
' set the NormalPressure values to min
For k As Integer = 0 To npValues.Length - 1
npValues(k) = metrics.Minimum
Next
' set the NormalPressure values for the first half of the packets
S.SetPacketValuesByProperty(PacketProperty.NormalPressure, 0, halfWayPt, npValues)
Next
Catch ex As ArgumentException
' This exception will be raised if PacketProperty.NormalPressure is not supported
' This will be the case if creating strokes with a mouse
End Try
try
{
foreach (Stroke S in mInkOverlay.Selection)
{
// get the PacketProperty.NormalPressure metrics for the stroke
TabletPropertyMetrics metrics = S.GetPacketDescriptionPropertyMetrics(PacketProperty.NormalPressure);
// we want to get half of the NormalPressure values
int halfWayPt = S.PacketCount / 2;
// get the NormalPressure values for the first half of the packets
int[] npValues = S.GetPacketValuesByProperty(PacketProperty.NormalPressure, 0, halfWayPt);
// set the NormalPressure values to min
for (int k = 0; k < npValues.Length; k++)
{
npValues[k] = metrics.Minimum;
}
// set the NormalPressure values for the first half of the packets
S.SetPacketValuesByProperty(PacketProperty.NormalPressure, 0, halfWayPt, npValues);
}
}
catch (ArgumentException)
{
// This exception will be raised if PacketProperty.NormalPressure is not supported
// This will be the case if creating strokes with a mouse
}
Plataformas
Windows Vista
.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.
Información de versión
.NET Framework
Compatible con: 3.0
Vea también
Referencia
GetPacketValuesByProperty (Sobrecarga)
Microsoft.Ink (Espacio de nombres)
InkCollector.DesiredPacketDescription
InkOverlay.DesiredPacketDescription
InkPicture.DesiredPacketDescription