|
这是我在osgearth中做的一个实体位置和姿态的一个实验,姿态总是对不上,经纬度的变换没有问题,请问姿态还要进行怎样的处理
virtual void operator() (osg::Node* node, osg::NodeVisitor* nv)
{
osg::Matrixd matrix;
osg::MatrixTransform* transform = dynamic_cast<osg::MatrixTransform*>(node);
if (nv && transform && nv->getFrameStamp())
{
double time = nv->getFrameStamp()->getReferenceTime();
placer-> createPlacerMatrix( 0.0,0.0+0.1*cosf(time),15000.0 , matrix );
transform->setMatrix(osg::Matrix::scale(1500.0,1500.0,1500.0)*osg::Matrix::rotate(90.0,0.0,0.0,1.00)*matrix);
}
traverse(node,nv);
} |
|