Compartir a través de


Device.StretchRectangle (Método)

Actualización: noviembre 2007

Copia el contenido del rectángulo de origen al rectángulo de destino.

Espacio de nombres:  Microsoft.WindowsMobile.DirectX.Direct3D
Ensamblado:  Microsoft.WindowsMobile.DirectX (en Microsoft.WindowsMobile.DirectX.dll)

Sintaxis

'Declaración
Public Sub StretchRectangle ( _
    sourceSurface As Surface, _
    sourceRectangle As Rectangle, _
    destSurface As Surface, _
    destRectangle As Rectangle, _
    filter As TextureFilter _
)
'Uso
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
)

Parámetros

  • sourceRectangle
    Tipo: System.Drawing.Rectangle
    Objeto Rectangle que representa el rectángulo de origen. Si es nullreferencia null (Nothing en Visual Basic), se utiliza la superficie de origen completa.
  • destRectangle
    Tipo: System.Drawing.Rectangle
    Objeto Rectangle que representa el rectángulo de destino. Si es nullreferencia null (Nothing en Visual Basic), se utiliza la superficie de destino completa.

Comentarios

El rectángulo de origen se puede expandir y filtrar con la copia. Este método se utiliza a menudo para cambiar la relación de aspecto de una secuencia de vídeo.

Si la operación tiene como resultado la expansión o reducción, no todas las combinaciones de superficies son válidas para StretchRectangle. Otros factores son los tipos de superficies implicados y sus formatos.

En la tabla siguiente se muestran las combinaciones de formato de destino de superficie válidas:

Formato de origen

Textura

Textura RT

RT

Llana fuera de pantalla

Textura

No

No

Textura RT

No

No

RT

No

No

Llana fuera de pantalla

No

Sí, pero sólo sin expandir

Si se especifica el filtrado, StretchRectangle genera un error, a menos que el controlador establezca StretchRectangleFilterCaps. Si se especifica None, el controlador elige un algoritmo de filtrado.

Puede utilizar superficies de estarcido de profundidad en las llamadas a StretchRectangle, siempre y cuando no se produzca la expansión o reducción en la llamada. Las restricciones siguientes también se aplican a las superficies DepthStencil cuando se copian con una llamada a StretchRectangle:

  • Ambas superficies deben tener el mismo formato sin conversión de formato.

  • No se permite la expansión ni la reducción.

  • Sólo se puede copiar la superficie completa. No se permiten copias de subrectángulo.

Las aplicaciones deberían utilizar CopyRects o UpdateTexture en lugar de StretchRectangle para cargar los mapas de texturas, porque han sido diseñados para utilizar información interna y tablas de rectángulos no actualizadas.

No se admite la expansión entre rectángulos de una misma superficie. Para comprobar la conversión de color del hardware, utilice el método CheckDeviceFormatConversion de Manager, porque no se admite la emulación de software para la conversión. Este método también indica si se admite la expansión entre superficies del mismo formato. No se admite la expansión o reducción si alguna de las superficies tiene un formato comprimido DXTn. La superficie de origen no debe ser de muestreo múltiple.

Permisos

Plataformas

Windows CE, Windows Mobile para Smartphone, Windows Mobile para Pocket PC

.NET Framework y .NET Compact Framework no admiten todas las versiones de cada plataforma. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Información de versión

.NET Compact Framework

Compatible con: 3.5, 2.0

Vea también

Referencia

Device (Clase)

Device (Miembros)

Microsoft.WindowsMobile.DirectX.Direct3D (Espacio de nombres)