|
osg::ref_ptr<osg::Group> MainRoot这是根节点其他一切节点均在这个上面,如果我在MainRoot上在加个组节点叫_GroupNodes (这个节点不会发生移动一直是默认状态),在_GroupNodes加一些可移动的节点比如叫Node1,Node2......
那么:
unsigned int nPos = 0;
unsigned int nNumChildrenToR = _GroupNodes->getNumChildren();
for (;nPos<nNumChildrenToR;)
{
osg::Node* pNode;
pNode = _GroupNodes->getChild(nPos);
//世界坐标位置
osg::NodePath np = pNode->getParentalNodePaths()[0];
osg::Matrix _dItemsMatrix; = osg::computeLocalToWorld(np);
nPos++;
}
获取的 dItemsMatrix 时相对于谁的?是相对与osg控件XYZ轴的么?
如果MainRoot/_GroupNodes 不做任何操作(移动旋转什么的),_dItemsMatrix是不是 也可以认为是Node1在GroupNodes 上的状态? |
|