Outlinerの木構造を辿る

オブジェクトを選択してその子孫のオブジェクトをまとめて処理する方法が欲しかったので調べてみた。
APIリファレンス
http://www.blender.org/documentation/245PythonDoc/index.html
を眺めた感じだとObjectにgetChildren()的なものは無かったがgetParent()があるので逆向きに辿るスクリプトを作ってみた。
動作はアクティブなオブジェクトそれ自身と子孫すべてに対して順に処理するというもの。
処理内容のほうはとりあえず「3Dビューでの非表示」「3Dビューでの非表示の取り消し」「選択状態にする」を作ってみた。

http://gunload.web.fc2.com/blender/
に置いておきました。