Re: 次期Shadeに望むもの ( No.67 ) |
- 日時: 2003/07/28 23:44
- 名前: つる
- 参照: http://homepage3.nifty.com/STEP/
- >ボールジョイントは、常に、最短ルートをとるとは限らない。
>これを回転軸について言い換えるなら >ボールジョイントは、常に、ひとつの回転軸で回転するとは限らない。 >ということになると思います。
ところが違うんです。 えっと、 東京から、スペインへ飛行機で飛びます。 この航路を最短距離で飛ぼうとすると、ロシアの奥地あたりまで飛ばなければなりません。地球儀でみてみれば、これが大円コースであると分かります。 しかし、東京から、北京を通り、地中海を通って、スペインへ行くコースもとることが出来ます。 このコースは、明らかに大回りです。
しかし、地球から見ると、、、(すりこぎ運動なしに、自転だけの話にしますね) 回転軸はひとつです。このとき、東京にいる鉄腕○トムがホバリングを続けて、スペインが足元に来るまで粘ることにします。このとき、 東京->スペイン間は、明らかに遠回りをしますが、地球は、しごく当然のようにまわります。。
なんか、ものはいいようというか、なんかパラドクスというか、だまし話というか、、、、
最初、平山さんの例で別ページにまとめてくださったもので、ボールジョイントと、3層ジョイントとで比較してますが、 このとき、しらずしらず、東京とスペインを基準にとってしまっていたのです。
この、東京-スペイン間の大回りは、3層ジョイントの大回りとは違い、 シーケンスをちょっとずつずらしながら軌跡をたどると、円錐型になります。 平山さんのアップしたデータでも、Shift+スペースで動かすと、円錐型が見えます。 他の3層ジョイントやオイラージョイント(?)では、円錐型は見えません。
>ついでにいうと、ひねりを加えない場合でも、 >最短ルートをとらない(ひとつの回転軸で回転していない)ようです。 >ボールジョイントの場合も最短ルートを通るのは特殊な場合だけのようです。
どういう場合でしょうか。キーポイントを3つ以上設定した場合は、回転軸が変化しているようなので、目ではよくわからないんですけど、 キーポイント2つの間のモーションでは、どうしても回転軸がふえることはないように思うのですが・・・
キーポイントを3つ以上設定したときも、それぞれの区間は、かなり円錐になっているみたいです。 ドッジボールを持ってきて、そこに、いろんな半径の円を書くんです。それをつなげていくと、、 常に、回転軸がひとつの回転をさせることが出来ます。
Shadeのユーザーガイドには、 ボールジョイントのIK操作は、3軸回りの回転量を設定する と描いてありますね。 つまり、オイラー角か、なにかで、任意軸回転を実装しているってことですね。 ていうか、今までユーザーガイドみない自分って、すごいバカな気がしますが・・・
|
Re: 次期Shadeに望むもの ( No.68 ) |
- 日時: 2003/07/29 01:55
- 名前: 宮田
- >>62 これ、3次元での「最短コース」とするとXZ平面を通らなくても良いのではないでしょうか?
>これは必ず通るはずです。
これは「ねじれ」を考えない(「ねじれ」がない)場合だと思います。
>回転ジョイントでもボールジョイントでも中心からの距離は変わらないというか、 >変わらない前提で考えているので、どちらも「球」上と考えていいと思いますが。 >ボールジョイントの場合、球表面上の同一の曲率を持った曲線上を動くということも >いえないようですね。
これ、私が間違ってました。半径一定ですから曲率は変わりませんね。 曲率の変化ではなくて、「ねじれ」による変化ではないでしょうか。
ちょっと言葉で書くのが難しいので図を描いて見ました。こういったことが原因だと思う のですけど。 http://www.ff.iij4u.or.jp/~hrmiyata/tes/3dim/3dim.htm
|
Re: 次期Shadeに望むもの ( No.69 ) |
- 日時: 2003/07/29 15:25
- 名前: つる
- 平山さんと、宮田さんと、私とで、言葉の定義が違いますね
 ひねりとかねじれとか、最短距離とか、回転とか、あいまいな言葉はよした方がよさそうです。
最短距離なんて言葉を使ったのが悪かったですね・・・ 忘れてください・ ひとつの回転軸ということです。。。
曲率に関しては、かなりちんぷんかんぷんなことを書いていましたね。自分。
>これ、私が間違ってました。半径一定ですから曲率は変わりませんね。 >曲率の変化ではなくて、「ねじれ」による変化ではないでしょうか。 ボールジョイントのオフセットは移動せずに、回転させた時の、ベクトルの先端が通る曲線の曲率の話ですよね。
確かに、ボールジョイントの中心からのびるベクトルは、ボールジョイントの中心から一定距離を保って移動(回転)しますが、この時にできる曲線は、半径一定ではありません。 私の例で、東京ースペイン間をアトムがホバリングする場合、半径は、地球の半径とは違いますよね。
細かくわければ、曲率一定になるのでは、、なんて、自分、書きましたけど、嘘ですね。 大円コースをとっている時に、曲率がそれと同じような曲線をとりつつ、大円から抜けて、ほかの大円コースに、「なめらかに」移行するのはできないように思います。 ですから、キーポイントを複数つなげた場合、いくら大円コースをとろうとがんばっていても、曲率はかわってしまいますね。 出来るのかな。。。ここらへん、微分マスターしてないとわかりませんね。。
|
Re: 次期Shadeに望むもの ( No.70 ) |
- 日時: 2003/07/29 17:29
- 名前: 宮田
- >>ちょっと言葉で書くのが難しいので
え〜と。一応、文章で書くと以下のようになると思います。
XZ平面にある2点をA、Bとします。 1.この平面上でABの最短距離は直線でただひとつ定まります。 2.曲率が一定の曲線とした場合の最短距離も曲率(つまり半径)とベクトル方向が判れば定まります。
2の場合を3次元に拡張して考えてみます。 曲率が一定でAB間を通る最短コースの円弧ABはABを結ぶ直線を回転軸にして無数に描けます。 つまり、直線ABが「ねじれて」いた場合、円弧ABはXZ平面を始点と終点で通過するとしか決定できません。 点A、Bでのベクトルの方向が無数にあるということです。
さらにこの「ねじれ」をどう処理するかによって軌跡が変わってきます。 1.AB間での「ねじれ」を無視した場合 1)XZ平面上の点ABを通り、軌跡はある平面上に乗ります(ねじれ角をもった平面上)。 2.「ねじれ」を合成した場合 2)始点から終点で「ねじれ」が0になる場合、軌跡は同一平面上にないシグモイドになります。 3)始点から始まり中点で「ねじれ」が0になり終点で再度ねじれる場合、もしくは一回転する場合、軌跡は同一平面上にない円弧曲線になります。
多分、この2-3)のケースが回転ジョイントとボールジョイントの場合だと思いますが、回転ジョイントはジョイントの動かす順番によりこのねじれの変化が変わってきます。動かす方法によりねじれの量が違うと言うことですね。 ボールジョイントはこのねじれを独立しても考えられるため、一意に決まった点において更にねじりを加える(補正する)ことにより軌跡を変えられるんだと思います。
>>平山さんと、宮田さんと、私とで、言葉の定義が違いますね
ちょっと混乱しますね。 「軸がねじれる」と言う場合、原点-点Aもしくは原点-点Bのベクトルがねじれる場合と直線ABがねじれる場合があります。 多分、このあたりの部分でややこしいことになっているのではないでしょうか。(^^;
|
Re: 次期Shadeに望むもの ( No.71 ) |
- 日時: 2003/07/29 20:04
- 名前: 平山
- 参照: http://www2u.biglobe.ne.jp/~k_hiray/ps_db/search/
- すっかり「回転」スレッドになっちゃいましたが、気にせずに続けましょう

>最短距離なんて言葉を使ったのが悪かったですね・・・
最初に使ったのは、私だと思います(^^;; 確かに基準点(でいいんでしょうか。移動の軌跡を確認するためのポイント?)をどこに置くかによって、 同じ回転でも最短距離を通ったり、通らなかったりするようなので、誤解を招くかもしれませんね。 ためしに、大回りしているように見えるボールジョイント中に複数ポイントを置いてその軌跡を調べて見ると、 最短距離を通るポイントが必ずあるようです。
私は、ジョイント支点と基準点を結ぶベクトルと直交する回転軸しか考えていませんでしたが、 斜交する回転軸を想定すると、ひとつの回転軸と考えることができますね。
>なんか、ものはいいようというか、なんかパラドクスというか、だまし話というか、、、、 だまされたような気もしますが、 ひとつの回転軸という考え方をすると、不可解だったボールジョイントの動きの規則性が見えてくるような気がします。 あくまでも気ですが・・・
>確かに、ボールジョイントの中心からのびるベクトルは、ボールジョイントの中心から一定距離を保って移動(回転)しますが、この時にできる曲線は、半径一定ではありません。 曲率っていうのも曲面の曲率と曲線の曲率があるので混乱しますが、一定なのは、曲面の曲率の方ですね。 ボールジョイントによる回転が常に円錐状の軌跡を描くということは、 各基準点での半径は一定(曲率が変化しない)といえると思います。キーポイントが2個の場合ですが。
>>62 これ、3次元での「最短コース」とするとXZ平面を通らなくても良いのではないでしょうか? >これは必ず通るはずです。 >これは「ねじれ」を考えない(「ねじれ」がない)場合だと思います。 私の例では、移動前のポイントA、移動後のポイントB、ジョイントの支点がいずれもXZ平面(XZで行っちゃいます)に あるという特殊なケースですが、この場合は最短距離は必ずXZ平面内にあります。
こういう特殊なケースでなくても、球表面上の2点間の最短距離ということになると、 これはもうひとつしかないということになります。
また最短距離って持ち出してしまいましたが、 ボールジョイント内にある形状を見た目で、感覚的に最短距離で動かしたいというケースも多そうです。
>多分、この2-3)のケースが回転ジョイントとボールジョイントの場合だと思いますが、回転ジョイントはジョイントの動かす順番によりこのねじれの変化が変わってきます。動かす方法によりねじれの量が違うと言うことですね。 >ボールジョイントはこのねじれを独立しても考えられるため、一意に決まった点において更にねじりを加える(補正する)ことにより軌跡を変えられるんだと思います。 このあたり、なんか法則があるのかもしれませんが、3軸ジョイントとなると複雑そうですね。
|
Re: 次期Shadeに望むもの ( No.72 ) |
- 日時: 2003/07/29 23:10
- 名前: 宮田
- >>斜交する回転軸を想定すると、ひとつの回転軸と考えることができますね。
これが3次元でのやっかいな回転軸だと思います。
ShadeでXZ平面(上面図)に円弧を描きます。この2点はハンドルを持っています。 このハンドルを正面なり側面図で動かすと(回転させると)円弧の形が変わります。 アンカーは変わっていないのでXYZでグローバルな回転はしていないことになりますよね。 この時、2点のコントロールポイント間は「ねじれて」いることになり、曲線は同一平面上に乗りません。 2点のハンドルがコントロールポイントの2点を結ぶ直線を軸にして同量回転している場合でもXZ平面とは限らない 平面上に描かれます(円弧の乗っている面が回転しているんですね)。 3次元で見た場合、このやっかいな第4軸の考えが必要になってくるのだと思います。
最短距離という言葉は合っていると思うのですが、全ての要因を書き出せば軌跡は一定のコースを通ることが できるけど、同一平面上を通るとは限りませんよということではないでしょうか。 ボールジョイントは位置とねじれでこのコースを決めることができますが、3軸ジョイントの場合このねじれは 3軸の組み合わせにより従属的に決まるため、同一のコースを通るとは限らないということではないかと(^^;
|
Re: 次期Shadeに望むもの ( No.73 ) |
- 日時: 2003/08/03 09:41
- 名前: 宮田
- ありゃ。加藤さんからの回答があったと思ったのに、消されてしまわれたんですね(T^T)
私は全然理解できていないんですが、2つほど疑問に思っていることがあります。 ひとつは空間の軸の取り方についてで、もう一つはベクトル平面と曲線平面のなす角度についてです。
特殊な場合かもしれませんが、ある平面上にある円の円周上を右回りに動いている場合、ある点での接線方向と 遠心力を受ける方向は直交し、その外積(法線方向)も直交しますよね。 この状況で円の片側に重力の大きい物体を置いたとすると、遠心力は重力に影響されて方向が変わると思います。 つまり3軸が直交しなくなる(空間が曲がっている)ということで、それが「ねじれ」であり、クォータニオンは この空間を表せると考えていたのですけど。(距離はこの歪んだ座標系の中での最短距離と思っていました。)
また、上記の場合は3軸が勝手な方向をとれるため、平面が決まると自然に残りの方向が決定してしまう外積だと、 自由な軸は決められないことが根本的な原因だと考えていました。
>>72 2点のハンドルがコントロールポイントの2点を結ぶ直線を軸にして同量回転している場合でもXZ平面とは >>限らない平面上に描かれます(円弧の乗っている面が回転しているんですね)。
上の72の場合、ベクトルのある平面と曲線のある平面が異なっているので「ねじれ」と理解していたのですが、 それで良いのでしょうか? それともこれは「ねじれ」とはいえないのでしょうか。 ‥‥というのが昨日布団の中で寝ながら考えていた問題です。
#独り言ですので読み飛ばしてください>ALL(^^;
|
Re: 次期Shadeに望むもの ( No.74 ) |
- 日時: 2003/08/03 12:03
- 名前: 加藤俊明
 - 参照: http://www.bekkoame.ne.jp/〜t.katoh/
- あっあっあっ、スミマセン
出かける間際に適当に書いていたら、まるで間違ってしまったことを書いてたものですから、訂正しようと思って一旦消しちゃいました。 後で、書き直しても一度掲示しますね。
|
Re: 次期Shadeに望むもの ( No.75 ) |
- 日時: 2003/08/04 21:31
- 名前: 平山
- 参照: http://www2u.biglobe.ne.jp/~k_hiray/ps_db/search/
- おお、加藤さんの書き込みがあったんですね。
>>72-73 こういう話になると、まったくわからないんで加藤さんの解説を期待しています。
>この状況で円の片側に重力の大きい物体を置いたとすると、遠心力は重力に影響されて方向が変わると思います。 >つまり3軸が直交しなくなる(空間が曲がっている)ということで、それが「ねじれ」であり、クォータニオンは >この空間を表せると考えていたのですけど。(距離はこの歪んだ座標系の中での最短距離と思っていました。) 重力で空間が曲がるなんてほとんどアインシュタインの世界ですね 
クォータニオンで最終的に表現されるものは、通常の三次元空間での状態ですが、 計算に、虚数を使うってことからすると、その考え方も通常の三次元空間的な感覚では 理解できないものなんでしょうか。 やっぱりクォータニオンっていうぐらいだから四次元?
クォータニオンについての解説をWEBでちらっと調べてみたら、 超複素数 テンソル スピノール ノルム ブラ デルタ関数 フーリエ変換 ユニタリ変換 と耳慣れない言葉のオンパレードで、玉砕しました(^^;;
何とか日本語の意味がわかったのは 2個の実数成分で表される平面ベクトルが、 複素数を使うと、1個の複素数で表される。 クォータニオンの4つの成分は、1個の実数と3個の虚数からなるというとこぐらいです。
やっぱり、任意の軸まわりの回転を簡単に合成できる 回転の球面線形補間ができるというのが特徴みたいですね。
ところで、カメラジョイントの方は、クォータニオンじゃあないみたいですね。、 視線周りの回転(バンク角)が独立して、視点の座標値だけで計算しているようです。 注視点の動きは不可解ですが・・・
|
Re: 次期Shadeに望むもの ( No.76 ) |
- 日時: 2003/08/04 21:56
- 名前: 平山
- 参照: http://www2u.biglobe.ne.jp/~k_hiray/ps_db/search/
- 話が飛びます。
子供が、ガチャポンでとったルービックキューブ(懐かしいですね(^^))を 取り上げてなにげなく遊んでたんですが、 この動きがShadeの回転ジョイントでは再現できないことに気づいて愕然としました。
これもブラウザ中の階層に縛られる今のインターフェースによる限界なのでしょうか。 くやしいのでスクリプトで動かしてみました。 http://www2u.biglobe.ne.jp/~k_hiray/tmp/Rubic_Cube.txt
|