Skip to content
Snippets Groups Projects
Commit 8630fc80 authored by Raphael Grimm's avatar Raphael Grimm
Browse files

Add functions to get/set scaled joint values

parent 18a50ae7
No related branches found
No related tags found
No related merge requests found
......@@ -22,6 +22,8 @@
*/
#pragma once
#include <SimoxUtility/math/scale_value.h>
#include "../VirtualRobot.h"
#include "../VirtualRobotException.h"
#include "../SceneObject.h"
......@@ -248,6 +250,27 @@ namespace VirtualRobot
return jointLimitLo;
}
inline float scaleJointValue(float val, float min = -1, float max = 1)
{
return simox::math::scale_value_from_to(val, jointLimitLo, jointLimitHi, min, max);
}
inline float unscaleJointValue(float val, float min = -1, float max = 1)
{
return simox::math::scale_value_from_to(val, min, max, jointLimitLo, jointLimitHi);
}
inline float getScaledJointValue(float min = -1, float max = 1)
{
return scaleJointValue(getJointValue(), min, max);
}
inline void setScaledJointValue(float val, float min = -1, float max = 1)
{
setJointValue(unscaleJointValue(val, min, max));
}
inline void setScaledJointValueNoUpdate(float val, float min = -1, float max = 1)
{
setJointValueNoUpdate(unscaleJointValue(val, min, max));
}
/*!
Set maximum velocity of this joint in rad/s or m/s.
To disbale max. velocity set to -1.0f.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment