階層構造をたどる (スクリプト)
階層構造をたどるスクリプトです。
階層は木構造で再帰的になっています。
階層をたどるときの相対的な名称については「シーンの階層構造をたどるときの相対的な名称 (スクリプト)」もご参照ください。
scene = xshade.scene()
shape = scene.active_shape()
# 階層をたどる再帰.
def traceHierarchy(depth, shape):
indentStr = "";
for i in range(depth):
indentStr += " ";
print( indentStr + shape.name )
if shape.has_son:
s = shape.son
while s.has_bro:
s = s.bro
traceHierarchy(depth + 1, s)
# shapeから階層構造をたどって出力.
traceHierarchy(0, shape)
以下のようなブラウザ構成で、ルートパートを選択した状態で上記のスクリプトを実行します。
出力は以下のようになります。
ルートパート
パート1
球1
球2
パート2
ポリゴンメッシュ