D3DImage.AddDirtyRect(Int32Rect) Método

Definição

Especifica a área do buffer traseiro que mudou.

public:
 void AddDirtyRect(System::Windows::Int32Rect dirtyRect);
[System.Security.SecurityCritical]
public void AddDirtyRect(System.Windows.Int32Rect dirtyRect);
public void AddDirtyRect(System.Windows.Int32Rect dirtyRect);
[<System.Security.SecurityCritical>]
member this.AddDirtyRect : System.Windows.Int32Rect -> unit
member this.AddDirtyRect : System.Windows.Int32Rect -> unit
Public Sub AddDirtyRect (dirtyRect As Int32Rect)

Parâmetros

dirtyRect
Int32Rect

E Int32Rect isso representa a área que mudou.

Atributos

Exceções

O bitmap não foi bloqueado por uma chamada aos Lock() métodos ou.TryLock(Duration)

-ou-

O back buffer não foi atribuído por uma chamada ao SetBackBuffer(D3DResourceType, IntPtr) método.

Uma ou mais das seguintes condições é verdadeira.

dirtyRect.X < 0

dirtyRect.Y < 0

dirtyRect.Width <0 ou dirtyRect.Width>PixelWidthdirtyRect.Height< 0 oudirtyRect.Height>PixelHeight

Exemplos

O exemplo de código seguinte mostra como chamar o AddDirtyRect método para especificar a região alterada no back buffer. Para obter mais informações, consulte Passo a passo: Hospedando conteúdo Direct3D9 no WPF.

d3dimg.Lock();
// Repeatedly calling SetBackBuffer with the same IntPtr is 
// a no-op. There is no performance penalty.
d3dimg.SetBackBuffer(D3DResourceType.IDirect3DSurface9, pSurface);
HRESULT.Check(Render());
d3dimg.AddDirtyRect(new Int32Rect(0, 0, d3dimg.PixelWidth, d3dimg.PixelHeight));
d3dimg.Unlock();

Observações

Chame o AddDirtyRect método para indicar alterações que o seu código fez ao back buffer. Para ser renderizado, a área alterada no buffer traseiro deve ter uma área alterada correspondente no D3DImage.

Chame os SetBackBuffer métodos e Lock antes de chamar o AddDirtyRect método.

Chama o Unlock método para copiar as áreas alteradas para o buffer frontal.

Note

Após algumas chamadas ao AddDirtyRect método, as áreas alteradas são fundidas numa única área. Isto significa que deve ter dados válidos fora das áreas alteradas.

Aplica-se a

Ver também