ジャンプ先: 概要. 戻り値.
関連項目. フラグ. Python 例.
collision( [objects] , [friction=float], [name=string], [resilience=float])
注意:
オブジェクト名や引数を表す文字列はカンマで区切ります。これは概要には示されていません。
collision は 「元に戻す」が可能、「照会」が可能、「編集」が可能 です。
collision コマンドは、パーティクルをジオメトリと衝突させます。 また、コリジョンのサーフェス
プロパティ(摩擦と弾性)の値を指定することもできます。この値は、ジオメトリ オブジェクトの geoConnector
ノードに格納されます。Maya の以前のバージョンとは異なり、分離した「コリジョン ノード」はありません。 ソフト
オブジェクトがセレクション リスト内にある場合、collision コマンドは、これをコライダにすると仮定します。ソフト
オブジェクトを何かと衝突させるには、connectDynamic -c を使用します。コリジョン(Collision)メニュー
オプションは最重要オブジェクト規則を使用してこれを分類し、必要なコマンドを発行します。 作成時、このコマンドは、パーティクル
コリジョン用に設定したジオメトリ名の文字配列を返します。このコマンドを使用して情報を照会すると、返される可能性のあるタイプが複数あります。
これには次のようなケースがあります。
string[] |
パーティクル コリジョン用に設定したジオメトリ名。 |
戻り値の型は照会モードでは照会フラグが基になります。
event, particle
friction, name,
resilience
ロング ネーム(ショート ネーム) |
引数型 |
プロパティ |
name(n) |
string |
|
|
このフラグは現在サポートしていません。Maya 2.0 ですでに「コリジョン
ノード」はありませんでした。したがって必要ありません。コリジョンのマニュアルを参照してください。このフラグは、古いバージョンの
Maya で記述されたスクリプトを実行する目的のためだけに含まれています。 警告メッセージが発生しますが、問題ありません。 |
|
resilience(r) |
float |
|
|
サーフェスの弾性です。これは、サーフェスの法線に沿って反映される、衝突するパーティクルの速度です。サーフェスの法線に沿って、値が 1
の場合に完全に反映され、0 の場合にまったく反映されません。 |
|
friction(f) |
float |
|
|
サーフェスの摩擦です。これは、パーティクルが衝突する場合に減速される、衝突するパーティクルのサーフェスに対して平行な速度です。
値 0 では接線速度はまったく失われず、値 1 ではパーティクルはサーフェスの法線に沿ってまっすぐに反映します。 |
|
: コマンドの作成モードで使用可能なフラグ |
: コマンドの編集モードで使用可能なフラグ |
: コマンドの照会モードで使用可能なフラグ |
: タプルまたはリストとして渡された複数の引数を持てるフラグ |
import maya.cmds as cmds
cmds.collision( 'nurbsSphere1', 'particle1', r=.75, f=.1 )
# Causes particles of particle1 to collide with nurbsSphere1,
# and sets a resilience value of 0.75 and a friction value of 0.1
# for the surface.
cmds.collision( 'nurbsSphere1', q=True, f=1 )
# Returns the friction value stored in the geoConnector for nurbsSphere1.
cmds.collision( 'particleShape1', 'nurbsSphere1', q=True, f=1 )
# Returns the friction value that particleShape1 is using for collisions
# against nurbsSphere1. This may be the same as the friction stored in
# nurbsSphere1's geoConnector. Or, if the user broke that connection,
# then it is whatever value is in the particleShape1's collisionFriction
# attribute that is used for collision with nurbsSphere1.
cmds.collision( 'nurbsSphere1', 'particleShape1', q=True )
# Returns whether or not particleShape1 is checking for collisions
# against nurbsSphere1.
cmds.collision( 'particleShape1', q=True )
# Returns all of the geometries that particleShape1 is colliding with.