Doc:JA/2.6/Manual/3D interaction/Transformations/Basics/Grab

提供: wiki
移動先: 案内検索


Page status (reviewing guidelines)

Page reviewed and in good shape

Grab/Move

(移動)

モード: 3Dビューでは オブジェクトモード、編集モード、ポーズモード;
UV/画像エディタツール、シーケンスエディタドープシートグラフエディタ では他の特別な移動操作

ホットキー: Gまたは軸制約との組み合わせ

メニュー: コンテキスト依存。現在のオブジェクトのメニュー → Transform(トランスフォーム)Grab/Move(移動)

このオプションは、アクティブな 3Dビューポートの 3D 空間にあるオブジェクト(オブジェクトモード時)やオブジェクトの構築に使われる要素の移動を行います。ノードエディタ、グラフエディタ、UV エディタ、シーケンサーなど、他の様々なエディタ環境でも似た機能が使えます。オプションの詳細については、それぞれの関連節で扱います。

移動の表示

移動中は、座標軸ごとの変化量が 3Dビューウィンドウの左下隅に表示されます。

3D View

(3D ビュー)

3Dビューでは 2 種類の移動オプションがあります:

  • ショートカットやその組み合わせを使う方法。
  • マニピュレータを使う方法。3Dビューのヘッダーから選んだ場合。


Transform Widget

(マニピュレータ)

マニピュレータ

デフォルトでは マニピュレータが表示されています。3D ビューにあるマニピュレータ自身を LMB Template-LMB.png でドラッグ移動すると移動操作を行えます。

Shortcuts in the 3D View

(3Dビューでのショートカット)

3D空間でものを動かす最速の方法の一つは G です。このホットキーを押すと「移動」トランスフォームモードに入り、選択オブジェクトやデータをマウスポインタに追従させて自由に動かせます。このショートカットと特定の軸を表すショートカットを組み合わせると、トランスフォームを完全に制御できます。

LMB Template-LMB.png
移動を確定し、オブジェクトやデータを画面上の現在の位置に置きます。


Translation Display
アクション時の軸制約
MMB Template-MMB.png
3Dビューのマウスポインタの位置によって、X、Y、Z軸方面への移動を自動的に制限します。G キーを押した後に MMB Template-MMB.png が押されると、3Dビュー空間の3軸を含む、移動制限のオプションが表示されます。制限軸は MMB Template-MMB.png が離された場所に関係する軸になります。操作中はいつでも、キーボードの XYZ を押して軸を変更できます。


RMB Template-RMB.png または Esc
移動をキャンセルし、オブジェクトやデータを元の位置に戻します。
Alt + g
これまでにそのオブジェクトに行われたすべてのトランスフォームを消去します。オブジェクトモードでのみ動作します。


Shift+X が作動中
⇧ ShiftXYZ
補完的な軸によるトランスフォーム制約です。このオプションを使うと、選んだ軸以外の軸でのみ移動を行えるようになります。右図をご覧ください。


Controling Grab/Move Precision

(移動の精密な制御)

上述の軸の制限オプションに加えて、Blender にはトランスフォームの移動量を小さくしたり、移動の刻み幅を決めたりする機能があります。

⇧ Shift
トランスフォーム動作を遅くします。G を押した後、移動モードに入った状態で ⇧ Shift キーを押すと移動量が抑えられ、細かな位置を決められます。
Ctrl
オブジェクトの移動中、事前に決めておいたスナップに基いてスナップします。スナップ機能そのものが無効であっても動作します。
Ctrl+⇧ Shift
直感的にわかるように、Ctrl⇧ Shift 操作の組み合わせです。オブジェクトをスナップさせながら精密に移動させられます。
X/y/z + <数値>
この操作は指定軸にトランスフォームを制限すると同時に、その軸に沿う移動量を数値で指定します。入力された数値は 3Dビューウィンドウの左下隅に表示されます。入力中にバックスペースを押すと数値指定オプションを取り消しますが、オブジェクトの軸制限は同じままで、数字を入力し直すことができます。x/y/z キーを押すといつでも、制限軸を変えることができます。特定位置に移動させたり、オブジェクト間の距離を増やしたりするのに使えます。

Orientations

(座標系)

すべてのトランスフォームで5種類の座標系を使えます。

座標系の選択メニュー
  • グローバル(Global、デフォルト)
  • ローカル(Local)
  • 法線(Normal)
  • ジンバル(Gimbal)
  • ビュー(View)

座標系についてもっと詳しく >>

座標系に従ってトランスフォームは行われます。座標系はマニピュレータの選択ウィジェットの横にある、ポップアップメニューから選べます。

G キーに続けて Xx/Yy/Zzのいずれかを入力すると、そのままそのローカル軸に沿った移動が可能になります。もちろん、さらに数字を続けて移動量を指定することもできます。
上の操作に似ていますが、G キーに続けて ⇧ ShiftXx/Yy/Zzのいずれかを入力すると、そのままローカルの指定軸以外の2軸による平面に移動が制限されます。


数値入力の表示


Other Editor Windows

(その他のエディタウィンドウ)

UV/画像エディタツール、シーケンスエディタドープシートグラフエディタ といった他のエディタウィンドウでは、移動操作は文脈に応じたオブジェクトや要素を動かすのに使われます。 ただし3Dビューとは違って(このページが'3D インタラクション'セクションにあるにも関わらず)通常は XY の2つの軸しか表示されませんが、これらのオブジェクトや要素は 3D インターフェースに現れます。Blender は単に、3番目になり得る軸の動きを拘束するだけです。 3Dビューで使ったショートカットの大半は、これらのエディタウィンドウでも使えます。回転や拡大縮小など他のすべてのトランスフォームでも同じです。

Python Scripting

(Python スクリプトの記述)

Blender では Python スクリプトを記述してオブジェクトや要素を特定位置に移動することもできます。これには Python の対話コンソールを使うか、テキストエディタウィンドウで Python スクリプトを実行します。


現在のオブジェクトの位置ベクトル
bpy.context.scene.objects.active.location

シーン内のアクティブオブジェクトの位置ベクトルを返します。位置ベクトルに別の値を割り当ててオブジェクトの位置を変えることができます。

アクティブオブジェクトの移動オペレータと構文
bpy.ops.transform.translate(value=(<DX>, <DY>, <DZ>), constraint_axis=(<bool>, <bool>,<bool>), constraint_orientation='<ORIENTATION NAME>', mirror=<bool>, proportional='<ENABLE?DISABLE>', proportional_edit_falloff='<FALLOFF TYPE>', proportional_size=<INT>, snap=<bool>, snap_target='<SNAP TARGET>', snap_point=<x,y,z>, snap_align=<bool>, snap_normal=<x,y,z>, texture_space=<bool>, release_confirm=<bool>)

Hints

(ヒント)

  • オブジェクトモードでの移動は、編集モードですべての頂点/辺/面を選択してオブジェクトを移動するのとはまったく違います。こうしてしまうとオブジェクトに用いるトランスフォームの中心が混乱するでしょう。
  • グローバル座標系以外でショートカット G → x/y/z を使うと、その座標系の X軸ではなく、グローバル座標系の X軸だけに移動が制限されます。