Add a reference time to the velocity stuff.

Modified Files:
	simgear/scene/model/ModelRegistry.cxx
	simgear/scene/model/placement.cxx
	simgear/scene/model/placement.hxx
	simgear/scene/util/SGSceneUserData.hxx
This commit is contained in:
frohlich
2009-03-14 12:26:30 +00:00
committed by Tim Moore
parent 679db5a22b
commit 9eb5cf6c98
3 changed files with 12 additions and 0 deletions

View File

@@ -135,6 +135,15 @@ SGModelPlacement::setOrientation (const SGQuatd& orientation)
orientation.getEulerDeg(_heading_deg, _pitch_deg, _roll_deg);
}
void
SGModelPlacement::setReferenceTime(const double& referenceTime)
{
SGSceneUserData* userData;
userData = SGSceneUserData::getOrCreateSceneUserData(_transform);
SGSceneUserData::Velocity* vel = userData->getOrCreateVelocity();
vel->referenceTime = referenceTime;
}
void
SGModelPlacement::setBodyLinearVelocity(const SGVec3d& linear)
{

View File

@@ -73,6 +73,7 @@ public:
double heading_deg);
void setOrientation(const SGQuatd& orientation);
void setReferenceTime(const double& referenceTime);
void setBodyLinearVelocity(const SGVec3d& velocity);
void setBodyAngularVelocity(const SGVec3d& velocity);

View File

@@ -51,10 +51,12 @@ public:
Velocity() :
linear(SGVec3d::zeros()),
angular(SGVec3d::zeros()),
referenceTime(0),
id(simgear::BVHNode::getNewId())
{}
SGVec3d linear;
SGVec3d angular;
double referenceTime;
simgear::BVHNode::Id id;
};
const Velocity* getVelocity() const