Compartir a través de


Método ID2D1EffectImpl::P repareForRender (d2d1effectauthor.h)

Prepara un efecto para el proceso de representación.

Sintaxis

HRESULT PrepareForRender(
  D2D1_CHANGE_TYPE changeType
);

Parámetros

changeType

Tipo: D2D1_CHANGE_TYPE

Indica el tipo de cambio que debe esperar el efecto.

Valor devuelto

Tipo: HRESULT

Si el método se realiza correctamente, devuelve S_OK. Si se produce un error, devuelve un código de error HRESULT .

Comentarios

El representador llama a este método cuando el efecto está dentro de un gráfico de efectos que se dibuja.

Se llamará al método :

  • Si el efecto se ha inicializado pero no se ha dibujado previamente.
  • Si se ha establecido una propiedad effect desde la última llamada a draw.
  • Si el estado de contexto ha cambiado desde la última vez que se ha dibujado el efecto.
De lo contrario, no se llamará al método . Se llamará a las transformaciones creadas por el efecto para controlar sus rectángulos de entrada y salida para cada llamada a draw.

La mayoría de los efectos aplazan la creación de recursos o la especificación de una topología hasta que se realiza esta llamada. Almacenan sus propiedades y las asignan a un conjunto concreto de técnicas de representación cuando se dibujan por primera vez.

Ejemplos

Normalmente, un efecto espera hasta que se representa antes de ajustar su estado actual y aplicarlo a cualquier transformación que haya encapsulado.

class CMyTransform : public ID2D1DrawTransform
{
public:

    // Transform methods omitted.
    
    HRESULT PrepareForRender(FLOAT radius);
};

class CEffectImplementation : public ID2D1EffectImpl
{
public:

    void SetRadius(FLOAT radius) { _radius = radius; }

    IFACEMETHODIMP PrepareForRender(D2D1_CHANGE_TYPE /*type*/)
    {
        // Send the radius to the transform and ask it to render.
        return _pMyTransform->PrepareForRender(_radius);
    }

private:

    CMyTransform *_pMyTransform;
    FLOAT _radius;
};

Requisitos

Requisito Value
Cliente mínimo compatible Windows 8 y actualización de plataforma para Windows 7 [aplicaciones de escritorio | Aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2012 y actualización de plataforma para Windows Server 2008 R2 [aplicaciones de escritorio | Aplicaciones para UWP]
Plataforma de destino Windows
Encabezado d2d1effectauthor.h
Library D2D1.lib

Consulte también

ID2D1DeviceContext

ID2D1EffectImpl