Metodo Device.StretchRectangle
Aggiornamento: novembre 2007
Copia il contenuto del rettangolo di origine nel rettangolo di destinazione.
Spazio dei nomi: Microsoft.WindowsMobile.DirectX.Direct3D
Assembly: Microsoft.WindowsMobile.DirectX (in Microsoft.WindowsMobile.DirectX.dll)
Sintassi
'Dichiarazione
Public Sub StretchRectangle ( _
sourceSurface As Surface, _
sourceRectangle As Rectangle, _
destSurface As Surface, _
destRectangle As Rectangle, _
filter As TextureFilter _
)
'Utilizzo
Dim instance As Device
Dim sourceSurface As Surface
Dim sourceRectangle As Rectangle
Dim destSurface As Surface
Dim destRectangle As Rectangle
Dim filter As TextureFilter
instance.StretchRectangle(sourceSurface, _
sourceRectangle, destSurface, destRectangle, _
filter)
public void StretchRectangle(
Surface sourceSurface,
Rectangle sourceRectangle,
Surface destSurface,
Rectangle destRectangle,
TextureFilter filter
)
public:
void StretchRectangle(
Surface^ sourceSurface,
Rectangle sourceRectangle,
Surface^ destSurface,
Rectangle destRectangle,
TextureFilter filter
)
public function StretchRectangle(
sourceSurface : Surface,
sourceRectangle : Rectangle,
destSurface : Surface,
destRectangle : Rectangle,
filter : TextureFilter
)
Parametri
sourceSurface
Tipo: Microsoft.WindowsMobile.DirectX.Direct3D.SurfaceOggetto Surface che rappresenta la superficie di origine.
sourceRectangle
Tipo: System.Drawing.RectangleOggetto Rectangle che rappresenta il rettangolo di origine. Se il valore è nullriferimento null (Nothing in Visual Basic), viene utilizzata l'intera superficie di origine.
destSurface
Tipo: Microsoft.WindowsMobile.DirectX.Direct3D.SurfaceOggetto Surface che rappresenta la superficie di destinazione.
destRectangle
Tipo: System.Drawing.RectangleOggetto Rectangle che rappresenta il rettangolo di destinazione. Se il valore è nullriferimento null (Nothing in Visual Basic), viene utilizzata l'intera superficie di destinazione.
filter
Tipo: Microsoft.WindowsMobile.DirectX.Direct3D.TextureFilterTipo di filtro. I valori consentiti sono Point o Linear. Per ulteriori informazioni, vedere TextureFilter.
Note
Il rettangolo di origine può essere allungato e filtrato tramite la copia. Questo metodo viene spesso utilizzato per modificare le proporzioni di un flusso video.
Se l'operazione dà come risultato l'allungamento o la compattazione, non tutte le combinazioni di superficie sono valide per il metodo StretchRectangle. Altri fattori includono i tipi di superfici interessati e i relativi formati.
Nella tabella riportata di seguito vengono illustrate le combinazioni valide dei formati di destinazione delle superfici:
Formato di origine |
Trama |
Trama RT |
RT |
Piano nascosto |
---|---|---|---|---|
Trama |
No |
Sì |
Sì |
No |
Trama RT |
No |
Sì |
Sì |
No |
RT |
No |
Sì |
Sì |
No |
Piano nascosto |
No |
Sì |
Sì |
Si, ma solo senza allungamento |
Se viene specificato il filtro, il metodo StretchRectangle ha esito negativo a meno che il driver non imposti la proprietà StretchRectangleFilterCaps. Se viene specificato None, il driver sceglie un algoritmo di filtro.
È possibile utilizare superfici di stencil di profondità nelle chiamate al metodo StretchRectangle, a condizione che non si verifichi alcun allungamento o compattazione nella chiamata. Le restrizioni riportate di seguito vengono applicate anche alle superfici DepthStencil quando vengono copiate con una chiamata al metodo StretchRectangle:
Entrambe le superfici devono presentare lo stesso formato senza conversione del formato.
Non sono consentite operazioni di allungamento o compattazione.
È possibile copiare solo l'intera superficie. Le copie dei rettangoli secondari non sono consentite.
Le applicazioni devono utilizzare CopyRects o il metodo UpdateTexture anziché il metodo StretchRectangle per caricare mappe di trama, poiché sono state progettate per utilizzare informazioni interne e tabelle di rettangoli dirt.
L'allungamento tra rettangoli sulla stessa superficie non è supportata. Per verificare l'hardware per la conversione del colore, utilizzare il metodo CheckDeviceFormatConversion di un oggetto Manager poiché l'emulazione software per la conversione non è supportata. Questo metodo indica anche se è supportato l'allungamento tra superfici dello stesso formato. L'allungamento o la compattazione non sono supportate se una delle superfici presenta un formato compresso DXTn. La superficie di origine non deve essere sottoposta a campionamento multiplo.
Autorizzazioni
- Attendibilità totale per il chiamante immediato. Impossibile utilizzare questo membro in codice parzialmente attendibile. Per ulteriori informazioni, vedere Utilizzo di librerie da codice parzialmente attendibile.
Piattaforme
Windows CE, Windows Mobile per Smartphone, Windows Mobile per Pocket PC
.NET Framework e .NET Compact Framework non supportano tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.
Informazioni sulla versione
.NET Compact Framework
Supportato in: 3.5, 2.0