Definition of a manipulation planning problem. More...
Public Member Functions | |
def | __init__ (self, robot) |
def | selectProblem (self, name) |
Select a problem by its name. More... | |
def | getAvailable (self, type) |
Return a list of available elements of type type. More... | |
def | getSelected (self, type) |
Return a list of selected elements of type type. More... | |
Constraints | |
def | createPlacementConstraints (self, placementName, shapeName, envContactName, width=0.05) |
Create placement and pre-placement constraints. More... | |
def | balanceConstraints (self) |
Return balance constraints created by method ProblemSolver.createStaticStabilityConstraints. More... | |
def | getConstantRightHandSide (self, constraintName) |
Get whether right hand side of a numerical constraint is constant. More... | |
def | lockFreeFlyerJoint (self, freeflyerBname, lockJointBname, values=(0, 0, 0, 0, 0, 0, 1)) |
Lock degree of freedom of a FreeFlyer joint. More... | |
def | lockPlanarJoint (self, jointName, lockJointName, values=(0, 0, 1, 0)) |
Lock degree of freedom of a planar joint. More... | |
Solve problem and get paths | |
def | setTargetState (self, stateId) |
Set the problem target to stateId The planner will look for a path from the init configuration to a configuration in state stateId. More... | |
Definition of a manipulation planning problem.
This class wraps the Corba client to the server implemented by libhpp-manipulation-corba.so
Some method implemented by the server can be considered as private. The goal of this class is to hide them and to expose those that can be considered as public.
def manipulation.problem_solver.ProblemSolver.__init__ | ( | self, | |
robot | |||
) |
def manipulation.problem_solver.ProblemSolver.balanceConstraints | ( | self | ) |
Return balance constraints created by method ProblemSolver.createStaticStabilityConstraints.
def manipulation.problem_solver.ProblemSolver.createPlacementConstraints | ( | self, | |
placementName, | |||
shapeName, | |||
envContactName, | |||
width = 0.05 |
|||
) |
Create placement and pre-placement constraints.
width | set to None to skip creation of pre-placement constraint |
See hpp::corbaserver::manipulation::Problem::createPlacementConstraint and hpp::corbaserver::manipulation::Problem::createPrePlacementConstraint
def manipulation.problem_solver.ProblemSolver.getAvailable | ( | self, | |
type | |||
) |
Return a list of available elements of type type.
type | enter "type" to know what types I know of. This is case insensitive. |
References hpp::corbaserver::problem_solver::ProblemSolver.getAvailable().
Referenced by manipulation.problem_solver.ProblemSolver.getConstantRightHandSide().
def manipulation.problem_solver.ProblemSolver.getConstantRightHandSide | ( | self, | |
constraintName | |||
) |
Get whether right hand side of a numerical constraint is constant.
constraintName | Name of the numerical constraint, |
References hpp::corbaserver::Problem.getAvailable(), hpp::corbaserver::problem_solver::ProblemSolver.getAvailable(), hpp::corbaServer::impl::Problem.getAvailable(), hpp::corbaserver::manipulation::Problem.getAvailable(), manipulation.problem_solver.ProblemSolver.getAvailable(), and hpp::corbaserver::problem_solver::ProblemSolver.getConstantRightHandSide().
def manipulation.problem_solver.ProblemSolver.getSelected | ( | self, | |
type | |||
) |
Return a list of selected elements of type type.
type | enter "type" to know what types I know of. This is case insensitive. |
References hpp::corbaserver::problem_solver::ProblemSolver.getSelected().
def manipulation.problem_solver.ProblemSolver.lockFreeFlyerJoint | ( | self, | |
freeflyerBname, | |||
lockJointBname, | |||
values = (0,0,0,0,0,0,1) |
|||
) |
Lock degree of freedom of a FreeFlyer joint.
freeflyerBname | base name of the joint (It will be completed by '_xyz' and '_SO3'), |
lockJointBname | base name of the LockedJoint constraints (It will be completed by '_xyz' and '_SO3'), |
values | config of the locked joints (7 float) |
References hpp::corbaserver::Problem.createLockedJoint(), hpp::corbaserver::problem_solver::ProblemSolver.createLockedJoint(), and hpp::corbaServer::impl::Problem.createLockedJoint().
def manipulation.problem_solver.ProblemSolver.lockPlanarJoint | ( | self, | |
jointName, | |||
lockJointName, | |||
values = (0,0,1,0) |
|||
) |
Lock degree of freedom of a planar joint.
jointName | name of the joint (It will be completed by '_xy' and '_rz'), |
lockJointName | name of the LockedJoint constraint |
values | config of the locked joints (4 float) |
References hpp::corbaserver::Problem.createLockedJoint(), hpp::corbaserver::problem_solver::ProblemSolver.createLockedJoint(), and hpp::corbaServer::impl::Problem.createLockedJoint().
def manipulation.problem_solver.ProblemSolver.selectProblem | ( | self, | |
name | |||
) |
Select a problem by its name.
If no problem with this name exists, a new hpp::manipulation::ProblemSolver is created and selected.
name | the problem name. |
References hpp::corbaserver::problem_solver::ProblemSolver.selectProblem().
def manipulation.problem_solver.ProblemSolver.setTargetState | ( | self, | |
stateId | |||
) |
Set the problem target to stateId The planner will look for a path from the init configuration to a configuration in state stateId.