1 名前:デフォルトの名無しさん [04/07/03 08:49] VB.NETの質問全般です 過去スレ VB.NET質問スレ (Part5) pc5.2ch.net/test/read.cgi/tech/1078134703/ VB.NET質問スレ (Part4) pc2.2ch.net/test/read.cgi/tech/1065269043/ 【老若】VB.net質問スレ【男女】 (Part3) pc2.2ch.net/test/read.cgi/tech/1056281084/ 【老若】VB.net質問スレ【男女】 (Part2) pc2.2ch.net/tech/kako/1043/10436/1043629429.html 【老若】VB.net質問スレ【男女】 pc2.2ch.net/tech/kako/1025/10258/1025848458.html
237 名前:234 mailto:sage [04/07/25 04:05] 分からんようなんで、VB.NETに直してみた。 Private Sub ToolBar1_ButtonClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ToolBarButtonClickEventArgs) Handles ToolBar1.ButtonClick If e.Button Is Me.GoBackButton Then Me.AxWebBrowser1.GoBack() ElseIf e.Button Is Me.GoForwardButton Then Me.AxWebBrowser1.GoForward() End If End Sub Private Sub AxWebBrowser1_CommandStateChange(ByVal sender As System.Object, ByVal e As AxSHDocVw.DWebBrowserEvents2_CommandStateChangeEvent) Handles AxWebBrowser1.CommandStateChange If e.command = SHDocVw.CommandStateChangeConstants.CSC_NAVIGATEBACK Then Me.GoBackButton.Enabled = e.enable ElseIf e.command = SHDocVw.CommandStateChangeConstants.CSC_NAVIGATEFORWARD Then Me.GoForwardButton.Enabled = e.enable End If End Sub 初めてVB系書いたんで、変なとこがあったら無視してくれ。 GoBackButtonとGoForwardButtonは、コンストラクタでEnableをFalseにしとく。
238 名前:デフォルトの名無しさん [04/07/25 12:18] >>237 このとおりにやってみました。 そしたら戻れないようになりました!ありがとうございます! ですが、戻るボタンを押しても戻りません。 Me.AxWebBrowser1.GoBack() を AxWebBrowser1.GoBack() にしても駄目でした…
239 名前:デフォルトの名無しさん mailto:sage [04/07/25 12:27] >>238 .NET 1.1だよね? うちでは動作するんで、ソースさらすよ。 www.asahi-net.or.jp/~ec6k-mtmr/VBnet_BrowserTest.zip
240 名前:eko [04/07/25 12:43] 質問です。 現在、スプレッドシートを自作をしているのですが それをフォーム1に貼り付けて、右クリックしてコンテキトにデザイナと 言うメニューを追加して、選択するとフォーム2を立ち上げて (ここまでは何とかできました・・。) そのフォーム2からフォーム1のデザイン(プロパティ)を変更する方法が 判りません。 ちなみにスプレッドはpaintで描画してます。 拙い説明ですが、ご存知の方居ないでしょうか?? よろしくお願いします。
241 名前:デフォルトの名無しさん [04/07/25 16:38]
242 名前:デフォルトの名無しさん [04/07/25 16:49] ヘ_ヘ ミ・・ ミ ということにしたいのですね :) ( ° )〜
243 名前:233 mailto:sage [04/07/25 16:50] スルーかよ・・・
244 名前:デフォルトの名無しさん mailto:sage [04/07/25 17:36] >>243 なんだ?つっこんで欲しいのか?
245 名前:デフォルトの名無しさん [04/07/25 21:45] >>239 何でなんですかね。おかしいところは無かった様な気がするのですが。 でも、ほかの事をして何とかなりました。 いろいろありがとうございました!!!
246 名前:デフォルトの名無しさん [04/07/25 22:10] Textboxコントロールの、 Textプロパティにて、 その桁数をあらわすにはどうすればいいでしょう? 例えば、TextBox1というテキストボックスの値(MAX10桁)で、 5桁だけ入力されていたらなにか処理をする場合、 If TextBox1.Text=(5桁)Then 【処理】 End If 教えてください。お願いします。
247 名前:デフォルトの名無しさん mailto:sage [04/07/25 22:18] Lengthだっけかな。ってかマニュアル見ろ。
248 名前:デフォルトの名無しさん mailto:sage [04/07/25 22:46] >>246 普通に、Len() で OK。
249 名前:デフォルトの名無しさん mailto:sage [04/07/25 22:47] 個人的にLenはお奨めしない。ま、別にいいんだけどね。
250 名前:デフォルトの名無しさん [04/07/25 23:58] またなんですが、 WebBrowserで読み込みを中止するにはどうしたらいいのでしょうか?
251 名前:デフォルトの名無しさん mailto:sage [04/07/26 00:15] >>250 Me.AxWebBrowser1.Stop() のことなのか?
252 名前:デフォルトの名無しさん [04/07/26 00:22] >>251 それです、それ! ありがとうございました!!
253 名前:デフォルトの名無しさん mailto:sage [04/07/26 00:30] 分からん部分はまとめて書いてくれ。 なんか多そうだし。
254 名前:↑ mailto:sage [04/07/26 00:45] 嫌味とか冷やかしで言ってるワケじゃないので。
255 名前:デフォルトの名無しさん mailto:sage [04/07/26 09:20] >>240 俺はデザイナフォームに一時ファイル名を渡してやってるよ。 デザイナ起動時に対象のコントロールの内容を一時ファイルに保存してデザイナ側 で読み込み、変更を反映する場合は、逆にデザイナのコントロールの内容を一時ファイル に保存するってな感じで。 あと、変更の反映するかの確認が必要なければ、参照渡しのコントロールを、デザイナに セットすれば完全な同期がとれると思う。 はずしてたらスマソ。
256 名前:デフォルトの名無しさん [04/07/26 10:24] >>254 じゃあ、お言葉に甘えて… WebBrowserで新しいウィンドウが出てくるとそのページはIEで開かれちゃうじゃないですか。 そのページを自作ブラウザで開かせるのはどうしたらいいのですか?
257 名前:デフォルトの名無しさん mailto:sage [04/07/26 11:49] >>256 こんな感じで。 Private Sub AxWebBrowser1_NewWindow(ByVal sender As System.Object, ByVal e As AxSHDocVw.DWebBrowserEvents2_NewWindow2Event) Handles AxWebBrowser1.NewWindow2 Dim form2 As New Form1 e.ppDisp = form2.AxWebBrowser1.Application form2.Show() End Sub
258 名前:デフォルトの名無しさん [04/07/26 12:54] 質問です。 メモ帳を作成したのですが、 テキストファイルからプログラムを実行した際に、 テキストファイルを読み込む処理の仕方が分かりません。 プログラムをexeから実行したのかファイルから実行したのか判別する 方法は無いのでしょうか。
259 名前:デフォルトの名無しさん mailto:sage [04/07/26 13:13] >>258 質問の意味がいまいち分からないが、 Command関数を調べると、いいかも知れんね。
260 名前:258 mailto:sage [04/07/26 14:13] >>259 サンクス!
261 名前:デフォルトの名無しさん [04/07/26 15:44] >>257 本当に助かりました! ありがとうございました!!!!!!!
262 名前:只今勉強中 mailto:sage [04/07/26 16:36] Public Sub New(ByVal idcarF1 As Integer) MyBase.New() InitializeComponent() idcarF2 = idcarF1 Dim filterIdcarF2 As integer 'Dim filterIdcarF3 As integer filterIdcarF2 = idcarF2 'filterIdcarF3 = 5 UpdateDatabase() 'SQL文 SqlDataAdapter1.SelectCommand.CommandText = "SELECT * FROM excol_data " _ & "WHERE car_id LIKE '" & filterIdcarF2 & "'" 'データセットを初期化して、データーアダプターからデーターを読み込む DsExcol1.Clear() SqlDataAdapter1.Fill(DsExcol1) End Sub ウィンドウを開くと同時にfilterIdcarF2を使って、データーを絞り込むという作業を作りました。さらに ”filterIdcarF3 = 5"で"excol_cd"の値が"5"のものを絞り込みたいのですが、SQL文の所の書き方 をどなたか教えていただけないでしょうか?
263 名前:デフォルトの名無しさん mailto:sage [04/07/26 17:34] excol_cd の型は?それがないと正確に答えられない。 たぶんSQLスレ行けって言われると思うけど。
264 名前:デフォルトの名無しさん mailto:sage [04/07/26 17:57] >>262 F2で絞り込んだものをさらにF3で絞り込むのか F2とF3を同時に発行して絞り込むのか あとInteger型のものに対してLike(あいまい)で検索かけてるけど これはこれでいいの?
265 名前:デフォルトの名無しさん mailto:sage [04/07/26 18:24] >>264 car_id が Integer型ってどうして分かるの?
266 名前:262 mailto:sage [04/07/26 18:39] すいません、もう右も左もわかんなくて、本を引き引きやってる状態で・・・。 excol_cdもcar_idも整数型です。 あと、F2で絞り込んだものをさらにF3で絞り込みたいのです。自動車の種類別 のコードがF2で、外装の色がF3で、この二つで絞り込んで、内装の色を検索し たいので・・・。 Likeがあいまい検索だというのは、いまスレを見て始めて知ったので外してみたら、 SqlDataAdapter1.Fill(DsExcol1)の行で止まってしまい、LIKEの代わりを今探して SQLのサイトとニラメッコしています。
267 名前:262 mailto:sage [04/07/26 19:13] SqlDataAdapter1.SelectCommand.CommandText = "SELECT * FROM excol_data WHERE car_id = 18" これだ18番のcar_idを持つものが表示されるのですが SqlDataAdapter1.SelectCommand.CommandText = "SELECT * FROM excol_data WHERE car_id = filterIdcarF2" だと動いてくれないようです・・・。なにか書きようがあるのでしょうか?
268 名前:デフォルトの名無しさん mailto:sage [04/07/26 19:58] >>267 困ってるのはわかるが、落ち着いて VB の入門書と SQL の入門書を読んだ方が 結局は早いと思うよ。
269 名前:デフォルトの名無しさん mailto:sage [04/07/26 21:50] SqlDataAdapter1.SelectCommand.CommandText = "SELECT * FROM excol_data WHERE car_id = " + filterIdcarF2 + " and car_id = " + filterIdcarF3 + " and excol_cd = 5"
270 名前:デフォルトの名無しさん mailto:sage [04/07/26 22:52] VBAって次に VBA.NET になるんですかね。
271 名前:デフォルトの名無しさん mailto:sage [04/07/27 00:42] String の配列に入っているテキストデータを TextBox で編集しようと思って, Dim List(200 ) As String で, TextBox1.Text = "" For a=0 To List.GetUpperBound(0) TextBox1.text &= List(a) & vbCrLf Next のようにしましたが,編集後のテキストデータを再び Stringの配列に 戻すところでつまりました. このような,何かのプログラム内での プチエディタ なんかは, どういう風に実現するのが良いのでしょうか?
272 名前:デフォルトの名無しさん mailto:sage [04/07/27 00:58] >>271 配列をそのままTextBox.Linesプロパティに入れて、編集後にTextBox.Linesをそのまま配列に戻すのは駄目なん? 的外れだったらスマソ。
273 名前:デフォルトの名無しさん mailto:sage [04/07/27 01:22] >>272 おおっ. そんなものがあったのか. ご教授ありがとうございました. テキストデータの行数がいろいろ変わるので, やっぱり For文 で回したほうがいいみたいでした. とにかく解決.ありがとうございました.
274 名前:デフォルトの名無しさん mailto:sage [04/07/27 13:35] >>272 さんのおかげで少し進んだのですが,,, 今度は,TextBoxのカーソル位置を表示してみようと思いまして,,で, Cur = TextBox1.SelectionStart If Cur <= 0 Then y = 1 : x = 1 Else c = 0 : y = 0 Do x = Cur - c c += TextBox1.Lines(y).Length + 2 If Cur < c Then Exit Do y += 1 Loop For xx = x - 1 To 0 Step -1 If AscW(TextBox1.Lines(y).Substring(xx, 1)) >= 256 Then x += 1 Next y += 1 : x += 1 End If Label1.Text = y & "行 " & x & "桁" こんなんになってしまったのですが,これだと 各行の文字数を先頭から 足して来たり,各文字が全角かどうか一文字ずつ調べたりしてて, TextBox の文字数が多くなると遅そうですよね. 他にスマートな方法があれば教えていただきたいのです.
275 名前:デフォルトの名無しさん [04/07/27 13:45] picture clip controlは.NETには入ってないのでしょうか?
276 名前:216 [04/07/27 16:42] >>217 ヒントありがとうございます キーフック自体わからず調べながらやってみたのですがなかなかうまくいきません。 SetWindowsHookExtというAPIでキーボードのメッセージを捕捉できるところまで行ったのですが 次に自分でPostMessageで別のキー入力を起こそうと思っているのですがここがダメです。 今フォームにテキストボックスが1コはっつけてやってみています Function KeyBoardProc(ByVal nCode As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer If nCode < 0 Or nCode = 3 Then Return CallNextHookEx(m_hHook, nCode, wParam, lParam) End If Dim ret As Integer Dim iMsg As Integer If wParam = CInt(Keys.A) Then If lParam And &H80000000 Then iMsg = WM_KEYUP Else iMsg = WM_KEYDOWN End If wParam = Keys.E PostMessage(TextBox1.Handle.ToInt32, iMsg, wParam, lParam) CallNextHookEx(m_hHook, nCode, wParam, lParam) Return 1 End If End Function TextBox1のIMEモードはひらがなにしてあります。 aのキーを打つとeがテキストに入るのですがほんとは「え」と入ってIMEで変換できる状態(えの下に点線の下線)になって欲しいのです。 的外れと思いつつImmGetContextの返値をPostMessageの第一引数にしてみましたがさっぱりでした。 何がいけないのか教えてください。
277 名前:216 mailto:sage [04/07/27 16:44] >>276 ヒントを頂いたのは >>217 ではなく >>218 でした というか217は自分でした・・・
278 名前:デフォルトの名無しさん mailto:sage [04/07/27 16:54] >>274 Win32API使ってもOKなら、user32.dllのGetCaretPosでいける。 do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1003826049&rm=10 ここの>>32 にC#版がある。
279 名前:デフォルトの名無しさん mailto:sage [04/07/27 20:32] do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1003826049&res=32&fi=no
280 名前:デフォルトの名無しさん mailto:sage [04/07/27 21:28] >>278 >>279 C# がわからないのでいろいろ苦労しました. いや,C# の問題じゃなくて,Win32API ってやつの方かな. ヘルプとかいろいろ調べてやっとできました. Win32API ってのは初めての経験なもので... Declare Function SendMessage Lib "user32" Alias "SendMessageA" _ (ByVal hWnd As IntPtr, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer ってのを作っといて, y = SendMessage(TextBox1.Handle, &HC9, -1, 0) x = TextBox1.SelectionStart - SendMessage(TextBox1.Handle, &HBB, y, 0) For xx = x - 1 To 0 Step -1 If AscW(TextBox1.Lines(y).Substring(xx, 1)) >= 256 Then x += 1 Next y += 1 : x += 1 Label1.Text = y & "行 " & x & "桁" って感じでできたみたい. 全角文字のカウントは残りましたが,だいぶ速くなりました. どうもありがとうございました.
281 名前:デフォルトの名無しさん [04/07/27 23:34] ちと教えてください。 CrystalReport に Textオブジェクト を作って、そこにモジュールレベル変数 (String型)の内容を埋め込むには、どうしたら良いでしょう? Accessのレポートなら作ったことあるんですが、 CrystalReport はちょっと勝手が違うん困ってます。 お願いします。
282 名前:デフォルトの名無しさん mailto:sage [04/07/27 23:51] >>281 データソースはDB? それとも実行時に任意に与える数値?
283 名前:281 [04/07/28 00:16] >>282 レポートそのものは、AccessDBからフィールドを引っ張ってますが、 表題の部分に、任意の文字列を入れたいのです。 別フォームでその文字列を変数に格納して、レポートに表示したい という訳です。
284 名前:デフォルトの名無しさん mailto:sage [04/07/28 00:42] 標準入力・出力するコマンドラインで動くアプリケーションがあるんだけど、 それとVB.NETでやりとりすることできるかな? (ひらたく言えばVB.NETってパイプ使える?)
285 名前:デフォルトの名無しさん [04/07/28 00:49] 標準入出力とのやりとりならできる。
286 名前:デフォルトの名無しさん mailto:sage [04/07/28 01:10] >>285 そうですか。できれば方法も教えてもらえると助かるのですが。 「〜〜というクラスを使え」とか・・・
287 名前:デフォルトの名無しさん mailto:sage [04/07/28 01:11] ヘルプで検索すれば出ると思うが… ProcessクラスとかProcessStartInfoとか参照。
288 名前:デフォルトの名無しさん mailto:sage [04/07/28 01:13] >>287 ありがとうございます。 そこまで教えてもらえればあとはググるなりMSDN使うなりしてなんとかしてきます。
289 名前:デフォルトの名無しさん mailto:sage [04/07/28 01:59] >>287 解決しました。ありがとうございます
290 名前:デフォルトの名無しさん mailto:sage [04/07/28 02:30] >>281 スマン 遅くなりマスタ 表題って言うことは1枚目のレポートヘッダと解釈していいのかね? 仮にSection1にText1というテキストボックスがあったとして Dim cr As New CrystalReport1 Dim t As CrystalDecisions.CrystalReports.Engine.TextObject t = CType(cr.Section1.ReportObjects.Item("Text1"), CrystalDecisions.CrystalReports.Engine.TextObject) t.Text = "123" cr.ExportToDisk(CrystalDecisions.[Shared].ExportFormatType.PortableDocFormat, "c:\123.pdf") '結果を出力 パラメータフィールドを使う方法とか色々やり方はあると思うので 自分はまるまるXMLから取得する方法でやってます
291 名前:デフォルトの名無しさん mailto:sage [04/07/28 13:44] FlexGrid.Netを使ってるのですが ある日を境に デザイン時は最新バージョン 実行時は古いバージョン をロードしてしまいます VSの再インストールやFlexGridの最インスコなどいろいろやってみたんですが・・・ binフォルダ内と標準インストール先のフォルダには最新バージョンの 2.1.20032.135 が 実行時にはなぜか一つ前の 2.1.20032.124 が読み込まれています
292 名前:デフォルトの名無しさん mailto:sage [04/07/28 14:21] Windowsアプリケーションから、 任意のsqlスクリプト(ファイル名.sql)を読み込んで 実行させることって出来ますか?
293 名前:291 mailto:sage [04/07/28 16:05] C:\WINNT\ASSEMBLY の情報を書き換えたらうまくいきました
294 名前:デフォルトの名無しさん [04/07/29 17:20] VB.NETで他フォームを参照するにはどうすればよいのでしょうか? 例えば、form1とform2があったとき、 form1からform2のコントロールを直接取得したいのです。 BorlandC++のときは、実行中のフォームのインスタンスを参照できた のですが、VB.NETではそれが見あたりません・・・ よいアイディアがありましたら教えて頂けると 大変助かります。よろしくお願いいたします。
295 名前:デフォルトの名無しさん [04/07/29 17:47] >>294 Form1の中に、 Form2 form2 = new Form2(); form2.hoge = "Hage"; って感じでどうですか?
296 名前:デフォルトの名無しさん mailto:sage [04/07/29 17:49] 上のほうでVB.NETでブラウザ作ってた人はどうなったんだろう? なにげに気になってたんだがw
297 名前:デフォルトの名無しさん [04/07/29 18:22] どこかにVB.NET(2003)を使って、シリアルポートからデータを受信して表示するプログラムの ソースが公開されていませんでしょうか? CreateFile とか ReadFile とかのAPIを使うっていうのはわかっているのですが、 公開されているのを見ると Public Declare Function WriteFile Lib "kernel32" Alias "WriteFile" _ (ByVal hFile As Integer, lpBuffer As Any, _ とか書いてあって(As AnyはVB.NETでは使えない) そのままだと使えないんです。 VB6のMSCommを使えばいいのかもしれませんが、APIを使いたいのです。
298 名前:デフォルトの名無しさん mailto:sage [04/07/29 18:27] >>297 なぜVBにこだわる?
299 名前:デフォルトの名無しさん [04/07/29 18:31] >>298 つっか、APIたたくならC#でもVBでもC++でも答えは似たようなもんでしょ。 あと、VBが一番安いんだっけか?
300 名前:デフォルトの名無しさん [04/07/29 18:43] >>297 その程度のことでいちいち人に聞いてるレベルじゃ、 まず間違いなくファイルI/O系のAPI使いこなすなんて無理だと思う。 ほかのスレでこんなの見つけたけど、これなんか使えるのでは? www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=b06e30f9-1301-4cc6-ac14-dfe325097c69 >>294 久々に「別フォームの……」キター
301 名前:デフォルトの名無しさん mailto:sage [04/07/29 18:45] As Any って As Object で代用できなかったっけ?
302 名前:デフォルトの名無しさん mailto:sage [04/07/29 19:54] どこかにVB.netのゲームサンプルがある場所ってありますでしょうか?
303 名前:294 mailto:sage [04/07/30 00:48] >>295 ありがとうございます。 でもそれだと実行中のフォームじゃなくなってしまうので ダメなんですよね・・・
304 名前:デフォルトの名無しさん mailto:sage [04/07/30 01:34] >>303 インスタンスの扱いが理解できてるなら、Form2のインスタンス作成時に 参照をとっておけばどうにでもなることくらい分かりそうなもんだが…
305 名前:デフォルトの名無しさん mailto:sage [04/07/30 02:07] Form2ってどの段階で表示(生成)されるの? もしかして別EXE?
306 名前:デフォルトの名無しさん mailto:sage [04/07/31 00:04] >>302 難しいなぁ。どんなゲームがいいんだ?
307 名前:デフォルトの名無しさん mailto:sage [04/07/31 03:51] フォームロードイヴェントのときにそのアプリのプロセスIDを取得するのはどうやるのでしょうか?
308 名前:デフォルトの名無しさん mailto:sage [04/07/31 04:59] Velocityのようなテンプレートエンジンってないの? フリーの。
309 名前:デフォルトの名無しさん mailto:sage [04/07/31 08:47] >>307 フォームロードのときというのに深い意味があるのか? ただ単にプロセスIDのとり方が分からんだけとか?
310 名前:デフォルトの名無しさん [04/07/31 13:27] Math.Cos(90 / 180 * 3.1415) を実行すると 4.63267948799578E-05 という数値になります。 0または0に近い数値にしたいのですが、どうすればいいのでしょうか? 90の部分は0〜360度の中で変動、0度=1、90度=0、180度=-1、270度=0という結果を出したいのですが・・。 同様にMath.Sinでも変な数値にorz
311 名前:デフォルトの名無しさん mailto:sage [04/07/31 13:46] >>310 小数点以下3桁くらいで四捨五入しろ
312 名前:デフォルトの名無しさん mailto:sage [04/07/31 13:48] >>310 π = 3.1415 としているのが原因
313 名前:デフォルトの名無しさん mailto:sage [04/07/31 14:05] >>311-312 返答ありがとうございます。 311の通りにしたら数値が0になったので、桁数が多すぎると表示がおかしくなる・・・でいいのかな。
314 名前:デフォルトの名無しさん mailto:sage [04/07/31 14:14] >>313 違う違う、有効数字の考え方を勉強して来なさい。
315 名前:デフォルトの名無しさん mailto:sage [04/07/31 14:15] いや、むしろ10万桁ぐらいまで
316 名前:デフォルトの名無しさん mailto:sage [04/07/31 14:20] もしかして 4.63267948799578E-05 の意味分かってないとか?
317 名前:デフォルトの名無しさん mailto:sage [04/07/31 14:25] >>316 いや、それを変数に入れて計算したら、 4.63267948799578が数値として考えられたのか、ただの回転がとんでもないことにナターヨorz
318 名前:デフォルトの名無しさん mailto:sage [04/07/31 14:25] つまり π = 3.1415 のときに 0.0000463267948799578 ってことだから、 π = 3.141592653589793 くらいまで取ればもっと0に近づく
319 名前:デフォルトの名無しさん mailto:sage [04/07/31 14:28] いや、浮動小数点数だから「変な数値」になることにはかわりないか?
320 名前:デフォルトの名無しさん mailto:sage [04/07/31 15:19] Perlユーザーには基本を知らない人間が多いのは知ってるし 自分も最初はそうだったから人の事は言えないが、 実際にそういう場面に出くわすと疲れるな。 今、基本情報処理の試験受付してるぞ。 基礎を身につける意味で、受験&勉強してみたらどうだ?
321 名前:デフォルトの名無しさん mailto:sage [04/07/31 15:29] すまん、スレ誤爆した。orz
322 名前:デフォルトの名無しさん mailto:sage [04/07/31 19:35] >>308 ない
323 名前:4.63267948799578E-05 [04/07/31 22:05] スマソ、やっぱ根本的なプログラムミスですたorz とりあえず立体モデルの回転をさせようと思っています。 member.nifty.ne.jp/Mukai/3d.htm ここの3番までをしようと思っているんですが、2番目の『初期状態】は Dim A()() as Double = {{1.0 .0.0, 0.0},{0.0, 1.0, 0.0},{0.0, 0.0, 1.0}} でいいのでしょうか? そのあとの『M = A×M』はVB.netで表すとどうなるのか、そもそも『M』の値が分かりません・・・。 分かる方がいれば教えてください。 (ちなみにゆとり教育云々で数学の教科書には回転行列のことなんてませぬorz)
324 名前:デフォルトの名無しさん mailto:sage [04/07/31 22:41] それはプログラミングって言うより線型代数の問題じゃないのか
325 名前:デフォルトの名無しさん mailto:sage [04/07/31 23:16] >>323 ちゃんと読んでないのでちょっと良くわからないけど, 3番の M は 2番で言う A のことではないかな? M が機体の 前上右ベクトルなんだと思う. なので,M の初期値は,2番での Aの初期値とかでいいでしょう. M = A × M は,普通の3行3列の行列演算. 行列演算がわからないなら,自分で調べるか, もう一度ここで泣くかしなさい.
326 名前:4.63267948799578E-05 [04/07/31 23:43] >>325 前者了解しますた。 一番肝心なのは後者のほうですね・・・検索しても分かりませんでした、分かる方助言をお願いしますorz M[0][0]はA[0][0]とM[0][0]からM[2][2]をかけて足したもの? もうさっぱりです(´-ω-`;)
327 名前:デフォルトの名無しさん mailto:sage [04/07/31 23:52] 3次元関連の入門書読め。 ゆとり教育って…行列の掛け算も載ってないの? まあ、なんでも教科書に載ってると思う方が間違ってるともいえるが。
328 名前:デフォルトの名無しさん mailto:sage [04/08/01 00:12] >>327 僕も指数表現とか行列演算は,プログラム作るために勉強したので, 326のいいきっかけになれば良いじゃん. このホームページには冒頭に3D関係の本に載ってないと書いてあるが, それでも,3DCGの基礎は知っとかんとこの先詰まるので, >3次元関連の入門書読め。 には賛成. >>326 これじゃだめ? ttp://shigihara.hp.infoseek.co.jp/mx13.htm ttp://www.matsusaka-u.ac.jp/~aihara/pukiwiki2/index.php?%A5%D9%A5%AF%A5%C8%A5%EB%A4%C8%B9%D4%CE%F3 ただし,プログラムでやるときは, T = A × M M = T みたいにやらないとだめだよ.
329 名前:4.63267948799578E-05 [04/08/01 00:17] >>327 DirectXの本が何冊かあるけど、どれも行列を使ったサンプルはなくSetRotation・・・。 DirectXはスレ違いだけどVBで作っているからcppのサンプルは使えないしでもうダメポ(つД`;) それと2*2の行列の計算すら載ってませんでした。。
330 名前:デフォルトの名無しさん mailto:sage [04/08/01 02:44] VBでエクセルをいろいろいじりたいんですが 参考になるサイトってありますか?
331 名前:4.63267948799578E-05 mailto:sage [04/08/01 02:50] >>330 ttp://www.bcap.co.jp/hanafusa/ ・・・orz
332 名前:4.63267948799578E-05 mailto:sage [04/08/01 03:28] Microsoft® Visual Basic® アプリケーションでは、Direct3DX ユーティリティ ライブラリによって提供される D3DXMatrixRotationX 関数、D3DXMatrixRotationY 関数、および D3DXMatrixRotationZ 関数を使って回転行列を作成する。 ここまで分かったけど、そこの見えない谷に阻まれてまs orz
333 名前:デフォルトの名無しさん mailto:sage [04/08/01 06:56] Rは登録商標だが、TMは何?
334 名前:デフォルトの名無しさん mailto:sage [04/08/01 07:43] >>332 Direct3D で回転させるの? 自分で行列演算して回転させるの? とくに実現方法にこだわらないなら,いろいろ調べてできそうなやつで やれば良いんだけどね. そもそも 3D→2D を Direct3D でやるか 自分で写像するか.. Direct3D のほうが速いと思うけど. >>333 トレードマークでしょ.って,これは誤爆なのかな?
335 名前:デフォルトの名無しさん mailto:sage [04/08/01 08:00] トレードマークって?
336 名前:デフォルトの名無しさん mailto:sage [04/08/01 08:17] TM - Trade Mark 商標? R - Registered (Trade Mark) 登録商標?
337 名前:デフォルトの名無しさん mailto:sage [04/08/01 09:27] どっちがえらいの?