本文整理汇总了C++中PIDController::solve方法的典型用法代码示例。如果您正苦于以下问题:C++ PIDController::solve方法的具体用法?C++ PIDController::solve怎么用?C++ PIDController::solve使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PIDController
的用法示例。
在下文中一共展示了PIDController::solve方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: getPIDController
/* ....................................................................... */
void
SliderServoMotor::operator()(ODEObject* object)
{
SliderJoint* slider = object->asSliderJoint() ;
PS_ASSERT1( slider != NULL ) ;
World* world = object->getWorld() ;
PS_ASSERT1( world != NULL ) ;
PIDController* pid = getPIDController() ;
ooReal vel = 0.0 ;
if( pid ) {
vel = pid->solve( m_position - slider->getPosition(), world->getCurrentStepSize() ) ;
} else {
vel = m_position - slider->getPosition() ;
}
if( m_max_vel >= 0.0 ) {
vel = osg::clampTo( vel, -m_max_vel, m_max_vel ) ;
}
slider->setParam( dParamFMax, m_force ) ;
slider->setParam( dParamVel, vel ) ;
traverse(object) ;
}