|
Simox
2.3.74.0
|
Public Types | |
| enum | SeedType { eSeedZero, eSeedInitial, eSeedOther } |
Public Member Functions | |
| ConstrainedIK (RobotPtr &robot, const RobotNodeSetPtr &nodeSet, int maxIterations=1000, float stall_epsilon=0.0001, float raise_epsilon=0.8, bool reduceRobot=false) | |
| void | addConstraint (const ConstraintPtr &constraint, int priority=0, bool hard_constraint=true) |
| void | removeConstraint (const ConstraintPtr &constraint) |
| std::vector< ConstraintPtr > | getConstraints () |
| void | addSeed (SeedType type, const Eigen::VectorXf seed=Eigen::VectorXf()) |
| void | clearSeeds () |
| virtual bool | initialize () |
| virtual bool | solveStep ()=0 |
| virtual bool | solve (bool stepwise=false) |
| void | setMaxIterations (int maxIterations) |
| int | getMaxIterations () |
| bool | getRunning () |
| int | getCurrentIteration () |
Protected Member Functions | |
| void | getUnitableNodes (const RobotNodePtr &robotNode, const RobotNodeSetPtr &nodeSet, std::vector< std::string > &unitable) |
| RobotPtr | buildReducedRobot (const RobotPtr &original) |
Protected Attributes | |
| std::vector< ConstraintPtr > | constraints |
| std::map< ConstraintPtr, int > | priorities |
| std::map< ConstraintPtr, bool > | hardConstraints |
| RobotPtr | originalRobot |
| RobotPtr | robot |
| RobotNodeSetPtr | nodeSet |
| Eigen::VectorXf | initialConfig |
| std::vector< std::pair< SeedType, Eigen::VectorXf > > | seeds |
| int | maxIterations |
| int | currentIteration |
| bool | running |
| float | stallEpsilon |
| float | raiseEpsilon |
| ConstrainedIK::ConstrainedIK | ( | RobotPtr & | robot, |
| const RobotNodeSetPtr & | nodeSet, | ||
| int | maxIterations = 1000, |
||
| float | stall_epsilon = 0.0001, |
||
| float | raise_epsilon = 0.8, |
||
| bool | reduceRobot = false |
||
| ) |
| void ConstrainedIK::addConstraint | ( | const ConstraintPtr & | constraint, |
| int | priority = 0, |
||
| bool | hard_constraint = true |
||
| ) |
| void ConstrainedIK::addSeed | ( | ConstrainedIK::SeedType | type, |
| const Eigen::VectorXf | seed = Eigen::VectorXf() |
||
| ) |
| void ConstrainedIK::clearSeeds | ( | ) |
| std::vector< ConstraintPtr > ConstrainedIK::getConstraints | ( | ) |
| int ConstrainedIK::getCurrentIteration | ( | ) |
| int ConstrainedIK::getMaxIterations | ( | ) |
| bool ConstrainedIK::getRunning | ( | ) |
|
protected |
|
virtual |
| void ConstrainedIK::removeConstraint | ( | const ConstraintPtr & | constraint | ) |
| void ConstrainedIK::setMaxIterations | ( | int | maxIterations | ) |
|
virtual |
Reimplemented in VirtualRobot::ConstrainedOptimizationIK.
|
pure virtual |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |