Device.StretchRectangle, méthode
Mise à jour : novembre 2007
Copie le contenu du rectangle source vers le rectangle de destination.
Espace de noms : Microsoft.WindowsMobile.DirectX.Direct3D
Assembly : Microsoft.WindowsMobile.DirectX (dans Microsoft.WindowsMobile.DirectX.dll)
Syntaxe
'Déclaration
Public Sub StretchRectangle ( _
sourceSurface As Surface, _
sourceRectangle As Rectangle, _
destSurface As Surface, _
destRectangle As Rectangle, _
filter As TextureFilter _
)
'Utilisation
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
)
Paramètres
sourceSurface
Type : Microsoft.WindowsMobile.DirectX.Direct3D.SurfaceObjet Surface qui représente la surface source.
sourceRectangle
Type : System.Drawing.RectangleObjet Rectangle qui représente le rectangle source. Si la valeur est nullune référence null (Nothing en Visual Basic), toute la surface source est utilisée.
destSurface
Type : Microsoft.WindowsMobile.DirectX.Direct3D.SurfaceObjet Surface qui représente la surface de destination.
destRectangle
Type : System.Drawing.RectangleObjet Rectangle qui représente le rectangle de destination. Si la valeur est nullune référence null (Nothing en Visual Basic), toute la surface de destination est utilisée.
filter
Type : Microsoft.WindowsMobile.DirectX.Direct3D.TextureFilterFiltrez le type. Les valeurs autorisées sont Point ou Linear. Pour plus d'informations, consultez TextureFilter.
Notes
Le rectangle source peut être étiré et filtré par la copie. Cette méthode est souvent utilisée pour modifier les proportions d'un flux vidéo.
Si l'opération entraîne l'étirement ou le rétrécissement, toutes les combinaisons de surface ne sont pas valides pour StretchRectangle. D'autres facteurs incluent les types de surfaces impliqués et leurs formats.
Le tableau suivant affiche des combinaisons de format de destination valides :
Format source |
Texture |
Texture RT |
RT |
Plaine hors écran |
---|---|---|---|---|
Texture |
Non |
Oui |
Oui |
Non |
Texture RT |
Non |
Oui |
Oui |
Non |
RT |
Non |
Oui |
Oui |
Non |
Plaine hors écran |
Non |
Oui |
Oui |
Oui, mais uniquement sans étirer |
Si le filtrage est spécifié, StretchRectangle échoue sauf si le pilote définit StretchRectangleFilterCaps. Si None est spécifié, le pilote choisit un algorithme de filtrage.
Vous pouvez utiliser des surfaces du stencil de profondeur dans les appels StretchRectangle, à condition qu'aucune opération d'étirement ou de rétrécissement n'ait lieu dans l'appel. Les restrictions suivantes s'appliquent également aux surfaces DepthStencil lors de la copie avec un appel StretchRectangle :
Les surfaces doivent être au même format sans conversion de format.
Aucun étirement ou rétrécissement n'est autorisé.
Seule la surface entière peut être copiée. Les copies de sous-rectangle ne sont pas autorisées.
Les applications doivent utiliser CopyRects ou UpdateTexture au lieu de StretchRectangle pour charger des plans de texture, parce qu'elles ont été conçues pour utiliser des informations internes et des tables du rectangle.
L'étirement entre des rectangles sur la même surface n'est pas pris en charge. Pour tester le matériel pour la conversion des couleurs, utilisez la méthode CheckDeviceFormatConversion d'un Manager puisque l'émulation logicielle pour la conversion n'est pas prise en charge. Cette méthode indique également si l'étirement entre des surfaces du même format est pris en charge, ou non. L'étirement ou le rétrécissement n'est pas pris en charge si l'une ou l'autre des surfaces a un format compressé DXTn. La surface source ne doit pas faire l'objet d'échantillonnage multiple.
Autorisations
- Confiance totale accordée à l'appelant immédiat. Ce membre ne peut pas être utilisé par du code d'un niveau de confiance partiel. Pour plus d'informations, consultez Utilisation de bibliothèques à partir de code d'un niveau de confiance partiel.
Plateformes
Windows CE, Windows Mobile pour Smartphone, Windows Mobile pour Pocket PC
Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.
Informations de version
.NET Compact Framework
Pris en charge dans : 3.5, 2.0