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

概要

keyTangent( [objects] , [absolute=boolean], [animation=string], [attribute=string], [controlPoints=boolean], [float=floatrange], [g=boolean], [hierarchy=string], [inAngle=angle], [inTangentType=string], [inWeight=float], [includeUpperBound=boolean], [index=uint], [ix=float], [iy=float], [lock=boolean], [outAngle=angle], [outTangentType=string], [outWeight=float], [ox=float], [oy=float], [pluginTangentTypes=string], [relative=boolean], [shape=boolean], [stepAttributes=boolean], [time=timerange], [unify=boolean], [weightLock=boolean], [weightedTangents=boolean])

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

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

このコマンドは、キーセット上に作用します。キーセットは、1 つまたは複数のアニメーション カーブ上の指定したタイム レンジ内のキー グループとして定義されます。

キーセットを構成するアニメーション カーブは、「-animation」フラグの値に依存します。

-animation フラグを使用して、「translateX」など attributeName という形式の引数を取る、多目的な -attribute フラグによって固有に識別されるカーブをオーバーライドすることができます。

アニメーション カーブ上の各キーは、カーブの時間値またはインデックスによって識別されます。時間とインデックスは、単独にあるいはリストの一部または範囲として指定することができます(例を参照)。

このコマンドは、キーセットにあるキーフレームの接線プロパティを編集/照会します。このコマンドは、新規に作成したキーフレームの既定接線タイプを編集したり照会するためにも使います(この既定をオーバーライドする方法の詳細については、setKeyframe コマンドを参照してください)。

接線は、アニメーション カーブのシェイプを管理するために役立ち、キー間の補間に影響を及ぼします。接線角度は、カーブがキーを離れる(または入る)ときにカーブがとる方向を指定します。接線ウェイトは、カーブが次のキーに向かって開始する前にこのカーブに接線角度が影響する度合いを指定します。

Maya は、x 値と y 値で内部的に接線を表します。接線角度やウェイト、内部 x 値、内部 y 値の間の関係の説明については、MFnAnimCurve 用の API のマニュアルを参照してください。

戻り値

int接線が修正されたカーブの数。

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

関連

copyKey, cutKey, findKeyframe, keyframe, keyframeOutliner, keyframeStats, pasteKey, scaleKey, setInfinity, snapKey

フラグ

absolute, animation, attribute, controlPoints, float, g, hierarchy, inAngle, inTangentType, inWeight, includeUpperBound, index, ix, iy, lock, outAngle, outTangentType, outWeight, ox, oy, pluginTangentTypes, relative, shape, stepAttributes, time, unify, weightLock, weightedTangents
ロング ネーム(ショート ネーム) 引数タイプ プロパティ
absolute(a) boolean createedit
接線位置への変更が現行位置に絶対的になります。
animation(an) string create
このコマンドが、自身が影響を与えるアニメーションを取得する場所です。有効な値は「objects」、「keys」、「keysOrObjects」で、既定は「keysOrObjects」です(詳細については、説明を参照してください)。
attribute(at) string createmultiuse
選択するアトリビュートのリストです。

照会モードでは、このフラグに値が必要になります。

controlPoints(cp) boolean create
このフラグは、アトリビュートのリストにシェイプのコントロール ポイントを含めるかどうかを明示的に指定します(「-s」フラグを参照)。既定: false(「pasteKey」コマンドでは無効)。

照会モードでは、このフラグに値が必要になります。

float(f) floatrange createmultiuse
時間ベースの animCurve 上の時間ベースでないキー(またはキー レンジ)を固有に表す値です。有効な floatRange は、単一の値(-f 10)、または上下限をコロンで区切った文字列(-f "10:20")です。

照会モードでは、このフラグに値が必要になります。

g(g) boolean create
グローバル接線タイプを操作する場合に指定します。グローバル接線タイプは、カーブのシェイプを保持する「i/insert」などのフラグと組み合わせる場合を除いて、接線タイプが特別に適用されていない場合に、setKeyframe コマンドで使用されます。キーをメニューから設定するときにも使われます。keyTangent コマンドで「g/global」フラグと一緒に使用できるフラグは、「itt/inTangentType」、「ott/outTangentType」、および「wt/weightedTangents」のみです。
hierarchy(hi) string create
階層展開オプションです。有効な値は、「above」、「below」、「both」、「none」です。(「pasteKey」コマンドでは無効)。

照会モードでは、このフラグに値が必要になります。

inAngle(ia) angle createqueryedit
イン接線の角度用の新規の値を指定します。照会すると float[] を返します。
inTangentType(itt) string createqueryedit
イン接線タイプを指定します。有効な値は、「spline」、「linear」、「fast」、「slow」、「flat」、「step」、「stepnext」、「fixed」、「clamped」、「plateau」、「auto」です。照会すると string[] を返します。
inWeight(iw) float createqueryedit
イン接線のウェイトの新しい値を指定します。照会すると float[] を返します。
includeUpperBound(iub) boolean create
-t/time または -f/float フラグがキーの範囲を表す場合に、範囲の上限のキーをキーセットに含めるかどうかを定義します。既定値: true。このフラグは、-t/time フラグの引数が上下限が指定したタイム レンジである場合に限り有効です(「pasteKey」コマンドでこのフラグを使用するときに「replace」、「fitReplace」、「scaleReplace」などのオプションを指定すると、このフラグは、置き換えられるターゲット カーブの時間範囲のみを参照します。このフラグは、クリップボードからペーストされたカーブには影響しません)。
index(index) uint createmultiuse
アニメーション カーブ上のキーのインデックス

照会モードでは、このフラグに値が必要になります。

ix(ix) float createqueryedit
イン接線の x コンポーネントの新しい値を指定します。接線コンポーネントの単位に依存しない表現です。照会すると float[] を返します。
iy(iy) float createqueryedit
イン接線の y コンポーネントの新しい値を指定します。接線コンポーネントの単位に依存しない表現です。照会すると float[] を返します。
lock(l) boolean createqueryedit
イン接線とアウト接線が一緒に動くように接線をロックします。照会すると int[] を返します。
outAngle(oa) angle createqueryedit
アウト接線の角度の新しい値を指定します。照会すると float[] を返します。
outTangentType(ott) string createqueryedit
アウト接線タイプを指定します。有効な値は、「spline」、「linear」、「fast」、「slow」、「flat」、「step」、「stepnext」、「fixed」、「clamped」、「plateau」、「auto」です。照会すると string[] を返します。
outWeight(ow) float createqueryedit
アウト接線のウェイトの新しい値を指定します。照会すると float[] を返します。
ox(ox) float createqueryedit
アウト接線の x コンポーネントの新しい値を指定します。接線コンポーネントの単位に依存しない表現です。照会すると float[] を返します。
oy(oy) float createqueryedit
アウト接線の y コンポーネントの新しい値を指定します。接線コンポーネントの単位に依存しない表現です。照会すると float[] を返します。
pluginTangentTypes(ptt) string query
ロードされたプラグイン接線タイプのリストを返します。戻り値は文字配列です。
relative(r) boolean createedit
接線位置への変更が現行位置に相対的になります。
shape(s) boolean create
トランスフォームの下にあるシェイプのアトリビュート(「controlPoints」以外)も考慮します。既定: true(「pasteKey」コマンドでは無効)。

照会モードでは、このフラグに値が必要になります。

stepAttributes(sa) boolean createedit
setKeyframe コマンドは、ブーリアンと列挙型アトリビュート用の接線をステップに自動的に設定します。このフラグは、この動作を keyTangent コマンド用にミラーリングします。false に設定すると、これらのアトリビュート用の接線は編集されません。true (既定)に設定すると、これらのアトリビュート用の接線は編集されます。
time(t) timerange createmultiuse
時間ベースのアニメーション カーブ上のキー(またはキー レンジ)を固有に表す時間です。単一のフレームまたはフレーム範囲の設定方法については、以下のコード例を参照してください。

照会モードでは、このフラグに値が必要になります。

unify(uni) boolean createedit
イン接線とアウト接線が等しくなって、一緒に移動するよう接線を統一します。
weightLock(wl) boolean createqueryedit
接線が固定するように接線のウェイトをロックします。照会すると int[] を返します。注: weightLock はグラフ エディタ内でだけ有効です。-inWeight/-outWeight がコマンドから使用されたときは、無効です。
weightedTangents(wt) boolean createqueryedit
アニメーション カーブ上の接線がウェイトをかけられているかどうかを指定します。注: カーブの weightedTangents を true から false にし、また true に戻すと、固定された接線を正しく保持できません。元に戻すを使用してください。

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

Python 例

import maya.cmds as cmds

# Keys on animation curves are identified by either
# their time values or their indices.  Times and indices can
# be given as a range or list of ranges.

# time=('10pal','10pal') means the key at frame 10 (PAL format).
# time=[(1.0,1.0),('15ntsc','15ntsc'),(20,20)] means the keys at time 1.0 second, frame 15 (in NTSC format), and time 20 (in the currently defined global time unit).
# time=(10,20) means all keys in the range from 10 to 20, inclusive, in the current time unit.
# Omitting one end of a range means "go to infinity", as in the following examples:
# time=(10,) means all keys from time 10 (in the current time unit) onwards.
# time=(0,10) means all keys up to (and including) time 10 (in the current time unit).
# time=() is a short form to specify all keys.
# index=(0,0) means the first key of each animation curve. (Indices are 0-based.)
# index=[(2,2),(5,5),(7,7)] means the 3rd, 6th, and 8th keys.
# index=(1,5) means the 2nd, 3rd, 4th, 5th, and 6th keys of each animation curve.

# Set the in-tangent to spline for all keyframes
# on an object between 1 and 2 seconds.
#
cmds.keyTangent( 'nurbsSphere1', inTangentType='spline', time=('0sec','2sec') )

# Set the angle and value for the out tangent of the
# keyframe at time 5 of nurbsSphere1's translateX.
#
cmds.keyTangent( 'nurbsSphere1', edit=True, time=(5,5), attribute='translateX', absolute=True, outAngle=10, outWeight=5 )