TOP今月刊既刊I/OサポートQ&AWeb I/O通販お問い合わせ
 Q&A > VB2005ユーザーのためのDirect3D9入門 書名検索: 詳細検索...

VB2005ユーザーのためのDirect3D9入門のQ&A

Q&A一覧
Q

PictureBoxの画像をファイルに保存したい

Direct3Dを使って描かれたPictureBoxの画像をファイルに保存する方法が分かりません。

2008年04月09日受付
A
画面を取り込んで保存するのでよければ、次のコードを実行してください。

Private Sub Button1_Click(...)
 'Direct3Dの初期化
 If InitD3d(PictureBox1) = 0 Then Exit Sub

 'カメラの設定
 SetCamera(New Vector3(0, 3, -10), New Vector3(0, 0, 0), New Vector3(0, 1, 0))

 '投影の設定
 SetProjection(PictureBox1.ClientSize.Width / PictureBox1.ClientSize.Height, 20)

 '照明の設定
 SetDirectionalLight(1, 1, 1, -1, -1, 1)
 SetAmbientLight(0.2, 0.2, 0.2)

 '描画マテリアルの設定
 SetMaterials()

 'オブジェクトの作成
 Create3DObject()

 'オブジェクトの描画
 RenderObject()

 'ここからがビットマップに保存
 Dim pt As Point = PictureBox1.PointToScreen(New Point(0, 0))
 Dim sz As Size = PictureBox1.ClientSize
 Dim bm As New Bitmap(sz.Width, sz.Height)
 Dim g As Graphics = System.Drawing.Graphics.FromImage(bm)
 g.CopyFromScreen(pt.X, pt.Y, 0, 0, sz)
 g.Dispose()
 bm.Save("c:temptest.bmp")
 bm.Dispose()
End Sub

最終更新日:2009年09月14日 17時40分01秒
▲このページの上へ
Q

AnimLoadでエラーが出る

Chapter3AnimLoadAnimLoadCustomAnim.vb
を読み込み実行時にエラーが出て実行できません。

2008年04月09日受付
A
DirectX9のバージョンの違いが原因だと思われます。
本書に同梱されているdirectx_apr2007_redist.exeをインストールするか、インターネットで「DirectX End-User Runtimes (November 2007) - 日本語」を検索して、最新版をインストールしてください。

directx_apr2007_redist.exeをインストールする場合は、directx_apr2007_redist.exeを実行して出来たファイルの中のdxsetup.exeを実行してください。

本書を執筆したときの環境はMicrosoft Windows XP + DirectX End-User Runtimes (April 2007)、現在、Micorosft Windows Vista + DirectX End-User Runtimes (November 2007)ですが、AnimLoadは動くようです。
最終更新日:2009年09月14日 17時39分02秒
▲このページの上へ