これはなに?
これの続きです
Wrangle x Python本やってみたメモ [1]
http://qiita.com/it_ks/items/baba553ca587ed52a316
前回はp.10に載っていたとこでした。
今回はp.11~p.15らへんまでのPython例文に取り組んでみます
承前
Houdini実践ハンドブックWrangle×Pythonは
サークル『魔法の蒸留水』さん制作の本です
http://majou.jp/archives/667/
気になる方はこちらでどぞ って思ってたんですが
https://www.toranoana.jp/mailorder/article/04/0030/38/99/040030389986.html
今見たら無くなってますね!
サークル在庫があったらイベント等で買えるかも知れません。
hmath.buildRotate
p.11 回転。
for point in geo.points():
pos = point.position()
mtx = hou.hmath.buildRotate(0,45,0)
pos = pos*mtx
point.setPosition(pos)
ちなみにですが、
もうひとつGridつくってテンプレートにして
元の状態と回転後とを比較してます。
find/add/set attribute
p.14のアトリビュートもにょもにょ
ふと冒頭行が
hou.pwd().geometry()
になってるのが味わいでした。
evalParm
p.15、evalParmを使ってのパラメータから値を取得。
まずパラメータを作っておかねばなりません。
パラメータ作成
パラメータパネルの右上のアクションメニューから、
「Edit Parameter Interface...」
左カラムでデータ型を選択し、右カラムへ。
(ドラッグアンドドロップでもいいですし、カラム仕切りにある矢印でもOK)
パラメータ名などは本の指示通りに変更。
> Python Code欄の下にスライダーが現れます。
実行
まとめ
面白くなってきやがったじゃねーの
(それにつけてもパラメータ追加時のデータ型の豊富さ。頼もしいですね)
参考
Edit Parameter Interfaceウィンドウ
http://sidefx.jp/doc/ref/windows/edit_parameter_interface.html
Geometry > findPointAttrib
http://sidefx.jp/doc/hom/hou/Geometry.html#findPointAttrib
Geometry > addAttrib
http://sidefx.jp/doc/hom/hou/Geometry.html#addAttrib
Point > setAttribValue
http://sidefx.jp/doc/hom/hou/Point.html#setAttribValue