- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ID3DXSprite::Drawメソッドに関しての質問です。)
ID3DXSprite::Drawメソッドの描画範囲指定について
このQ&Aのポイント
- ID3DXSprite::Drawメソッドの第2引数であるRECT構造体について説明します。
- 描画範囲を指定するためにはRECT構造体の領域を正しく指定する必要があります。
- RECT構造体のtop、leftは切り取り位置、right、bottomは描画サイズを指定するべきです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
.NETのSystem::Drawing::Regtangle関係の動作を見ると System::Drawing::Regtangle rect; rect.Right = rect.Left + rect.Width; rect.Bottom = rect.Top + rect.Height; で値が返されます。 これは他のRECT構造体等でも同じだと考えられるので、 rightやbottomは矩形内の右端・下端ではなく、それぞれ隣接する領域との境界点を指しているものと考えられます。 したがって、800×600のサイズの領域を指定する場合は (0,0)(800,600) と指定するのが正しいのでしょう。
お礼
ご回答、感謝です。 .NETのRectangle構造体ではなるほど確かに、RightとBottomの定義が Left + Width となっていますね。 これならば合点がいきます。 ありがとうございました。 しかし…C/C++のWin32APIのRECT構造体にはwidthもheightも 含まれないし、どこで調べても right … 右下x座標 bottom … 右下y座標 と統一さていますね…。 こういうのを見ると.NETははっきりしていていいですね。