ノード上のrampパラメータを評価すると、HoudiniはRampオブジェクトを返します。
hou.Ramp.basisメソッドをコールすることで、パラメータから取得したランプのカーブの“基底”をチェックすることができます。 そのメソッドは、hou.rampBasis値を返します。
Hermite
基底では、そのカーブは 奇数の 制御点を通過し、 偶数の 制御点は前のポイントでの接線を制御します。
詳細は、
WikipediaのHermiteスプラインカーブの記事
を参照してください。
滑らかなカーブを取得するなら、それらの制御点を均等に配置するべきです。
メソッド ¶
__init__(basis, keys, values)
→ float
basis
各キーに1つの値を持ったhou.rampBasis値のシーケンス。
キーのランプ基底は、Houdiniがそのキーから次のキーまでどのように補間するのかを決定します。
Houdiniでは、ランプ基底に関係なく[0,1]
区間外の値を一定に保持します。
keys
各キーに1つの値を持ったfloatシーケンスで、各キーの値は0.0以上1.0以下です。
各キーの値は、[0,1]
区間での位置を意味します。
values
各キーに相当する値のシーケンスです。 キーのない箇所で値を評価すると、Houdiniは、左側のキーの基底関数を使用して、隣接する値を補間します。
このシーケンスは、floatシーケンス または 3-floatのシーケンスの どちらか です。 前者の場合、新しく作成されるランプは、単一の浮動小数点値を評価します。 後者の場合、カラーを評価します。
キーと値のシーケンスが同じサイズでなかった場合や、values
に3エレメント長でないfloatのサブシーケンスが含まれていた場合は、hou.InvalidSizeを引き起こします。
>>> lin = hou.rampBasis.Linear # 2.5から4.5までを線形的に補間するランプを作成します。 >>> r = hou.Ramp((lin, lin), (0, 1), (2.5, 4.5)) >>> r <hou.Ramp is_color=False num_keys=2 data=((t=0, 2.5), (t=1, 4.5))> >>> r.lookup(0.0) 2.5 >>> r.lookup(0.5) 3.5 >>> r.lookup(1.0) 4.5 # 黒から赤までを線形的に補間するカラーランプを作成します。 >>> hou.Ramp((lin, lin), (0, 1), ((0.0, 0.0, 0.0), (1.0, 0.0, 0.2))) <hou.Ramp is_color=True num_keys=2 data=((t=0, rgb=(0, 0, 0)), (t=1, rgb=(1, 1, 1)))>
isColor()
→ bool
これがカラーランプならTrueを、単一浮動小数点ランプならFalseを返します。
colorType()
→ colorType
これがカラーランプなら補間に使用されるカラー空間を返します。 デフォルトはhou.colorType.RGBです。
このランプがカラーランプでない場合は、hou.OperationFailedを引き起こします。
setColorType(hou.colorType)
これがカラーランプなら、補間に使用されるカラー空間を設定します。 デフォルトはhou.colorType.RGBです。
視覚的により均一な補間を得るには、hou.colorType.LABを使用します。 ランプを虹色に合わせるには、hou.colorType.HSVを使用します。
このランプがカラーランプでない場合は、hou.OperationFailedを引き起こします。
lookup(position)
→ float
or tuple
0.0以上1.0未満の範囲で指定した位置のランプの値を返します。
position
がこの範囲外の時、その値はクランプされます。
(浮動小数点値のランプに対しては)floatを、(カラーランプに対しては)3-floatのタプルを返します。
basis()
→ tuple
of hou.rampBasis enum values
Houdiniがランプ内のキー間を補間する方法を決定するための、hou.rampBasis列挙値のタプルを返します。 詳細は、hou.Ramp.__init__を参照してください。
keys()
→ tuple
of float
ランプキーの位置を示す0.0以上1.0以下のfloatのタプルを返します。 詳細は、hou.Ramp.__init__を参照してください。
values()
→ tuple
of float
or tuple
of tuple
of float
各キーに保存されているランプ内の値に相当する(浮動小数点値のランプに対しては)floatのタプルまたは(カラーランプに対しては)3-floatのタプルのタプルを返します。 詳細は、hou.Ramp.__init__を参照してください。
See also |