Метод ID2D1EffectImpl::P repareForRender (d2d1effectauthor.h)
Подготавливает эффект для процесса отрисовки.
Синтаксис
HRESULT PrepareForRender(
D2D1_CHANGE_TYPE changeType
);
Параметры
changeType
Тип: D2D1_CHANGE_TYPE
Указывает тип изменения, ожидаемого эффектом.
Возвращаемое значение
Тип: HRESULT
Если метод завершается успешно, он возвращает S_OK. В случае сбоя возвращается код ошибки HRESULT .
Комментарии
Этот метод вызывается отрисовщиком, когда эффект находится в отрисованном графе эффекта.
Метод будет вызываться:
- Значение , если эффект был инициализирован, но не был нарисован ранее.
- Значение , если свойство эффекта задано с момента последнего вызова draw.
- Если состояние контекста изменилось с момента последнего рисования эффекта.
Большинство эффектов откладывают создание ресурсов или указание топологии до выполнения этого вызова. Они хранят свои свойства и сопоставляют их с конкретным набором методов отрисовки при первом рисовании.
Примеры
Эффект обычно ожидает, пока он не будет отображен, прежде чем прикрепить его текущее состояние и применить его к любым преобразованиям, которые он инкапсулировал.
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;
};
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 8 и обновление платформы для Windows 7 [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2012 и обновление платформы для Windows Server 2008 R2 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | d2d1effectauthor.h |
Библиотека | D2D1.lib |