次の方法で共有


Device.StretchRectangle メソッド

[このドキュメントはプレビュー版であり、後のリリースで変更されることがあります。 空白のトピックは、プレースホルダーとして挿入されています。]

転送元四角形の内容を転送先四角形にコピーします。

名前空間:  Microsoft.WindowsMobile.DirectX.Direct3D
アセンブリ:  Microsoft.WindowsMobile.DirectX (Microsoft.WindowsMobile.DirectX.dll 内)

構文

'宣言
Public Sub StretchRectangle ( _
    sourceSurface As Surface, _
    sourceRectangle As Rectangle, _
    destSurface As Surface, _
    destRectangle As Rectangle, _
    filter As TextureFilter _
)
'使用
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
)
member StretchRectangle : 
        sourceSurface:Surface * 
        sourceRectangle:Rectangle * 
        destSurface:Surface * 
        destRectangle:Rectangle * 
        filter:TextureFilter -> unit 

パラメーター

  • sourceRectangle
    型 : System.Drawing.Rectangle
    転送元の四角形を表す Rectangle オブジェクト。nullnull 参照 (Visual Basic では Nothing) の場合は、転送元サーフェイス全体が使用されます。
  • destRectangle
    型 : System.Drawing.Rectangle
    転送先の四角形を表す Rectangle オブジェクト。nullnull 参照 (Visual Basic では Nothing) の場合は、転送先サーフェイス全体が使用されます。

解説

転送元の四角形は、コピーによって拡大およびフィルター処理できます。このメソッドは、ビデオ ストリームの縦横比を変更する場合などに使用されます。

処理によって拡大または縮小が行われる場合、StretchRectangle では、すべてのサーフェイスの組み合わせが有効なわけではありません。その他の要因としては、サーフェイスの種類や形式などがあります。

有効なサーフェイスの転送先形式の組み合わせを次の表に示します。

転送元形式

テクスチャ

RT テクスチャ

RT

単純なオフ スクリーン

テクスチャ

×

×

RT テクスチャ

×

×

RT

×

×

単純なオフ スクリーン

×

○ (ただし拡大が行われない場合のみ)

フィルター処理を指定した場合、StretchRectangle は、ドライバーが StretchRectangleFilterCaps を設定しない限り失敗します。None を指定した場合、ドライバーはフィルター処理アルゴリズムを選択します。

StretchRectangle の呼び出しで拡大および縮小が行われない場合には、呼び出しに深度ステンシル サーフェイスを使用できます。DepthStencil の呼び出しによって StretchRectangle サーフェイスをコピーする場合は、サーフェイスに次の制限が適用されます。

  • 両方のサーフェイスは、同じ形式である必要があります (形式変換なし)。

  • 拡大および縮小はできません。

  • サーフェイス全体のみをコピーできます。サブ四角形のコピーはできません。

アプリケーションでテクスチャ マップを読み込む場合は、CopyRects ではなく UpdateTexture または StretchRectangle を使用する必要があります。これは、これらのメソッドが内部情報とダーティな四角形のテーブルを使用するようにデザインされているためです。

同じサーフェイス上の四角形間での拡大はサポートされていません。変換のソフトウェア エミュレーションはサポートされないため、ハードウェアの色変換をテストするには CheckDeviceFormatConversionManager メソッドを使用します。このメソッドは、同じ形式のサーフェイス間の拡大がサポートされているかどうかも示します。拡大と縮小は、いずれかのサーフェイスが DXTn 圧縮形式である場合にはサポートされません。転送元のサーフェイスは、マルチサンプル処理しないでください。

.NET Framework セキュリティ

プラットフォーム

Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC

.NET Framework および .NET Compact Framework では、各プラットフォームのすべてのバージョンはサポートしていません。 サポートされているバージョンについては、「.NET フレームワークのシステム要件」を参照してください。

バージョン情報

.NET Compact Framework

サポート対象 : 3.5、2.0

参照

参照

Device クラス

Device メンバー

Microsoft.WindowsMobile.DirectX.Direct3D 名前空間