• ベストアンサー

blender 回転軸の不思議な現象

よろしくお願い致します。 2.62を使っていますが、ある時点からいきなり回転軸がかわってしまいました。テンキーの回転操作でオブジェクトの中心ではなく、外側を中心に回ってしまいます。調べたところ、オブジェクトの中心の移動の結果にその事が飽きる可能性があるという文章を見たのですが、確認してみると、中心を示す黄色い丸はしっかりオブジェクトの中心にあるにもかかわらず、そこを軸とせずに回転が起きてしまっているのです。これはどのような現象なのでしょうか?またどのようにして解決すればよろしいのでしょうか?ご存知でしたらぜひ教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • neorg
  • ベストアンサー率54% (235/433)
回答No.2

個人的にボーンは苦手であまり詳しくないのですが.... http://cg.xyamu.net/Blender/entry190.html ここに、バージョン2.5以降のことも書いてあります

naonao321
質問者

お礼

この度はありがとうございました。 またお願い致します。

その他の回答 (1)

  • neorg
  • ベストアンサー率54% (235/433)
回答No.1

それは、オブジェクトを見るときに  『4』キーで ← 左 『6』キーで → 右 『8』キーで ↑ 上 『2』キーで ↓ 下 に回転して見るときのことですよね? まちがえていたらごめんなさい オブジェクトの画面でテンキーの『/』『/』『1』(『3』、『7』でも可) そして、マウスの真ん中のホイールでサイズを調整でなおると思います ちなみに、 『Ctrl』キーを押しながらマウスの真ん中のホイールをまわすと左右に 『Shift』キーを押しながらマウスの真ん中のホイールをまわすと上下に 視点を変えることができます

naonao321
質問者

補足

neorg様 ありがとうございます。 無事解決致しました。 大変恐縮ではありますが、 もう1つだけ質問させていただいてよろしいでしょうか? 現在、ボーンをオブジェクとに適応させようとしているのですが オブジェクモードでオブジェクト→ボーンの順に選択し、 cntr+Pで親子関係を設定しようと思ったのですが、 make parent ではなく set parentというメニューが出てきます。 (多くの説明サイトではmakeと出ていてます。)、メニューの内容も違います。 どのような操作ミスがあると思われますか? お時間ありましたらよろしくお願い致します。

関連するQ&A

  • VB 座標軸の回転?

    VB2010にて、joystickを使って点を移動するプログラムを作っています。 小さな○を三つ三角形状に配置し、ひとつの○をリーダーとして、これをジョイスティックで操作してその他を○を隊形を持って追従させます。 ジョイスティックを上に倒すと画面上でグループは右に動き、ジョイスティックを右に倒すとグループの中心を軸に位置回転します。 問題はこのあとなんですが、位置回転後の動きでジョイスティックを上に動かしたとき、リーダーの向いている方向に前進させたいのですがどうすればいいでしょうか? 現状では、位置回転した場所から右に動きます。 例えばリーダーの位置が右斜め下にいるのならば、ジョイスティック上で右斜め下に前進するようにしたいのです。 座標軸を動かせばいいのかと思いますが記述の方法がよくわかりません。 解りづらい説明だと思いますので随時補足します。 回答の方をよろしくお願いします。

  • 任意軸回転行列の、回転量を少し減らしたいのですが…

    皆様、いつもお世話になっております。 任意軸回転行列関係でひとつ疑問が出たので質問させていただきます。 3D物理シミュレータで物体の回転を扱うときに出た疑問です。 「アクセル」という行列に、単位行列を初めとして、さまざまな任意軸回転行列を、左から掛けていきます。 これが終わると「アクセル」はある回転行列になるはずです。 次に、問題があります。「ベロシティ」という行列に、「アクセル」という回転行列を、左からそのまま掛けるのではなく、回転量をちょっと少なくした、弱い回転を、しかしながら回転軸は同じものを、掛けたいのです。 -- ・まず思いついた解決策: 回転角と回転軸を保持しておいて、ベロシティに「回転軸」と「デルタ×回転角」を掛ける、という方法。 =>しかしアクセルの時点で、行列を左から掛けていきたいので、この過程で回転角と回転軸を更新し続ける手法がわかりません。そもそも存在するのでしょうか。 ・次に思いついた方法: アクセルで左から任意軸回転行列をかけていった完成品は、これもまた任意軸回転行列のはずですから、この完成した行列から回転軸と回転角を逆算して、ベロシティに掛ける行列を「回転軸」と「デルタ×回転角」から再構成する、という方法。 =>任意軸回転行列から回転角と回転軸を逆算する方法がわかりません。 ・次に思いついた方法: 任意軸回転行列から角度と軸を逆算しなくとも、任意軸回転行列に、何かしら手を加えると、回転角度に定数を掛け、回転量を調節することができる。 =>どんな方法があるのだろうか -- これらの推測はしましたが、どれも解答にたどり着けませんでした。 どうかよろしくお願い致します。 不明な点がございましたら随時補足いたします。

  • イラストレーターの回転ツールの原点が中心に戻ってしまいます

    初歩的な質問ですがお付き合いください。 イラストレーター(CSです)の回転ツールを使うとき、 原点をオブジェクトの外側に設定して 角度を入力しようとすると 原点がなぜかオブジェクトの中心に戻ってしまいます。 作業的には オブジェクトを選択 ↓ 回転ツールをクリック ↓ 原点に設定したい場所(オブジェクトの外側)をクリック ↓ 回転ツールをダブルクリックして 回転角度(数値入力)ウィンドウを出す という流れでやっているのですが、 なにか間違っているのでしょうか? 本等で調べてもこのやり方で 大丈夫なようなのですが、 何度やっても原点がオブジェクトの中心に戻ってしまい困っています。 原点をオブジェクトの外側にしたまま 回転の角度を設定するには 他のやり方があるのでしょうか? 教えてください。どうぞよろしくお願いします。

  • openGLの回転の仕組みが分からなくて、困っています

    openGL初心者です。描画関数で以下のような書き方でx軸、y軸、z軸それぞれに角度を与えてオブジェクトを描画しているのですが、意図した角度に回転してくれません。 一応自分の認識では、openGLでは以下のような書き方をすると、まずオブジェクトの描画がされて、次にz軸の回転→y軸の回転→x軸の回転と、処理の順番とは逆に計算が行われると知ったのですが、まずその認識は正しいでしょうか? そこで、実際にx、y、z軸にそれぞれ角度を与えてオブジェクトを回転させてみるのですが、どうも意図した回転にならないのです。 例えばz軸に90度の値を与えて、オブジェクトを横に倒したとします。 まず、その状態でローカル座標系のx軸とy軸がz軸を中心に90度回っていると思っています。 その後、y軸に90度の値を与えても、ローカル座標系のy軸を中心に回らず、まるでワールド座標系のy軸を中心に90度回りまわっているように見えます。また、x軸も同様にワールド座標系のx軸を中心に90度回ります。 そこで、ワールド座標系で回るのかと思い、今度は、ニュートラルの状態から、y軸を90度回します。ローカル座標ではx軸、z軸がy軸を中心に90度回ると思います。次にx軸に対して、角度を与えてやると今度はローカル座標系のx軸を中心にまわるのです。 何故このような回転をするのかイメージできません。。どなたか回答いただけませんでしょうか? それと本当にやりたいことは、オブジェクトがどのような姿勢で回転していても(ローカル座標系がどうであれ)ワールド座標系のx、y、z軸を中心に回転させたいのですが、宜しければその辺も合わせて教えて頂けたら幸いです。 (数学の知識も乏しいので、数式がちゃんとあるのなら、その名前を教えていただければ直幸いです。) 乱文失礼します。 public void display(GLAutoDrawable drawable) { gl.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT); gl.glMatrixMode(GL.GL_MODELVIEW); gl.glLoadIdentity(); gluLookAt((double) 0.0f, (double) 0.0f, (double) 5.5f, (double) 0.0f, (double) 0.0f, (double) 0.0f, (double) 0.0f, (double) 1.0f, (double) 0.0f); gl.glEnableClientState(GL.GL_VERTEX_ARRAY); gl.glEnableClientState(GL.GL_COLOR_ARRAY); gl.glRotatef(AngleX, 1, 0, 0); gl.glRotatef(AngleY, 0, 1, 0); gl.glRotatef(AngleZ, 0, 0, 1); // オブジェクト描画 draw(gl); gl.glDisableClientState(GL.GL_COLOR_ARRAY); gl.glDisableClientState(GL.GL_VERTEX_ARRAY); }

  • Java3Dで横置き円筒体の円筒中心軸廻りに回転アニメーションさせたいのですが

    Java3Dで円筒をY軸方向に直立配置した後、Y軸を中心軸としての回転アニメーションをさせるところまでは問題ないのですが、この円筒を90度倒して、すなわち、横置きにして同じ円筒中心軸とする回転アニメーションをするのはどのようにすればよいのでしょうか? X軸方向(axis.rotZ(Math.PI / 2.0 )を使って)、或いはZ軸方向に倒し、RotationInterpolatorを使っても、X軸、或いはZ軸を中心軸とした回転アニメーションにはならず、逆にZ軸、或いはX軸廻りに回転する結果となってしまいます。これは、回転軸に関してはY軸が基本で、円筒を倒すと同時にY軸も円筒と共に90度倒れることによると思われます。 横置き円筒軸廻りの回転アニメーションはどのようにすればできるのでしょうか?

    • ベストアンサー
    • Java
  • 軸の磨耗

    <軸削れポイント>  ・ベアリング内輪との接触している部分  ・六角止めねじの頭まで磨耗 <機器の特徴>  ・ベアリングユニットを使用し六角止めねじ2本で軸を固定している。  ・ベアリングユニット間に主動ローラーがあり、外側に駆動モーターを取付  ・駆動モーターは、トルクアームで左右へのぶれ防止をしており、モーター自身の荷重は軸に掛かっている。  ・内輪はφ30(0~+18μm)、軸φ30公差h9  ・モーター回転速度 200rpm <現象の特徴>  ・ベアリング内輪に茶色の焼けた?ような痕あり  ・軸にも擦れたような痕あり 当方、弱電設計者が機器トラブルの解決を行うことになり、困っております。宜しくお願い致します。 ベアリングは外輪固定、内輪回転しております。

  • 回転後の座標について 5軸加工機

    今年中に、OKKの縦型マシニング機械(三菱Neomatic)に日研のNCインデックス(角度と回転ができる仕様)を載せる予定です。 使いやすくするため、テーブル回転後の座標を、変数で計算ができるプログラムを作っているのですが、うまくいかず頭をかかえてる毎日であります。 そこで、皆様の力をお願いしたく質問させていただきます。 私の希望としては、 #101=回転させたいG54からのX座標(+OR-) #102=回転させたいG54からのY座標(+OR-) #103=回転させたいG54からのZ座標(+OR-) #104=回転C(+OR-) #105=角度A(+OR-) 上記、G54座標中心からずれた数値(#101から#103)から、回転&角度(#104、#105)の数値を変更するだけで、ひねった後の座標を計算し、その答えをG55の座標系に入れるプログラムを作っているのですが、いくつか問題がある為うまくいきません。 ◎G54のワーク座標がテーブル回転中心ではない。 ◎G54のワーク座標の中心位置から、さらにずらした位置を回転させたい。 ◎X,Y,Z及び、回転軸C、角度軸A 共にプラス数値とマイナス数値があり計算が困難。 ◎回転軸C、角度軸A 共に90度以上回る。 この様な原因があり、電卓で計算した数値と変数で計算させた数値が違い、困った次第であります。 機械の特徴としては、 ◎機械座標はマイナス数値 ◎テーブル回転中心座標は#501=X #502=Y #503=Z に登録済み。 ★☆まとめ☆★ #5221=G54X座標 #5222=G54Y座標 #5223=G54X座標 を使い #101=回転させたいG54からのX座標(+OR-) #102=回転させたいG54からのY座標(+OR-) #103=回転させたいG54からのZ座標(+OR-) #104=回転C(+OR-) #105=角度A(+OR-) で移動させた数値の答えを #5221=G54X座標 #5222=G54Y座標 #5223=G54Z座標 に登録したい。 文章が下手で申し訳ありませんが、どなたか変数を使い回転後の座標が計算できるプログラムをお教え下さい。 不明な点等ございましたらお教え下さい。 大変困っているので宜しくお願いします。 まとめの部分を下記の様に修正いたします。 ★☆まとめ☆★ #5221=G54X座標 #5222=G54Y座標 #5223=G54X座標 を使い #101=回転させたいG54からのX座標(+OR-) #102=回転させたいG54からのY座標(+OR-) #103=回転させたいG54からのZ座標(+OR-) #104=回転C(+OR-) #105=角度A(+OR-) で移動させた数値の答えを #5241=G55X座標 #5242=G55Y座標 #5243=G55Z座標 に登録したい。

  • 3次元座標を原点中心に回転したい

    任意のゼロでないベクトル(a,b,c)を原点中心に回転し、z軸に合致させるとする。同じ回転移動を3次元座標上の任意の点(x,y,z)に対して行った時の移動後座標が知りたいのです。 計算と結果を教えて下さい。

  • 回転操作と、伸縮操作は順不同かどうか

    回転も伸縮も中心を基準に操作するものとします。 ある楕円があったとして、この楕円に対して以下の2つの操作を行います。 1.この中心を軸としてある角度に回転させる操作 2.中心を変えずに、縦横拡大縮小する操作(倍率は縦と横違ってもかまいません) この2つをたとえば、 1→2→1'→2' と繰り返したとします。 (1'は1とは同じもしくは違う角度での操作。2'についても同様) これは 1→1'→2→2' としても最後に出来上がる図形は同じものになりますか?

  • 対称移動と回転の合成のイメージでの理解

    平面上の一次変換を考えます。 (y=xtanαに関する対称移動)は、 (原点中心で角αの回転)*(x軸に関する対称移動)*(原点中心で角-αの回転) という合成になります。ただし、点には、右にある変換から順に作用させるとします。 これは、式を書かなくても、イメージで十分納得できます。 また、(y=xtanαに関する対称移動)は、 (原点中心で角2αの回転)*(x軸に関する対称移動) という合成にもなります。ただし、点には、右にある変換から順に作用させるとします。 しかし、これは行列の積の式では理解できるのですが、どうしてもイメージできないのです。 x軸に関する対称移動して、原点中心で角2αの回転すれば、y=xtanαに関する対称移動になる理由を、式を用いないで教えていただけないでしょうか。

専門家に質問してみよう