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
パラメーター
- sourceSurface
型 : Microsoft.WindowsMobile.DirectX.Direct3D.Surface
転送元のサーフェイスを表す Surface オブジェクト。
- sourceRectangle
型 : System.Drawing.Rectangle
転送元の四角形を表す Rectangle オブジェクト。nullnull 参照 (Visual Basic では Nothing) の場合は、転送元サーフェイス全体が使用されます。
- destSurface
型 : Microsoft.WindowsMobile.DirectX.Direct3D.Surface
転送先のサーフェイスを表す Surface オブジェクト。
- destRectangle
型 : System.Drawing.Rectangle
転送先の四角形を表す Rectangle オブジェクト。nullnull 参照 (Visual Basic では Nothing) の場合は、転送先サーフェイス全体が使用されます。
- filter
型 : Microsoft.WindowsMobile.DirectX.Direct3D.TextureFilter
フィルターの種類。使用できる値は、Point または Linear です。詳細については、「TextureFilter」を参照してください。
解説
転送元の四角形は、コピーによって拡大およびフィルター処理できます。このメソッドは、ビデオ ストリームの縦横比を変更する場合などに使用されます。
処理によって拡大または縮小が行われる場合、StretchRectangle では、すべてのサーフェイスの組み合わせが有効なわけではありません。その他の要因としては、サーフェイスの種類や形式などがあります。
有効なサーフェイスの転送先形式の組み合わせを次の表に示します。
転送元形式 |
テクスチャ |
RT テクスチャ |
RT |
単純なオフ スクリーン |
---|---|---|---|---|
テクスチャ |
× |
○ |
○ |
× |
RT テクスチャ |
× |
○ |
○ |
× |
RT |
× |
○ |
○ |
× |
単純なオフ スクリーン |
× |
○ |
○ |
○ (ただし拡大が行われない場合のみ) |
フィルター処理を指定した場合、StretchRectangle は、ドライバーが StretchRectangleFilterCaps を設定しない限り失敗します。None を指定した場合、ドライバーはフィルター処理アルゴリズムを選択します。
StretchRectangle の呼び出しで拡大および縮小が行われない場合には、呼び出しに深度ステンシル サーフェイスを使用できます。DepthStencil の呼び出しによって StretchRectangle サーフェイスをコピーする場合は、サーフェイスに次の制限が適用されます。
両方のサーフェイスは、同じ形式である必要があります (形式変換なし)。
拡大および縮小はできません。
サーフェイス全体のみをコピーできます。サブ四角形のコピーはできません。
アプリケーションでテクスチャ マップを読み込む場合は、CopyRects ではなく UpdateTexture または StretchRectangle を使用する必要があります。これは、これらのメソッドが内部情報とダーティな四角形のテーブルを使用するようにデザインされているためです。
同じサーフェイス上の四角形間での拡大はサポートされていません。変換のソフトウェア エミュレーションはサポートされないため、ハードウェアの色変換をテストするには CheckDeviceFormatConversion の Manager メソッドを使用します。このメソッドは、同じ形式のサーフェイス間の拡大がサポートされているかどうかも示します。拡大と縮小は、いずれかのサーフェイスが 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