placo 0.5.5__tar.gz → 0.5.9__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of placo might be problematic. Click here for more details.
- {placo-0.5.5 → placo-0.5.9}/CMakeLists.txt +0 -1
- {placo-0.5.5 → placo-0.5.9}/PKG-INFO +1 -1
- {placo-0.5.5 → placo-0.5.9}/bindings/expose-dynamics.cpp +18 -22
- {placo-0.5.5 → placo-0.5.9}/bindings/expose-kinematics.cpp +1 -2
- {placo-0.5.5 → placo-0.5.9}/bindings/expose-robot-wrapper.cpp +3 -1
- {placo-0.5.5 → placo-0.5.9}/bindings/expose-tools.cpp +3 -0
- {placo-0.5.5 → placo-0.5.9}/bindings/expose-walk-pattern-generator.cpp +4 -2
- {placo-0.5.5 → placo-0.5.9}/placo.pyi +143 -257
- {placo-0.5.5 → placo-0.5.9}/pyproject.toml +1 -1
- placo-0.5.9/python/placo_utils/view.py +37 -0
- {placo-0.5.5 → placo-0.5.9}/python/placo_utils/visualization.py +6 -1
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/avoid_self_collisions_constraint.cpp +1 -1
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/contacts.cpp +30 -59
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/contacts.h +8 -40
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/dynamics_solver.cpp +114 -131
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/dynamics_solver.h +46 -80
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/position_task.cpp +5 -6
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/position_task.h +5 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/relative_position_task.h +1 -1
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/task.cpp +1 -1
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/task.h +2 -7
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/torque_task.cpp +12 -3
- placo-0.5.9/src/placo/dynamics/torque_task.h +61 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/humanoid_robot.cpp +13 -4
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/walk_tasks.cpp +1 -1
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/centroidal_momentum_task.cpp +8 -2
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/kinematics_solver.cpp +0 -17
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/kinematics_solver.h +0 -7
- {placo-0.5.5 → placo-0.5.9}/src/placo/model/robot_wrapper.cpp +23 -3
- {placo-0.5.5 → placo-0.5.9}/src/placo/model/robot_wrapper.h +5 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/tools/axises_mask.h +1 -1
- {placo-0.5.5 → placo-0.5.9}/src/placo/tools/cubic_spline.cpp +14 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/tools/cubic_spline.h +14 -1
- {placo-0.5.5 → placo-0.5.9}/src/placo/tools/cubic_spline_3d.cpp +5 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/tools/cubic_spline_3d.h +7 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/tools/utils.cpp +52 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/tools/utils.h +7 -1
- placo-0.5.5/src/placo/dynamics/reaction_ratio_constraint.cpp +0 -30
- placo-0.5.5/src/placo/dynamics/reaction_ratio_constraint.h +0 -27
- placo-0.5.5/src/placo/dynamics/torque_task.h +0 -35
- {placo-0.5.5 → placo-0.5.9}/.clang-format +0 -0
- {placo-0.5.5 → placo-0.5.9}/.gitattributes +0 -0
- {placo-0.5.5 → placo-0.5.9}/.gitignore +0 -0
- {placo-0.5.5 → placo-0.5.9}/.readthedocs.yaml +0 -0
- {placo-0.5.5 → placo-0.5.9}/Doxyfile +0 -0
- {placo-0.5.5 → placo-0.5.9}/LICENSE +0 -0
- {placo-0.5.5 → placo-0.5.9}/Makefile +0 -0
- {placo-0.5.5 → placo-0.5.9}/README.md +0 -0
- {placo-0.5.5 → placo-0.5.9}/bindings/expose-eigen.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/bindings/expose-footsteps.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/bindings/expose-parameters.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/bindings/expose-problem.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/bindings/expose-utils.hpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/bindings/module.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/bindings/module.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/bindings/registry.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/bindings/registry.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/doxygen_parse.py +0 -0
- {placo-0.5.5 → placo-0.5.9}/python/.vscode/settings.json +0 -0
- {placo-0.5.5 → placo-0.5.9}/python/Makefile +0 -0
- {placo-0.5.5 → placo-0.5.9}/python/placo_utils/__init__.py +0 -0
- {placo-0.5.5 → placo-0.5.9}/python/placo_utils/tf.py +0 -0
- {placo-0.5.5 → placo-0.5.9}/python/run_tests.sh +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/avoid_self_collisions_constraint.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/com_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/com_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/constraint.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/constraint.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/frame_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/frame_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/gear_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/gear_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/joints_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/joints_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/orientation_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/orientation_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/relative_frame_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/relative_frame_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/relative_orientation_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/relative_orientation_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/dynamics/relative_position_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/foot_trajectory.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/foot_trajectory.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/footsteps_planner.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/footsteps_planner.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/footsteps_planner_naive.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/footsteps_planner_naive.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/footsteps_planner_repetitive.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/footsteps_planner_repetitive.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/humanoid_parameters.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/humanoid_parameters.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/humanoid_robot.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/kick.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/kick.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/lipm.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/lipm.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/swing_foot.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/swing_foot.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/swing_foot_cubic.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/swing_foot_cubic.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/swing_foot_quintic.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/swing_foot_quintic.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/walk_pattern_generator.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/walk_pattern_generator.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/humanoid/walk_tasks.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/avoid_self_collisions_constraint.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/avoid_self_collisions_constraint.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/axis_align_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/axis_align_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/centroidal_momentum_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/com_polygon_constraint.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/com_polygon_constraint.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/com_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/com_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/cone_constraint.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/cone_constraint.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/constraint.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/constraint.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/distance_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/distance_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/frame_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/frame_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/gear_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/gear_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/joints_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/joints_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/kinetic_energy_regularization_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/kinetic_energy_regularization_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/manipulability_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/manipulability_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/orientation_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/orientation_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/position_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/position_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/regularization_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/regularization_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/relative_frame_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/relative_frame_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/relative_orientation_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/relative_orientation_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/relative_position_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/relative_position_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/wheel_task.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/kinematics/wheel_task.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/problem/constraint.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/problem/constraint.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/problem/expression.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/problem/expression.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/problem/integrator.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/problem/integrator.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/problem/polygon_constraint.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/problem/polygon_constraint.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/problem/problem.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/problem/problem.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/problem/qp_error.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/problem/qp_error.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/problem/sparsity.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/problem/sparsity.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/problem/variable.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/problem/variable.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/tools/axises_mask.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/tools/prioritized.cpp +0 -0
- {placo-0.5.5 → placo-0.5.9}/src/placo/tools/prioritized.h +0 -0
- {placo-0.5.5 → placo-0.5.9}/stubs.py +0 -0
- {placo-0.5.5 → placo-0.5.9}/tweak_sdist.sh +0 -0
- {placo-0.5.5 → placo-0.5.9}/wks.yml +0 -0
|
@@ -102,7 +102,6 @@ add_library(libplaco SHARED
|
|
|
102
102
|
src/placo/dynamics/dynamics_solver.cpp
|
|
103
103
|
src/placo/dynamics/constraint.cpp
|
|
104
104
|
src/placo/dynamics/avoid_self_collisions_constraint.cpp
|
|
105
|
-
src/placo/dynamics/reaction_ratio_constraint.cpp
|
|
106
105
|
|
|
107
106
|
${PROTO_SRCS}
|
|
108
107
|
${PROTO_HDRS}
|
|
@@ -13,8 +13,9 @@ using namespace placo::dynamics;
|
|
|
13
13
|
using namespace placo::model;
|
|
14
14
|
|
|
15
15
|
// Overloads
|
|
16
|
-
BOOST_PYTHON_MEMBER_FUNCTION_OVERLOADS(set_passive_overloads, set_passive, 1, 3);
|
|
17
16
|
BOOST_PYTHON_MEMBER_FUNCTION_OVERLOADS(solve_overloads, solve, 0, 1);
|
|
17
|
+
BOOST_PYTHON_MEMBER_FUNCTION_OVERLOADS(set_torque_overloads, set_torque, 2, 4);
|
|
18
|
+
BOOST_PYTHON_MEMBER_FUNCTION_OVERLOADS(set_joint_overloads, set_joint, 2, 4);
|
|
18
19
|
|
|
19
20
|
void exposeDynamics()
|
|
20
21
|
{
|
|
@@ -50,7 +51,10 @@ void exposeDynamics()
|
|
|
50
51
|
.def(
|
|
51
52
|
"position_task", +[](PointContact& contact) -> PositionTask& { return *contact.position_task; },
|
|
52
53
|
return_internal_reference<>())
|
|
53
|
-
.def_readwrite("unilateral", &PointContact::unilateral)
|
|
54
|
+
.def_readwrite("unilateral", &PointContact::unilateral)
|
|
55
|
+
.add_property(
|
|
56
|
+
"R_world_surface", +[](PointContact& contact) { return contact.R_world_surface; },
|
|
57
|
+
+[](PointContact& contact, Eigen::Matrix3d R) { contact.R_world_surface = R; });
|
|
54
58
|
|
|
55
59
|
class__<Contact6D, bases<Contact>>("Contact6D", init<FrameTask&, bool>())
|
|
56
60
|
.def(
|
|
@@ -64,10 +68,6 @@ void exposeDynamics()
|
|
|
64
68
|
.def_readwrite("width", &Contact6D::width)
|
|
65
69
|
.def("zmp", &Contact6D::zmp);
|
|
66
70
|
|
|
67
|
-
class__<RelativePointContact, bases<Contact>>("RelativePointContact", init<RelativePositionTask&>());
|
|
68
|
-
|
|
69
|
-
class__<Relative6DContact, bases<Contact>>("Relative6DContact", init<RelativeFrameTask&>());
|
|
70
|
-
|
|
71
71
|
class__<ExternalWrenchContact, bases<Contact>>("ExternalWrenchContact", init<RobotWrapper::FrameIndex>())
|
|
72
72
|
.add_property("frame_index", &ExternalWrenchContact::frame_index)
|
|
73
73
|
.add_property(
|
|
@@ -79,29 +79,23 @@ void exposeDynamics()
|
|
|
79
79
|
|
|
80
80
|
class__<DynamicsSolver>("DynamicsSolver", init<RobotWrapper&>())
|
|
81
81
|
.add_property("problem", &DynamicsSolver::problem)
|
|
82
|
-
.def_readwrite("
|
|
82
|
+
.def_readwrite("damping", &DynamicsSolver::damping)
|
|
83
83
|
.def_readwrite("dt", &DynamicsSolver::dt)
|
|
84
|
-
.
|
|
84
|
+
.def("set_qdd_safe", &DynamicsSolver::set_qdd_safe)
|
|
85
|
+
.def("set_torque_limit", &DynamicsSolver::set_torque_limit)
|
|
85
86
|
.def_readwrite("gravity_only", &DynamicsSolver::gravity_only)
|
|
86
87
|
.def_readwrite("torque_cost", &DynamicsSolver::torque_cost)
|
|
87
88
|
.def("mask_fbase", &DynamicsSolver::mask_fbase)
|
|
88
89
|
.def("add_point_contact", &DynamicsSolver::add_point_contact, return_internal_reference<>())
|
|
89
90
|
.def("add_unilateral_point_contact", &DynamicsSolver::add_unilateral_point_contact, return_internal_reference<>())
|
|
90
|
-
.def("add_relative_point_contact", &DynamicsSolver::add_relative_point_contact, return_internal_reference<>())
|
|
91
|
-
.def("add_relative_fixed_contact", &DynamicsSolver::add_relative_fixed_contact, return_internal_reference<>())
|
|
92
91
|
.def("add_planar_contact", &DynamicsSolver::add_planar_contact, return_internal_reference<>())
|
|
93
92
|
.def("add_fixed_contact", &DynamicsSolver::add_fixed_contact, return_internal_reference<>())
|
|
94
|
-
.def<ExternalWrenchContact& (DynamicsSolver::*)(std::string)>(
|
|
93
|
+
.def<ExternalWrenchContact& (DynamicsSolver::*)(std::string, std::string)>(
|
|
95
94
|
"add_external_wrench_contact", &DynamicsSolver::add_external_wrench_contact, return_internal_reference<>())
|
|
96
95
|
.def("add_puppet_contact", &DynamicsSolver::add_puppet_contact, return_internal_reference<>())
|
|
97
96
|
.def("add_task_contact", &DynamicsSolver::add_task_contact, return_internal_reference<>())
|
|
98
97
|
.def("add_avoid_self_collisions_constraint", &DynamicsSolver::add_avoid_self_collisions_constraint,
|
|
99
98
|
return_internal_reference<>())
|
|
100
|
-
.def("add_reaction_ratio_constraint", &DynamicsSolver::add_reaction_ratio_constraint,
|
|
101
|
-
return_internal_reference<>())
|
|
102
|
-
.def("set_passive", &DynamicsSolver::set_passive, set_passive_overloads())
|
|
103
|
-
.def("set_tau", &DynamicsSolver::set_tau)
|
|
104
|
-
.def("reset_joint", &DynamicsSolver::reset_joint)
|
|
105
99
|
.def("enable_velocity_limits", &DynamicsSolver::enable_velocity_limits)
|
|
106
100
|
.def("enable_velocity_vs_torque_limits", &DynamicsSolver::enable_velocity_vs_torque_limits)
|
|
107
101
|
.def("enable_joint_limits", &DynamicsSolver::enable_joint_limits)
|
|
@@ -116,6 +110,8 @@ void exposeDynamics()
|
|
|
116
110
|
.def<void (DynamicsSolver::*)(FrameTask&)>("remove_task", &DynamicsSolver::remove_task)
|
|
117
111
|
.def("remove_contact", &DynamicsSolver::remove_contact)
|
|
118
112
|
.def("remove_constraint", &DynamicsSolver::remove_constraint)
|
|
113
|
+
.def("set_kp", &DynamicsSolver::set_kp)
|
|
114
|
+
.def("set_kd", &DynamicsSolver::set_kd)
|
|
119
115
|
.add_property(
|
|
120
116
|
"robot", +[](const DynamicsSolver& solver) { return solver.robot; })
|
|
121
117
|
.def(
|
|
@@ -153,7 +149,6 @@ void exposeDynamics()
|
|
|
153
149
|
"b", +[](const Task& task) { return task.b; })
|
|
154
150
|
.add_property("kp", &Task::kp, &Task::kp)
|
|
155
151
|
.add_property("kd", &Task::kd, &Task::kd)
|
|
156
|
-
.add_property("critically_damped", &Task::critically_damped, &Task::critically_damped)
|
|
157
152
|
.add_property("error", &Task::error)
|
|
158
153
|
.add_property("derror", &Task::derror);
|
|
159
154
|
|
|
@@ -163,6 +158,8 @@ void exposeDynamics()
|
|
|
163
158
|
"target_world", +[](const PositionTask& task) { return task.target_world; }, &PositionTask::target_world)
|
|
164
159
|
.add_property(
|
|
165
160
|
"dtarget_world", +[](const PositionTask& task) { return task.dtarget_world; }, &PositionTask::dtarget_world)
|
|
161
|
+
.add_property(
|
|
162
|
+
"ddtarget_world", +[](const PositionTask& task) { return task.dtarget_world; }, &PositionTask::ddtarget_world)
|
|
166
163
|
.add_property("mask", &PositionTask::mask, &PositionTask::mask);
|
|
167
164
|
|
|
168
165
|
class__<CoMTask, bases<Task>>("DynamicsCoMTask", init<Eigen::Vector3d>())
|
|
@@ -230,7 +227,7 @@ void exposeDynamics()
|
|
|
230
227
|
.add_property("T_a_b", &RelativeFrameTask::get_T_a_b, &RelativeFrameTask::set_T_a_b);
|
|
231
228
|
|
|
232
229
|
class__<JointsTask, bases<Task>>("DynamicsJointsTask", init<>())
|
|
233
|
-
.def("set_joint", &JointsTask::set_joint)
|
|
230
|
+
.def("set_joint", &JointsTask::set_joint, set_joint_overloads())
|
|
234
231
|
.def(
|
|
235
232
|
"set_joints", +[](JointsTask& task,
|
|
236
233
|
boost::python::dict& py_dict) { update_map<std::string, double>(task.joints, py_dict); })
|
|
@@ -239,7 +236,9 @@ void exposeDynamics()
|
|
|
239
236
|
update_map<std::string, double>(task.djoints, py_dict);
|
|
240
237
|
});
|
|
241
238
|
|
|
242
|
-
class__<TorqueTask, bases<Task>>("DynamicsTorqueTask", init<>())
|
|
239
|
+
class__<TorqueTask, bases<Task>>("DynamicsTorqueTask", init<>())
|
|
240
|
+
.def("set_torque", &TorqueTask::set_torque, set_torque_overloads())
|
|
241
|
+
.def("reset_torque", &TorqueTask::reset_torque);
|
|
243
242
|
|
|
244
243
|
class__<GearTask, bases<Task>>("DynamicsGearTask", init<>())
|
|
245
244
|
.def("set_gear", &GearTask::set_gear)
|
|
@@ -250,7 +249,4 @@ void exposeDynamics()
|
|
|
250
249
|
class__<AvoidSelfCollisionsConstraint, bases<Constraint>>("AvoidSelfCollisionsDynamicsConstraint", init<>())
|
|
251
250
|
.def_readwrite("self_collisions_margin", &AvoidSelfCollisionsConstraint::self_collisions_margin)
|
|
252
251
|
.def_readwrite("self_collisions_trigger", &AvoidSelfCollisionsConstraint::self_collisions_trigger);
|
|
253
|
-
|
|
254
|
-
class__<ReactionRatioConstraint, bases<Constraint>>("DynamicsReactionRatioConstraint", init<Contact&, double>())
|
|
255
|
-
.def_readwrite("reaction_ratio", &ReactionRatioConstraint::reaction_ratio);
|
|
256
252
|
}
|
|
@@ -114,8 +114,7 @@ void exposeKinematics()
|
|
|
114
114
|
.def<void (KinematicsSolver::*)(Task&)>("remove_task", &KinematicsSolver::remove_task)
|
|
115
115
|
.def<void (KinematicsSolver::*)(FrameTask&)>("remove_task", &KinematicsSolver::remove_task)
|
|
116
116
|
.def("remove_constraint", &KinematicsSolver::remove_constraint)
|
|
117
|
-
.def("solve", &KinematicsSolver::solve)
|
|
118
|
-
.def("add_q_noise", &KinematicsSolver::add_q_noise);
|
|
117
|
+
.def("solve", &KinematicsSolver::solve);
|
|
119
118
|
|
|
120
119
|
class__<Task, bases<tools::Prioritized>, boost::noncopyable>("Task", no_init)
|
|
121
120
|
.add_property(
|
|
@@ -52,6 +52,7 @@ void exposeRobotType(class_<RobotType, W1>& type)
|
|
|
52
52
|
.def("get_T_world_fbase", &RobotType::get_T_world_fbase)
|
|
53
53
|
.def("set_T_world_fbase", &RobotType::set_T_world_fbase)
|
|
54
54
|
.def("com_world", &RobotType::com_world)
|
|
55
|
+
.def("centroidal_map", &RobotType::centroidal_map)
|
|
55
56
|
.def("joint_names", &RobotType::joint_names, joint_names_overloads())
|
|
56
57
|
.def("frame_names", &RobotType::frame_names)
|
|
57
58
|
.def("self_collisions", &RobotType::self_collisions)
|
|
@@ -124,7 +125,8 @@ void exposeRobotType(class_<RobotType, W1>& type)
|
|
|
124
125
|
"joint_jacobian", +[](RobotType& robot, const std::string& joint,
|
|
125
126
|
const std::string& reference) { return robot.joint_jacobian(joint, reference); })
|
|
126
127
|
.def(
|
|
127
|
-
"make_solver", +[](RobotType& robot) { return placo::kinematics::KinematicsSolver(robot); })
|
|
128
|
+
"make_solver", +[](RobotType& robot) { return placo::kinematics::KinematicsSolver(robot); })
|
|
129
|
+
.def("add_q_noise", &RobotType::add_q_noise);
|
|
128
130
|
}
|
|
129
131
|
|
|
130
132
|
void exposeRobotWrapper()
|
|
@@ -31,6 +31,7 @@ void exposeTools()
|
|
|
31
31
|
def("rotation_from_axis", &rotation_from_axis);
|
|
32
32
|
def("frame_yaw", &frame_yaw);
|
|
33
33
|
def("flatten_on_floor", &flatten_on_floor);
|
|
34
|
+
def("optimal_transformation", &optimal_transformation);
|
|
34
35
|
|
|
35
36
|
exposeStdVector<int>("vector_int");
|
|
36
37
|
exposeStdVector<double>("vector_double");
|
|
@@ -62,6 +63,7 @@ void exposeTools()
|
|
|
62
63
|
class__<CubicSpline>("CubicSpline", init<optional<bool>>())
|
|
63
64
|
.def("pos", &CubicSpline::pos)
|
|
64
65
|
.def("vel", &CubicSpline::vel)
|
|
66
|
+
.def("acc", &CubicSpline::acc)
|
|
65
67
|
.def("add_point", &CubicSpline::add_point)
|
|
66
68
|
.def("clear", &CubicSpline::clear)
|
|
67
69
|
.def("duration", &CubicSpline::duration);
|
|
@@ -69,6 +71,7 @@ void exposeTools()
|
|
|
69
71
|
class__<CubicSpline3D>("CubicSpline3D")
|
|
70
72
|
.def("pos", &CubicSpline3D::pos)
|
|
71
73
|
.def("vel", &CubicSpline3D::vel)
|
|
74
|
+
.def("acc", &CubicSpline3D::acc)
|
|
72
75
|
.def("add_point", &CubicSpline3D::add_point)
|
|
73
76
|
.def("clear", &CubicSpline3D::clear)
|
|
74
77
|
.def("duration", &CubicSpline3D::duration);
|
|
@@ -110,8 +110,10 @@ void exposeWalkPatternGenerator()
|
|
|
110
110
|
.add_property("trunk_mode", &WalkTasks::trunk_mode, &WalkTasks::trunk_mode)
|
|
111
111
|
.add_property("com_x", &WalkTasks::com_x, &WalkTasks::com_x)
|
|
112
112
|
.add_property("com_y", &WalkTasks::com_y, &WalkTasks::com_y)
|
|
113
|
-
.add_property(
|
|
114
|
-
|
|
113
|
+
.add_property("trunk_orientation_task",
|
|
114
|
+
make_function(
|
|
115
|
+
+[](WalkTasks& tasks) -> OrientationTask& { return *tasks.trunk_orientation_task; },
|
|
116
|
+
return_value_policy<reference_existing_object>()));
|
|
115
117
|
|
|
116
118
|
class__<LIPM::Trajectory>("LIPMTrajectory", init<>())
|
|
117
119
|
.def("pos", &LIPM::Trajectory::pos)
|