Método IDCompositionVisual::SetTransform(IDCompositionTransform*) (dcomp.h)
Define a propriedade Transform desse visual como o objeto de transformação 2D especificado.
Sintaxe
HRESULT SetTransform(
[in, optional] IDCompositionTransform *transform
);
Parâmetros
[in, optional] transform
Tipo: IDCompositionTransform*
O objeto de transformação usado para modificar o sistema de coordenadas desse visual. Esse parâmetro pode apontar para uma interface IDCompositionTransform ou uma de suas interfaces derivadas. Este parâmetro pode ser NULL.
Valor retornado
Tipo: HRESULT
Se a função for bem-sucedida, ela retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT. Confira Códigos de erro do DirectComposition para obter uma lista de códigos de erro.
Comentários
Definir a propriedade Transform transforma o sistema de coordenadas de toda a subárvore visual com raiz nesse visual. Se a propriedade Clip desse visual for especificada, o retângulo de clipe também será transformado.
Se a propriedade Transform tiver especificado anteriormente uma matriz de transformação, o objeto de transformação recém-especificado substituirá a matriz de transformação.
Uma transformação especificada pela propriedade Transform é aplicada após as propriedades OffsetX e OffsetY. Em outras palavras, o efeito de definir a propriedade Transform e as propriedades OffsetX e OffsetY é o mesmo que definir apenas a propriedade Transform em um grupo de transformação em que o primeiro membro do grupo é um objeto IDCompositionTranslateTransform que tem os mesmos valores OffsetX e OffsetY. No entanto, você deve usar os métodos IDCompositionVisual::SetOffsetX e SetOffsetY sempre que possível, pois eles são um pouco mais rápidos.
Esse método falhará se a transformação for um ponteiro inválido ou se não tiver sido criada pela mesma interface IDCompositionDevice que criou esse visual. A interface não pode ser uma implementação personalizada; somente interfaces criadas pelo Microsoft DirectComposition podem ser usadas com esse método.
Se o parâmetro de transformação for NULL, o sistema de coordenadas desse visual será transformado apenas por suas propriedades OffsetX e OffsetY. Definir a propriedade Transform como NULL é equivalente a defini-la como um objeto IDCompositionMatrixTransform em que a matriz especificada é a matriz de identidade. No entanto, um aplicativo deve definir a propriedade Transform como NULL sempre que possível porque é um pouco mais rápido.
Se as propriedades OffsetX e OffsetY estiverem definidas como 0 e a propriedade Transform estiver definida como NULL, o sistema de coordenadas do visual será o mesmo que o de seu pai.
Requisitos
Cliente mínimo com suporte | Windows 8 [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2012 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | dcomp.h |
Biblioteca | Dcomp.lib |
DLL | Dcomp.dll |
Confira também
IDCompositionTranslateTransform