Hello forum,<br><br><br>I am trying to rorate an object continuously through a call back. Before calling the calback i am doing some affine transformation over that object<br>The final rendered the scaled down to a tiny object . In the callback subclass i am overloading the () operator and i am performing the rotation, not any <br>
kind of scaling down.<br><br><br>**********************code**************************'<br>class RotateCB : public osg::NodeCallback<br>{<br>public:<br>  RotateCB() : m_angle(0) { }<br><br>  virtual void operator()(osg::Node *node,<br>
              osg::NodeVisitor *nv)<br>  {<br>    /*<br>      Normally, check to make sure that we have an update<br>      visitor, not necessary in this simple example<br>     */<br><br>    osg::MatrixTransform * mtLeft = dynamic_cast<osg::MatrixTransform*>(node);<br>
    osg::Matrix mR;<br>    mR.makeRotate(m_angle, osg::Vec3(0.0f,0.0f,1.0f));<br><br>    mtLeft->setMatrix(mR);<br><br>    //Increment the angle for the next from<br>    m_angle += 0.01;<br><br><br>    /*<br>      Continue traversing so  that OSG can process <br>
      any other nodes with callbacks<br>     */<br>    traverse(node,nv);<br>  }<br><br><br>.................................<br><br>................................<br><br><br>  osg::ref_ptr<osg::MatrixTransform> teapotPos = new osg::MatrixTransform;<br>
  osg::Matrix teapotTransMat;<br>  osg::Matrix teapotScaleMat;<br>  osg::Vec3f teapotTransVec = osg::Vec3f(5,2,-12);<br>  osg::Vec3f teapotScaleVec = osg::Vec3f(20.1f,20.1f,20.1f);<br>  teapotTransMat.makeTranslate(teapotTransVec);<br>
  teapotScaleMat.makeScale(teapotScaleVec);<br><br>  teapotPos->setMatrix(teapotTransMat * teapotScaleMat);<br><br>  //SET  THE data variance to dynamic to let OSG know that <br>  //we shall modify this node during update traversal<br>
  teapotPos->setDataVariance(osg::Object::DYNAMIC);<br><br><br>  //SET  THE update callback<br>  teapotPos->setUpdateCallback(new RotateCB);<br><br>................................................<br><br><br>...................................................<br>
<br><br><br><br><br><br><br>*****************************************************'<br><br><br><br>Any hint?<br><br><br>Sajjad<br>