ジャンプ先: 概要. 戻り値. 関連. フラグ. Python 例.

概要

constrain([barrier=boolean], [damping=float], [directionalHinge=boolean], [hinge=boolean], [interpenetrate=boolean], [nail=boolean], [name=string], [orientation=[float, float, float]], [pinConstraint=boolean], [position=[float, float, float]], [restLength=float], [spring=boolean], [stiffness=float])

注: オブジェクトの名前と引数を表す文字列は、カンマで区切る必要があります。これはシノプシスに示されていません。

constrain は、取り消し可能、照会可能、および編集可能です。

このコマンドは、リジッドボディをワールド、あるいは他のリジッド ボディにコンストレイントします。

戻り値

なし

照会モードでは、戻り値のタイプは照会されたフラグに基づきます。

関連

rigidBody, rigidSolver

フラグ

barrier, damping, directionalHinge, hinge, interpenetrate, nail, name, orientation, pinConstraint, position, restLength, spring, stiffness
ロング ネーム(ショート ネーム) 引数タイプ プロパティ
barrier(br) boolean createquery
バリア コンストレイントを作成します。このコマンドでは、1 つのリジッド ボディが必要です。
damping(d) float createqueryedit
ダンピング定数を設定します。既定値: 0.1 範囲: -1000.0 ~ 1000.0
directionalHinge(dhi) boolean createquery
一方向のヒンジ コンストレイントを作成します。このコマンドでは、2 つのリジッド ボディが必要です。一方向のヒンジは、常に初期の軸方向を保持します。
hinge(hi) boolean createquery
ヒンジ コンストレイントを作成します。このコマンドでは、1 つまたは 2 つのリジッド ボディが必要です。
interpenetrate(i) boolean createqueryedit
コンストレイントで定義されたリジッド ボディの貫通を許可(あるいは禁止)します。
nail(na) boolean createquery
ネイル コンストレイントを作成します。このコマンドでは、1 つのリジッド ボディが必要です。
name(n) string createqueryedit
リジッド コンストレイントに名前を付けます。
orientation(o) [float, float, float] createqueryedit
ワールド空間での、コンストレイントの初期方向を設定します。このコマンドは、ヒンジとバリア コンストレイントについてのみ有効です。既定値: 0.0 0.0 0.0
pinConstraint(pin) boolean createquery
ピン コンストレイントを作成します。このコマンドでは、2 つのリジッド ボディが必要です。
position(p) [float, float, float] createqueryedit
ワールド空間での、コンストレイントの初期位置を設定します。既定値: 単コンストレイントの場合は 0.0 0.0 0.0 で、複コンストレイントの場合はボディの中間点です。
restLength(rl) float createqueryedit
レスト長を設定します。既定値: 1.0
spring(s) boolean createquery
スプリング コンストレイントを作成します。このコマンドでは、1 つまたは 2 つのリジッド ボディが必要です。
stiffness(st) float createqueryedit
スプリングの固さの定数を設定します。既定値: 5.0

フラグはコマンドの作成モードで表示できます フラグはコマンドの編集モードで表示できます
フラグはコマンドの照会モードで表示できます フラグに複数の引数を指定し、タプルまたはリストとして渡すことができます。

Python 例

import maya.cmds as cmds

# "Nail" a rigid body at position <<0.0, 2.5, 0.0>>
#
cmds.constrain( 'rigidBody1', nail=True, p=(0, 2.5, 0) )

# "Pin" two rigid bodies together at the position <<0.0, 2.5, 0.0>>.
#
cmds.constrain( 'rigidBody1', 'rigidBody2', pin=True, n='pin', p=(0, 2.5, 0) )

# "Hinge" a rigid body at the position <<0.0, 2.5, 0.0>>.
#
cmds.constrain( 'rigidBody1', hinge=True, p=(0, 2.5, 0) )

# Create a barrier for a rigid body which will not allow the rigid body
# to fall below (in y by default) the plane defined by the
# barrier point <<0.0, 2.5, 0.0>>.
#
cmds.constrain( 'rigidBody1', barrier=True, p=(0, 2.5, 0) )

# Add a "Spring" to a rigid body at the position <<0.0, 2.5, 0.0>>
# connected on the rigid body at point <<0, 0, 0>>
#
cmds.constrain( 'rigidBody1', spring=True, name='spring', p=(0, 2.5, 0), rl=1.0 )