The problem is that after state.setJointGroupPositions(jmg_, values_) the state is not updated. Therefore when followed by a call to an IKConstraintSampler, the robot state is actually dirty, thus causing the warning message.
Fix: Just by adding state.update() after the state.setJointGroupPositions(jmg_, values_) in above code solves the problem.
Problem: when planning with joint constraints, warning message "Returning dirty link transformation" keeps popping up.
Problem location: I have tracked the problem down to the following function in moveit_core/constraint_samplers/src/default_constraint_samplers.cpp:
The problem is that after
state.setJointGroupPositions(jmg_, values_)
the state is not updated. Therefore when followed by a call to an IKConstraintSampler, the robot state is actually dirty, thus causing the warning message.Fix: Just by adding
state.update()
after thestate.setJointGroupPositions(jmg_, values_)
in above code solves the problem.