void ODESimulatorItemImpl::doPutProperties(PutPropertyFunction& putProperty) { putProperty(_("Step mode"), stepMode, changeProperty(stepMode)); putProperty(_("Gravity"), str(gravity), boost::bind(toVector3, _1, boost::ref(gravity))); putProperty.decimals(2).min(0.0) (_("Friction"), friction, changeProperty(friction)); putProperty(_("Limit joint range"), isJointLimitMode, changeProperty(isJointLimitMode)); putProperty.decimals(1).min(0.0).max(1.0) (_("Global ERP"), globalERP, changeProperty(globalERP)); putProperty(_("Global CFM"), globalCFM, boost::bind(&FloatingNumberString::setNonNegativeValue, boost::ref(globalCFM), _1)); putProperty.min(1) (_("Iterations"), numIterations, changeProperty(numIterations)); putProperty.min(0.1).max(1.9) (_("Over relaxation"), overRelaxation, changeProperty(overRelaxation)); putProperty(_("Limit correcting vel."), enableMaxCorrectingVel, changeProperty(enableMaxCorrectingVel)); putProperty(_("Max correcting vel."), maxCorrectingVel, boost::bind(&FloatingNumberString::setNonNegativeValue, boost::ref(maxCorrectingVel), _1)); putProperty(_("2D mode"), is2Dmode, changeProperty(is2Dmode)); putProperty(_("Use WorldItem's Collision Detector"), useWorldCollision, changeProperty(useWorldCollision)); putProperty(_("Velocity Control Mode"), velocityMode, changeProperty(velocityMode)); }
void AISTSimulatorItemImpl::doPutProperties(PutPropertyFunction& putProperty) { putProperty(_("Dynamics mode"), dynamicsMode, boost::bind(&Selection::selectIndex, &dynamicsMode, _1)); putProperty(_("Integration mode"), integrationMode, boost::bind(&Selection::selectIndex, &integrationMode, _1)); putProperty(_("Gravity"), str(gravity), boost::bind(toVector3, _1, boost::ref(gravity))); putProperty.decimals(3).min(0.0); putProperty(_("Static friction"), staticFriction, changeProperty(staticFriction)); putProperty(_("Slip friction"), slipFriction, changeProperty(slipFriction)); putProperty(_("Contact culling distance"), contactCullingDistance, (boost::bind(&FloatingNumberString::setNonNegativeValue, boost::ref(contactCullingDistance), _1))); putProperty(_("Contact culling depth"), contactCullingDepth, (boost::bind(&FloatingNumberString::setNonNegativeValue, boost::ref(contactCullingDepth), _1))); putProperty(_("Error criterion"), errorCriterion, boost::bind(&FloatingNumberString::setPositiveValue, boost::ref(errorCriterion), _1)); putProperty.min(1.0)(_("Max iterations"), maxNumIterations, changeProperty(maxNumIterations)); putProperty(_("CC depth"), contactCorrectionDepth, boost::bind(&FloatingNumberString::setNonNegativeValue, boost::ref(contactCorrectionDepth), _1)); putProperty(_("CC v-ratio"), contactCorrectionVelocityRatio, boost::bind(&FloatingNumberString::setNonNegativeValue, boost::ref(contactCorrectionVelocityRatio), _1)); putProperty(_("Kinematic walking"), isKinematicWalkingEnabled, changeProperty(isKinematicWalkingEnabled)); putProperty(_("2D mode"), is2Dmode, changeProperty(is2Dmode)); putProperty(_("Old accel sensor mode"), isOldAccelSensorMode, changeProperty(isOldAccelSensorMode)); }
void BodyStateSubscriberRTCItem::doPutProperties(PutPropertyFunction& putProperty) { putProperty.decimals(3)(_("Periodic rate"), impl->periodicRate, [&](int rate){ setPeriodicRate(rate); return true; }); putProperty(_("Point cloud port type"), impl->pointCloudPortType, [&](int which){ setPointCloudPortType(which); return true; }); }
void ForceSensorVisualizerItem::doPutProperties(PutPropertyFunction& putProperty) { putProperty.decimals(4)( _("Visual ratio"), visualRatio, [&](double ratio){ if(ratio > 0.0){ visualRatio = ratio; updateVisualization(); return true; } return false; }); }
void BodyItemImpl::doPutProperties(PutPropertyFunction& putProperty) { putProperty(_("Model name"), body->modelName()); putProperty(_("Num links"), body->numLinks()); putProperty(_("Num joints"), body->numJoints()); putProperty(_("Num devices"), (int)body->devices().size()); putProperty(_("Root link"), body->rootLink()->name()); putProperty(_("Base link"), currentBaseLink ? currentBaseLink->name() : "none"); putProperty.decimals(3)(_("Mass"), body->mass()); putProperty(_("Static model"), body->isStaticModel(), (boost::bind(&BodyItemImpl::onStaticModelPropertyChanged, this, _1))); putProperty(_("Model file"), getFilename(boost::filesystem::path(self->filePath()))); putProperty(_("Self-collision"), isSelfCollisionDetectionEnabled, (boost::bind(&BodyItemImpl::onSelfCollisionDetectionPropertyChanged, this, _1))); putProperty(_("Editable"), isEditable, boost::bind(&BodyItemImpl::onEditableChanged, this, _1)); }
void BodyRosJointControllerItem::doPutProperties(PutPropertyFunction& putProperty) { putProperty.decimals(2).min(0.0)("Update rate", joint_state_update_rate_, changeProperty(joint_state_update_rate_)); }