Compartir a través de


Método IStrokeBuilder::BeginStroke (rtscom.h)

Comienza un trazo en un objeto de entrada de lápiz mediante datos de paquete de un objeto RealTimeStylus Class .

Sintaxis

HRESULT BeginStroke(
  [in]      TABLET_CONTEXT_ID tcid,
  [in]      STYLUS_ID         sid,
  [in]      const LONG        *pPacket,
  [in]      ULONG             cPacketProperties,
  [in]      PACKET_PROPERTY   *pPacketProperties,
  [in]      FLOAT             fInkToDeviceScaleX,
  [in]      FLOAT             fInkToDeviceScaleY,
  [in, out] IInkStrokeDisp    **ppIInkStroke
);

Parámetros

[in] tcid

Identificador de contexto de tableta.

[in] sid

Identificador del lápiz óptico.

[in] pPacket

Inicio de los datos del paquete. Es de solo lectura.

[in] cPacketProperties

Recuento de LONG, que es el número de paquetes multiplicados por el número de propiedades, en el búfer pPacketProperties .

[in] pPacketProperties

Búfer que contiene las propiedades del paquete.

[in] fInkToDeviceScaleX

Factor de conversión horizontal, o x, del eje horizontal del espacio de entrada de lápiz a las coordenadas del digitalizador.

[in] fInkToDeviceScaleY

Factor de conversión vertical, o eje Y, para el eje vertical del espacio de entrada de lápiz a las coordenadas del digitalizador.

[in, out] ppIInkStroke

Puntero al nuevo trazo. Este valor puede ser NULL.

Valor devuelto

Para obtener una descripción de los valores devueltos, vea RealTimeStylus Classes and Interfaces (Clases e interfaces de RealTimeStylus).

Comentarios

Se usa junto con los métodos IStrokeBuilder::AppendPackets yIStrokeBuilder::EndStroke Method . IStrokeBuilder::BeginStroke (Método) comienza a crear el trazo. A medida que el movimiento continúa y se reciben paquetes adicionales, el método IStrokeBuilder::AppendPackets Method agrega esos datos de trazo adicionales. Cuando el lápiz de tableta se eleva desde la superficie y no hay más paquetes entrantes, se llama al método IStrokeBuilder::EndStroke Method .

Ejemplos

En el siguiente ejemplo de C++ se muestra la implementación de un método IStylusPlugin::StylusDown Method en un objeto IStylusPlugin Interface . El complemento usa un objeto StrokeBuilder para crear un nuevo trazo de lápiz. Se llama al método IStrokeBuilder::BeginStroke Method desde IStylusPlugin::StylusDown Method para iniciar la construcción de un trazo.

STDMETHODIMP CStrokeBuilderPlugin::StylusDown( 
            /* [in] */ IRealTimeStylus *piRtsSrc,
            /* [in] */ const StylusInfo *pStylusInfo,
            /* [in] */ ULONG cPropCountPerPkt,
            /* [size_is][in] */ LONG *pPacket,
            /* [out][in] */ LONG **ppInOutPkt)
{
	FLOAT fInkToDeviceScaleX;
	FLOAT fInkToDeviceScaleY;
	ULONG cPacketProperties;
	PACKET_PROPERTY* pPacketProperties;

	// Get the info we need to call BeginStroke
	HRESULT hr = piRtsSrc->GetPacketDescriptionData(pStylusInfo->tcid, &fInkToDeviceScaleX, &fInkToDeviceScaleY, 
													&cPacketProperties, &pPacketProperties);

	if (SUCCEEDED(hr))
	{
		// Start creating the stroke
		hr = m_pStrokeBuilder->BeginStroke(pStylusInfo->tcid, pStylusInfo->cid, pPacket, cPropCountPerPkt, 
											pPacketProperties, fInkToDeviceScaleX, fInkToDeviceScaleY, &m_piStroke);
	}
	
	return hr;
}

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP Tablet PC Edition [solo aplicaciones de escritorio]
Servidor mínimo compatible No se admite ninguno
Plataforma de destino Windows
Encabezado rtscom.h
Archivo DLL RTSCom.dll

Consulte también

DynamicRenderer (clase)

IStrokeBuilder

IStrokeBuilder::AppendPackets (Método)

IStrokeBuilder::CreateStroke (Método)

IStrokeBuilder::EndStroke (Método)

StrokeBuilder (clase)