使用 MaxScript 获取(选择)给定骨骼的 CAT 对象

Getting (selecting) CAT Object for given bone with MaxScript

我有一个 CAT 层次结构和一个 selected 骨骼:

我想要 select 与其相关的 CAT 对象(屏幕上的 "triangle")。

我知道我可以通过这种方式从给定骨骼到根骨骼:

local firstBoneName = (skinOps.GetBoneName (ePoly.modifiers[#skin]) 1 0)
local boneParent = getNodeByName firstBoneName 
while (boneParent.parent != undefined) do (
    boneParent = (boneParent.parent)
)

所以现在我有了这个(没有父的根骨骼):

但我想 select 这个:

我怎样才能从一个到另一个

当你已经有了 boneParent 时,这应该可以工作:

root = for obj in (getClassInstances CATParent) where obj.rootHub.node == boneParent do exit with obj.node