at level および in

at level <node> および in <node> コンテキストは、コンテキスト内で指定されているノードを指定したすべてのパス名のルートとして、あるいは作成したシーン オブジェクトとして設定します。これらのコンテキストは、指定されているノードを自動的にコンテキスト内のパス名の先頭に追加します。また、これらのコンテキストは、コンテキスト内で作成されたシーン オブジェクトに対して指定されているノードを親として設定します。

シーン内の任意のオブジェクトに名前を付けるために、レベル コンテキスト内でパス名を使うには、そのときのワーキング レベルにルート扱いのパス名を使って上書きします。このパス名では、第1レベル名の前に「/」が付いています。つまり、「 オブジェクト ツリーの実際のルートで開始する」ことを意味します。

例:

scale $/baz/* [1,1,2]

実際のトップ レベルでは、そのときのワーキング レベルの子としてではなく baz 上で処理が行われます。

このルート扱いのパス名形式を使うと、オブジェクトの名前を指定するときに、パス名としてトップ レベル オブジェクトだけを対象にできます。

例:

$foo

foo という名前のオブジェクトを全レベルのシーン全体から検索します。

しかし

$/foo

foo という名前のトップ レベル オブジェクトだけを検索します。

例:

in $mannequin01...LClav...hand --set context to hand
$mannequin01.spine.LClav.arm.hand
(
rotate $thumb1 15 y_axis --rotate hand's child thumb
rotate $finger11 10 y_axis --rotate hand's child first finger
PalmCenter=$finger21.parent.pos --get hand's position
PalmCenter+=(LHandPos-$finger21.pos)/2.--calculate center of palm
--create a dummy there, dummy is a child of the hand:
dummy name:"palmLink" pos:PalmCenter
)
in $dummy
(
-- create automatically as children of $dummy:
sphere name:"ear1" pos:[10,10,10]
sphere name:"ear2" pos:[-10,10,10]
scale $foo/* [1,1,2] --look for 'foo' as a child of $dummy
)