#include <osgDB/Input>
#include <osgDB/Output>
+#include <simgear/scene/util/OsgMath.hxx>
+
#include "SGTranslateTransform.hxx"
SGTranslateTransform::SGTranslateTransform() :
osg::NodeVisitor* nv) const
{
if (_referenceFrame == RELATIVE_RF) {
- matrix.preMultTranslate((_value*_axis).osg());
+ matrix.preMultTranslate(toOsg(_value*_axis));
} else {
- matrix.setTrans((_value*_axis).osg());
+ matrix.setTrans(toOsg(_value*_axis));
}
return true;
}
osg::NodeVisitor* nv) const
{
if (_referenceFrame == RELATIVE_RF) {
- matrix.postMultTranslate((-_value*_axis).osg());
+ matrix.postMultTranslate(toOsg(-_value*_axis));
} else {
- matrix.setTrans((-_value*_axis).osg());
+ matrix.setTrans(toOsg(-_value*_axis));
}
return true;
}
SGTranslateTransform::computeBound() const
{
osg::BoundingSphere bs = osg::Group::computeBound();
- bs._center += _axis.osg()*_value;
+ bs._center += toOsg(_axis)*_value;
return bs;
}
fr += 3;
else
return false;
- trans.setAxis(SGVec3d(axis));
+ trans.setAxis(toSG(axis));
}
if (fr[0].matchWord("value")) {
++fr;