[表示 : 全て 最新50 1-99 101- 201- 301- 401- 2chのread.cgiへ]
Update time : 06/10 07:31 / Filesize : 92 KB / Number-of Response : 423
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

3Dアルゴリズム全般



1 名前:デフォルトの名無しさん mailto:sage [2006/11/22(水) 13:51:26 ]
ネットなんかやってないで数学勉強してこいよ

369 名前:デフォルトの名無しさん mailto:sage [2012/04/17(火) 15:24:58.62 ]
ある行列AとBがあって、Aは

1,0,0,0
0,1,0,0
0,0,1,0
30,50,0,1

Bは

0.921061,0.389418,0.,0
-0.389418,0.921061,0,0
0,0,1,0
30,50,0,1.000000

Aの三次元位置は30,50,0ですぐわかるんですがBの三次元位置はどうやって算出するのかわからないのです。


370 名前:デフォルトの名無しさん mailto:sage [2012/04/17(火) 15:27:24.33 ]
>>367
普通に位置ベクトルと行列の乗算をするだけ。
高校あたりの数学で習う行列の計算そのもの。

ただ、実際には3D関係だと計算の都合で行列は4*4を使うことが多いので
その場合は位置ベクトルをx,y,z,1に拡張して使う。

371 名前:デフォルトの名無しさん mailto:sage [2012/04/17(火) 15:34:37.63 ]
1点補足。

ベクトルと行列の乗算をした後に、ベクトルの4番目の成分が1以外になったら
全ての成分をその値で割る必要がある。4番目が常に1になるようにする。
単なる回転や平行移動では1のまま変化することはない。

詳しい話は、同次座標系でググって。

372 名前:367 mailto:sage [2012/04/17(火) 15:38:52.24 ]
この場合は

30,50,0,1 に 

0.921061,0.389418,0,0
-0.389418,0.921061,0,0
0,0,1,0
30,50,0,1

を掛けるんですか?
それとも

0.921061,0.389418,0,0
-0.389418,0.921061,0,0
0,0,1,0
0,0,0,1

を掛けるのかな?

373 名前:デフォルトの名無しさん [2012/04/17(火) 15:58:22.17 ]
ここで聞くことじゃないんだよね。3Dじゃなくて数学の話でしょ?それも高校生レベルの
どの分野でも文系って害悪。理系でオーディオの迷信信じる奴は皆無だし
信じてたらそれすなわち文系だしなwww

374 名前:デフォルトの名無しさん mailto:sage [2012/04/17(火) 16:03:34.20 ]
30 50 0 1 が縦か横かで、そもそもどっちか片方からしか掛けられんだろ?
アメリカとヨーロッパで流儀が違うから、使ってる教科書か何かで確認しろ。

375 名前:デフォルトの名無しさん mailto:sage [2012/04/17(火) 16:22:42.02 ]
とりあえず行列のかけ算覚えよう。
手計算させたら理系でも泣き出すぐらいの、たぶん思ってる以上に結構面倒な計算だぞ?

次に座標を行列にする方法を覚えよう。極座標じゃないぞ直交座標だぞ?
行ベクトルと列ベクトルがあるが、掲示板で説明求めるなら列ベクトルにしとき。

回転行列が行ベクトル用か列ベクトル用なのか書いてない奴のWebサイトは相手しなくていい。

376 名前:デフォルトの名無しさん mailto:sage [2012/04/17(火) 16:50:00.44 ]
原発は再稼動すべきだよな

377 名前:デフォルトの名無しさん mailto:sage [2012/04/17(火) 20:19:56.56 ]
黙れ朝鮮人



378 名前:デフォルトの名無しさん mailto:sage [2012/04/17(火) 21:17:52.18 ]
>>369
Bは位置30,50,0で回転している。物体の原点(0,0,0,1)を掛けてみればいい

379 名前:デフォルトの名無しさん mailto:sage [2012/04/18(水) 12:19:17.29 ]
クォータニオンで検索すれば良いのでは?

380 名前:デフォルトの名無しさん mailto:sage [2012/04/18(水) 15:14:49.72 ]
>>379 余計混乱するからやめれ

381 名前:デフォルトの名無しさん mailto:sage [2012/04/18(水) 17:46:21.28 ]
アホみたいなこと言わせたら俺なかなかのもんだが、
クォータニオンみたいなもん思いつく学者さんってスゲーな。
しかもそれが、良く分からんけど便利に使えてるっていう現実。
人間スゲーな。

382 名前:デフォルトの名無しさん mailto:sage [2012/04/18(水) 18:55:29.63 ]
そのあたり興味あれば「ハミルトンの四元数」って本がお勧め

383 名前:デフォルトの名無しさん mailto:sage [2012/04/18(水) 19:19:03.49 ]
スキンメッシュの頂点を移動させるには同次座標変換を使うのかな?

384 名前:デフォルトの名無しさん [2012/04/19(木) 01:31:00.20 ]
お前らって本当数学苦手なのな
なんで3Dのスレで数学の話題になるのwww

計算量がどうだのキャッシュがどうだのGPUとの転送速度がどうだのならまだ分かるが

385 名前:デフォルトの名無しさん mailto:sage [2012/04/19(木) 01:35:34.46 ]
ゴミ溜めでまともなレベルの議論期待すんな

386 名前:デフォルトの名無しさん mailto:sage [2012/04/19(木) 07:03:05.84 ]
3D のアルゴリズムで数学の話が出ないわけがないだろ。
これだから厨ジサカーは困る。

387 名前:デフォルトの名無しさん mailto:sage [2012/04/19(木) 08:21:22.85 ]
アイデア -> 数学でごにょごにょ -> 実装
数学でつっかかってたらきついだろ



388 名前:デフォルトの名無しさん mailto:sage [2012/04/19(木) 08:58:51.74 ]
アルゴリズムのスレじゃないのかよ!転送速度とかなんじゃそりゃ

389 名前:デフォルトの名無しさん mailto:sage [2012/04/19(木) 09:21:35.66 ]
動けばいいってもんでもないでしょ

390 名前:デフォルトの名無しさん mailto:sage [2012/04/19(木) 19:02:32.67 ]
答えられないからって話題をすり替えんなよな

391 名前:デフォルトの名無しさん mailto:sage [2012/04/19(木) 19:36:17.03 ]
答えるってどれに?

392 名前:デフォルトの名無しさん mailto:sage [2012/04/19(木) 20:41:44.31 ]
>>383

393 名前:デフォルトの名無しさん mailto:sage [2012/04/19(木) 20:53:16.02 ]
>>392
なにいってるのかさっぱりわからない
ボーンの仕組みわかってるのか?

394 名前:デフォルトの名無しさん mailto:sage [2012/04/20(金) 00:37:16.68 ]
頂点座標を幾何変換で
頂点座標×ボーンオフセット行列×座標変換行列×逆ボーンオフセット行列
するんだよね?

395 名前:デフォルトの名無しさん [2012/04/20(金) 06:02:49.66 ]
いくつかの行列を線形結合するだけじゃん。同字だのなんだの考えなくても、線形ってことだけ知ってれば

396 名前:デフォルトの名無しさん [2012/04/20(金) 06:03:13.89 ]
文系は何やらせても邪魔

397 名前:デフォルトの名無しさん mailto:sage [2012/04/20(金) 12:30:07.55 ]
>>394
判ってるのになんで聞くの?



398 名前:デフォルトの名無しさん mailto:sage [2012/04/22(日) 20:04:35.37 ]
c++用obbtreeのpublic domainなclassソースってどこにあります?

399 名前:デフォルトの名無しさん mailto:sage [2012/04/22(日) 20:14:15.31 ]
今はまだない

400 名前:デフォルトの名無しさん [2012/06/03(日) 14:06:47.31 ]
あるベクトルzが与えられたとき、ベクトルxとyを求めたい。
ただしx,y,zは互いに垂直であること。

要は1本のベクトルをz軸としてローカル座標空間を作りたい。
何か良い方法はありませんか?


401 名前:デフォルトの名無しさん mailto:sage [2012/06/03(日) 14:12:54.93 ]
適当なベクトルvを作る (ただしz≠v)
zとvを外積してxを作る
zとxを外積してyを作る

402 名前:デフォルトの名無しさん [2012/06/03(日) 14:17:27.36 ]
>>401
そのvはどうやって作れば良いと思いますか?
z=vだったとき、何からv2を作れば良いでしょうか

403 名前:デフォルトの名無しさん mailto:sage [2012/06/03(日) 14:38:11.62 ]
昔のメモを持ってきた。

X cTh   0  -sTh
Y -sTh*sPh cPh -cTh*sPh
Z sTh*cPh sPh cTh*cPh

sTh,cPh とかは、sinθ、cosφね。
ベクトルZ からθ、φを求めれば、互いに直交するX、Zを得られる。

カメラワークとかによく利用してたな。

404 名前:デフォルトの名無しさん mailto:sage [2012/06/03(日) 14:38:38.10 ]
> 直交するX、Zを

X、Yね。

405 名前:デフォルトの名無しさん mailto:sage [2012/06/03(日) 14:42:43.91 ]
>>402
とりあえず適当なベクトル v を使った >>401 の計算をノートにいっぱい書いてみろ。
そうすれば v をどう選べば最終的にどういうローカル座標系ができるか分るようになる。

あと、>>401 は明言していないが、外積を計算する際、被演算子の順は全ての例で統一しろよ。
でないと混乱するからな。

406 名前:デフォルトの名無しさん mailto:sage [2012/06/03(日) 14:54:05.32 ]
質問したら良い方法が浮かびました。
とりあえず{1,0,0} {0,1,0} {0,0,1}の3ベクトルと内積をとり
絶対値が最も小さいものをvとします。

>>403
最もスマートそうな方法ですが、角度を求める方法がわからないので
次のステップで挑戦します。ありがとうございました。

>>405
そうします、ありがとうございました。

407 名前:デフォルトの名無しさん mailto:sage [2012/06/03(日) 15:09:17.54 ]
> 最もスマートそうな方法ですが、角度を求める方法がわからない

おいおい



408 名前:デフォルトの名無しさん mailto:sage [2012/06/03(日) 15:13:19.85 ]
単位ベクトル同士の内積が何を示すか知らないだなんて

409 名前:デフォルトの名無しさん mailto:sage [2012/06/03(日) 15:15:38.55 ]
>>406
その方法だとzが変化したとき、最小のvが変わるとローカル座標系が大幅に変わる
vを(0,1,0)にしとけばx軸は必ずXZ平面にあるとか、やりたいことに合わせて考えたほうがいいんじゃないかな

410 名前:デフォルトの名無しさん mailto:sage [2012/06/03(日) 17:31:54.38 ]
なぜみんな、CかC++を使うのでしょうか?

411 名前:デフォルトの名無しさん mailto:sage [2012/06/03(日) 18:11:29.89 ]
スキルが未熟で、アセンブリで書けないからです

412 名前:デフォルトの名無しさん mailto:sage [2012/06/04(月) 12:28:38.35 ]
アセンブリでプログラミングしてどうするの?
今日日、そんな餌で釣れると思ったのか!!

あ、オレがつれてる...

413 名前:デフォルトの名無しさん mailto:sage [2012/06/05(火) 02:37:08.83 ]
立体をワールド空間に配置する場合どちらの方法が良いとされていますか?

移動行列A (中心座標XYZ)
回転行列B
拡大行列C
の情報を与えて(0,0,0)を中心とする頂点群に(CBA)を乗じる

中心座標(x,y,z)
回転行列P
(0,0,0)→(x,y,z)行列Q
(x,y,z)→(0,0,0)行列R
を使ってある位置に存在している頂点群に(RPQ)を乗じる

仮にDrawCube(x, y, z, 2w, 2h, 2d, rotx, roty, rotz)という関数を呼んだとすると
前者の頂点は(-0.5,-0.5,-0.5)と(0.5,0.5,0.5)を対角とし
後者の頂点は(x-w, y-h, z-d)と(x+2, y+h, z+d)を対角とします

414 名前:デフォルトの名無しさん mailto:sage [2012/06/06(水) 00:50:32.79 ]
別に良いも悪いもないよ
例えば太陽の周りを回る地球の動きを再現するには
前者と後者両方必要だろ

415 名前:デフォルトの名無しさん mailto:sage [2012/06/08(金) 14:48:46.68 ]
おまいら頭いいな

416 名前:デフォルトの名無しさん mailto:sage [2012/06/08(金) 19:47:13.48 ]
おまいらえらそうに言ってるけど
今回の日食がなぜ東からじゃなくて
西から順番に起こってるか説明出来ないんだろ

417 名前:デフォルトの名無しさん mailto:sage [2012/06/08(金) 19:49:26.75 ]
そっちの方が食べやすかったんだろ

俺もクッキー食べる時は西からだし



418 名前:デフォルトの名無しさん mailto:sage [2012/06/08(金) 19:49:54.38 ]
? 太陽と比べ月は遅いんだし、影が太陽の動きと逆なのは当然じゃん?

419 名前:デフォルトの名無しさん mailto:sage [2012/06/08(金) 19:56:14.66 ]
いやバターたっぷりのクッキーはおいしいだろ


420 名前:デフォルトの名無しさん mailto:sage [2012/06/08(金) 20:00:21.64 ]
金星の太陽面通過は、地球の北半球から見て金星は左から右に横切った。
これは、それぞれの公転軌道上の速度で金星が地球より速く、
文字通り金星が地球を追い越したからである。

一方、金環日食の場合は、地球の北半球から見て月は右から左に横切った。
これは、地球の公転方向とは逆方向に月が地球の周りを公転しているからであり、
かつ、月の公転速度が地球の自転速度より速いためである。

421 名前:デフォルトの名無しさん mailto:sage [2012/06/08(金) 20:07:12.70 ]
3次元NURBS曲面を2次元平面に投影した時の輪郭線を表す2次元NURBS曲線って計算できるものなの?

それっぽい論文を探してるんだけど、なかなか見つからない

422 名前:421 mailto:sage [2012/06/08(金) 20:11:32.56 ]
>>421
ごめん、なんか紛らわしいな
次のように変えて読んでくれ

3次元NURBS曲面 --> N次 x M次NURBS曲面
2次元NURBS曲線 --> L 次NURBS曲線

まぁ要するに適当なNURBS曲面を平面に投影した影の輪郭線を求めたい






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<92KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef