Flash 如何在away3D中获得顶级儿童?

Flash 如何在away3D中获得顶级儿童?,flash,actionscript-3,3d,away3d,Flash,Actionscript 3,3d,Away3d,我有一个关于away3D的小问题。我有一些尺寸完全相同的立方体,它们被放置在同一个地方。单击多维数据集堆栈时,我希望注册对我最后添加的多维数据集的单击。不是这样做,而是在我首先添加的多维数据集上注册单击 我找到了一种方法来改变容器中立方体的位置,并尝试将元素放在childrenArray的末尾(下面的代码)和开头,但似乎没有任何效果。我真的被困在这里了,所以如果有人知道如何在单击堆栈时获取顶级元素,我很乐意听到 //We get the targetCube's childIndex. for(

我有一个关于away3D的小问题。我有一些尺寸完全相同的立方体,它们被放置在同一个地方。单击多维数据集堆栈时,我希望注册对我最后添加的多维数据集的单击。不是这样做,而是在我首先添加的多维数据集上注册单击

我找到了一种方法来改变容器中立方体的位置,并尝试将元素放在childrenArray的末尾(下面的代码)和开头,但似乎没有任何效果。我真的被困在这里了,所以如果有人知道如何在单击堆栈时获取顶级元素,我很乐意听到

//We get the targetCube's childIndex.
for(var i:uint = 0; i < _3DContent.children.length; i++)
{
    if(_targetCube == _3DContent.children[i])
        break;
}

//Now we rearrange the array if the targetCube is different from
//the last cube in our list of children.
if(i != _3DContent.children.length-1)
{
    //We reposition the children.
    for(var j:uint = i; j < _3DContent.children.length-1; j++)
        _3DContent.children[j] = _3DContent.children[j+1];

    //Lastly, we push the child.
    _3DContent.children[_3DContent.children.length-1] = _targetCube;
}
//我们得到targetCube的childIndex。
对于(变量i:uint=0;i<3DContent.children.length;i++)
{
if(_targetCube==_3DContent.children[i])
打破
}
//现在,如果targetCube与
//我们的孩子列表中的最后一个立方体。
如果(i!=\3DContent.children.length-1)
{
//我们重新定位孩子们。
对于(变量j:uint=i;j<3DContent.children.length-1;j++)
_3DContent.children[j]=3DContent.children[j+1];
//最后,我们推孩子。
_3DContent.children[\u 3DContent.children.length-1]=\u targetCube;
}

我通过使用不同的渲染器解决了这个问题。创建视图时,应将其作为参数传递,如下所示

_view = new View3D({renderer: Renderer.CORRECT_Z_ORDER});