![]() |
RobWorkProject
25.2.11-
|
Allows constraining the motion between two bodies in ODE simulation. More...
#include <ODEConstraint.hpp>
Public Member Functions | |
ODEConstraint (rw::core::Ptr< const rwsim::dynamics::Constraint > constraint, const ODEBody *const parent, const ODEBody *const child, const ODESimulator *const simulator) | |
Construct a new ODE implementation of a Constraint. More... | |
virtual | ~ODEConstraint () |
Destructor. | |
void | update (const rwlibs::simulation::Simulator::UpdateInfo &dt, rw::kinematics::State &state) |
Called before collision checking and time stepping. More... | |
void | setLoStop (std::size_t dof, double limit) const |
void | setHiStop (std::size_t dof, double limit) const |
Allows constraining the motion between two bodies in ODE simulation.
This is the ODE implementation of rwsim::dynamics::Constraint
Please see the ODE Wiki for details on the different joint types.
ODEConstraint | ( | rw::core::Ptr< const rwsim::dynamics::Constraint > | constraint, |
const ODEBody *const | parent, | ||
const ODEBody *const | child, | ||
const ODESimulator *const | simulator | ||
) |
Construct a new ODE implementation of a Constraint.
constraint | [in] the RobWork constraint. |
parent | [in] the parent ODEBody. |
child | [in] the child ODEBody. |
simulator | [in] the ODESimulator that creates this constraint. |
void setHiStop | ( | std::size_t | dof, |
double | limit | ||
) | const |
Set or change a higher limit for a constraint.
dof | [in] the degree of freedom to set (0 or 1). |
limit | [in] the limit to set. |
void setLoStop | ( | std::size_t | dof, |
double | limit | ||
) | const |
Set or change a lower limit for a constraint.
dof | [in] the degree of freedom to set (0 or 1). |
limit | [in] the limit to set. |
void update | ( | const rwlibs::simulation::Simulator::UpdateInfo & | dt, |
rw::kinematics::State & | state | ||
) |
Called before collision checking and time stepping.
dt | [in] info related to the timestep. |
state | [in/out] the state is updated with new values. |