placo 0.3.7__tar.gz → 0.3.8__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.

Files changed (156) hide show
  1. {placo-0.3.7 → placo-0.3.8}/PKG-INFO +1 -1
  2. {placo-0.3.7 → placo-0.3.8}/bindings/expose-robot-wrapper.cpp +2 -0
  3. {placo-0.3.7 → placo-0.3.8}/bindings/expose-tools.cpp +0 -1
  4. {placo-0.3.7 → placo-0.3.8}/placo.pyi +56 -15
  5. {placo-0.3.7 → placo-0.3.8}/pyproject.toml +1 -1
  6. {placo-0.3.7 → placo-0.3.8}/src/placo/model/robot_wrapper.cpp +10 -0
  7. {placo-0.3.7 → placo-0.3.8}/src/placo/model/robot_wrapper.h +16 -1
  8. {placo-0.3.7 → placo-0.3.8}/src/placo/tools/utils.cpp +0 -8
  9. {placo-0.3.7 → placo-0.3.8}/src/placo/tools/utils.h +0 -7
  10. {placo-0.3.7 → placo-0.3.8}/.clang-format +0 -0
  11. {placo-0.3.7 → placo-0.3.8}/.gitattributes +0 -0
  12. {placo-0.3.7 → placo-0.3.8}/.gitignore +0 -0
  13. {placo-0.3.7 → placo-0.3.8}/.readthedocs.yaml +0 -0
  14. {placo-0.3.7 → placo-0.3.8}/CMakeLists.txt +0 -0
  15. {placo-0.3.7 → placo-0.3.8}/Doxyfile +0 -0
  16. {placo-0.3.7 → placo-0.3.8}/LICENSE +0 -0
  17. {placo-0.3.7 → placo-0.3.8}/Makefile +0 -0
  18. {placo-0.3.7 → placo-0.3.8}/README.md +0 -0
  19. {placo-0.3.7 → placo-0.3.8}/bindings/expose-dynamics.cpp +0 -0
  20. {placo-0.3.7 → placo-0.3.8}/bindings/expose-eigen.cpp +0 -0
  21. {placo-0.3.7 → placo-0.3.8}/bindings/expose-footsteps.cpp +0 -0
  22. {placo-0.3.7 → placo-0.3.8}/bindings/expose-kinematics.cpp +0 -0
  23. {placo-0.3.7 → placo-0.3.8}/bindings/expose-parameters.cpp +0 -0
  24. {placo-0.3.7 → placo-0.3.8}/bindings/expose-problem.cpp +0 -0
  25. {placo-0.3.7 → placo-0.3.8}/bindings/expose-trajectory.cpp +0 -0
  26. {placo-0.3.7 → placo-0.3.8}/bindings/expose-utils.hpp +0 -0
  27. {placo-0.3.7 → placo-0.3.8}/bindings/expose-walk-pattern-generator.cpp +0 -0
  28. {placo-0.3.7 → placo-0.3.8}/bindings/module.cpp +0 -0
  29. {placo-0.3.7 → placo-0.3.8}/bindings/module.h +0 -0
  30. {placo-0.3.7 → placo-0.3.8}/bindings/registry.cpp +0 -0
  31. {placo-0.3.7 → placo-0.3.8}/bindings/registry.h +0 -0
  32. {placo-0.3.7 → placo-0.3.8}/doxygen_parse.py +0 -0
  33. {placo-0.3.7 → placo-0.3.8}/python/Makefile +0 -0
  34. {placo-0.3.7 → placo-0.3.8}/python/placo_utils/__init__.py +0 -0
  35. {placo-0.3.7 → placo-0.3.8}/python/placo_utils/tf.py +0 -0
  36. {placo-0.3.7 → placo-0.3.8}/python/placo_utils/visualization.py +0 -0
  37. {placo-0.3.7 → placo-0.3.8}/python/run_tests.sh +0 -0
  38. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/avoid_self_collisions_constraint.cpp +0 -0
  39. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/avoid_self_collisions_constraint.h +0 -0
  40. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/com_task.cpp +0 -0
  41. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/com_task.h +0 -0
  42. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/constraint.cpp +0 -0
  43. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/constraint.h +0 -0
  44. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/contacts.cpp +0 -0
  45. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/contacts.h +0 -0
  46. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/dynamics_solver.cpp +0 -0
  47. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/dynamics_solver.h +0 -0
  48. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/frame_task.cpp +0 -0
  49. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/frame_task.h +0 -0
  50. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/gear_task.cpp +0 -0
  51. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/gear_task.h +0 -0
  52. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/joints_task.cpp +0 -0
  53. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/joints_task.h +0 -0
  54. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/orientation_task.cpp +0 -0
  55. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/orientation_task.h +0 -0
  56. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/position_task.cpp +0 -0
  57. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/position_task.h +0 -0
  58. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/reaction_ratio_constraint.cpp +0 -0
  59. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/reaction_ratio_constraint.h +0 -0
  60. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/relative_frame_task.cpp +0 -0
  61. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/relative_frame_task.h +0 -0
  62. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/relative_orientation_task.cpp +0 -0
  63. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/relative_orientation_task.h +0 -0
  64. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/relative_position_task.cpp +0 -0
  65. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/relative_position_task.h +0 -0
  66. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/task.cpp +0 -0
  67. {placo-0.3.7 → placo-0.3.8}/src/placo/dynamics/task.h +0 -0
  68. {placo-0.3.7 → placo-0.3.8}/src/placo/footsteps/footsteps_planner.cpp +0 -0
  69. {placo-0.3.7 → placo-0.3.8}/src/placo/footsteps/footsteps_planner.h +0 -0
  70. {placo-0.3.7 → placo-0.3.8}/src/placo/footsteps/footsteps_planner_naive.cpp +0 -0
  71. {placo-0.3.7 → placo-0.3.8}/src/placo/footsteps/footsteps_planner_naive.h +0 -0
  72. {placo-0.3.7 → placo-0.3.8}/src/placo/footsteps/footsteps_planner_repetitive.cpp +0 -0
  73. {placo-0.3.7 → placo-0.3.8}/src/placo/footsteps/footsteps_planner_repetitive.h +0 -0
  74. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/avoid_self_collisions_constraint.cpp +0 -0
  75. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/avoid_self_collisions_constraint.h +0 -0
  76. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/centroidal_momentum_task.cpp +0 -0
  77. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/centroidal_momentum_task.h +0 -0
  78. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/com_polygon_constraint.cpp +0 -0
  79. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/com_polygon_constraint.h +0 -0
  80. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/com_task.cpp +0 -0
  81. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/com_task.h +0 -0
  82. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/constraint.cpp +0 -0
  83. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/constraint.h +0 -0
  84. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/distance_task.cpp +0 -0
  85. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/distance_task.h +0 -0
  86. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/frame_task.cpp +0 -0
  87. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/frame_task.h +0 -0
  88. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/gear_task.cpp +0 -0
  89. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/gear_task.h +0 -0
  90. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/joints_task.cpp +0 -0
  91. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/joints_task.h +0 -0
  92. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/kinematics_solver.cpp +0 -0
  93. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/kinematics_solver.h +0 -0
  94. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/orientation_task.cpp +0 -0
  95. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/orientation_task.h +0 -0
  96. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/position_task.cpp +0 -0
  97. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/position_task.h +0 -0
  98. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/regularization_task.cpp +0 -0
  99. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/regularization_task.h +0 -0
  100. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/relative_frame_task.cpp +0 -0
  101. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/relative_frame_task.h +0 -0
  102. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/relative_orientation_task.cpp +0 -0
  103. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/relative_orientation_task.h +0 -0
  104. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/relative_position_task.cpp +0 -0
  105. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/relative_position_task.h +0 -0
  106. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/task.cpp +0 -0
  107. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/task.h +0 -0
  108. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/wheel_task.cpp +0 -0
  109. {placo-0.3.7 → placo-0.3.8}/src/placo/kinematics/wheel_task.h +0 -0
  110. {placo-0.3.7 → placo-0.3.8}/src/placo/model/humanoid_parameters.cpp +0 -0
  111. {placo-0.3.7 → placo-0.3.8}/src/placo/model/humanoid_parameters.h +0 -0
  112. {placo-0.3.7 → placo-0.3.8}/src/placo/model/humanoid_robot.cpp +0 -0
  113. {placo-0.3.7 → placo-0.3.8}/src/placo/model/humanoid_robot.h +0 -0
  114. {placo-0.3.7 → placo-0.3.8}/src/placo/planning/lipm.cpp +0 -0
  115. {placo-0.3.7 → placo-0.3.8}/src/placo/planning/lipm.h +0 -0
  116. {placo-0.3.7 → placo-0.3.8}/src/placo/planning/walk_pattern_generator.cpp +0 -0
  117. {placo-0.3.7 → placo-0.3.8}/src/placo/planning/walk_pattern_generator.h +0 -0
  118. {placo-0.3.7 → placo-0.3.8}/src/placo/planning/walk_tasks.cpp +0 -0
  119. {placo-0.3.7 → placo-0.3.8}/src/placo/planning/walk_tasks.h +0 -0
  120. {placo-0.3.7 → placo-0.3.8}/src/placo/problem/constraint.cpp +0 -0
  121. {placo-0.3.7 → placo-0.3.8}/src/placo/problem/constraint.h +0 -0
  122. {placo-0.3.7 → placo-0.3.8}/src/placo/problem/expression.cpp +0 -0
  123. {placo-0.3.7 → placo-0.3.8}/src/placo/problem/expression.h +0 -0
  124. {placo-0.3.7 → placo-0.3.8}/src/placo/problem/integrator.cpp +0 -0
  125. {placo-0.3.7 → placo-0.3.8}/src/placo/problem/integrator.h +0 -0
  126. {placo-0.3.7 → placo-0.3.8}/src/placo/problem/polygon_constraint.cpp +0 -0
  127. {placo-0.3.7 → placo-0.3.8}/src/placo/problem/polygon_constraint.h +0 -0
  128. {placo-0.3.7 → placo-0.3.8}/src/placo/problem/problem.cpp +0 -0
  129. {placo-0.3.7 → placo-0.3.8}/src/placo/problem/problem.h +0 -0
  130. {placo-0.3.7 → placo-0.3.8}/src/placo/problem/qp_error.cpp +0 -0
  131. {placo-0.3.7 → placo-0.3.8}/src/placo/problem/qp_error.h +0 -0
  132. {placo-0.3.7 → placo-0.3.8}/src/placo/problem/sparsity.cpp +0 -0
  133. {placo-0.3.7 → placo-0.3.8}/src/placo/problem/sparsity.h +0 -0
  134. {placo-0.3.7 → placo-0.3.8}/src/placo/problem/variable.cpp +0 -0
  135. {placo-0.3.7 → placo-0.3.8}/src/placo/problem/variable.h +0 -0
  136. {placo-0.3.7 → placo-0.3.8}/src/placo/tools/axises_mask.cpp +0 -0
  137. {placo-0.3.7 → placo-0.3.8}/src/placo/tools/axises_mask.h +0 -0
  138. {placo-0.3.7 → placo-0.3.8}/src/placo/tools/prioritized.cpp +0 -0
  139. {placo-0.3.7 → placo-0.3.8}/src/placo/tools/prioritized.h +0 -0
  140. {placo-0.3.7 → placo-0.3.8}/src/placo/trajectory/cubic_spline.cpp +0 -0
  141. {placo-0.3.7 → placo-0.3.8}/src/placo/trajectory/cubic_spline.h +0 -0
  142. {placo-0.3.7 → placo-0.3.8}/src/placo/trajectory/cubic_spline_3d.cpp +0 -0
  143. {placo-0.3.7 → placo-0.3.8}/src/placo/trajectory/cubic_spline_3d.h +0 -0
  144. {placo-0.3.7 → placo-0.3.8}/src/placo/trajectory/foot_trajectory.cpp +0 -0
  145. {placo-0.3.7 → placo-0.3.8}/src/placo/trajectory/foot_trajectory.h +0 -0
  146. {placo-0.3.7 → placo-0.3.8}/src/placo/trajectory/kick.cpp +0 -0
  147. {placo-0.3.7 → placo-0.3.8}/src/placo/trajectory/kick.h +0 -0
  148. {placo-0.3.7 → placo-0.3.8}/src/placo/trajectory/swing_foot.cpp +0 -0
  149. {placo-0.3.7 → placo-0.3.8}/src/placo/trajectory/swing_foot.h +0 -0
  150. {placo-0.3.7 → placo-0.3.8}/src/placo/trajectory/swing_foot_cubic.cpp +0 -0
  151. {placo-0.3.7 → placo-0.3.8}/src/placo/trajectory/swing_foot_cubic.h +0 -0
  152. {placo-0.3.7 → placo-0.3.8}/src/placo/trajectory/swing_foot_quintic.cpp +0 -0
  153. {placo-0.3.7 → placo-0.3.8}/src/placo/trajectory/swing_foot_quintic.h +0 -0
  154. {placo-0.3.7 → placo-0.3.8}/stubs.py +0 -0
  155. {placo-0.3.7 → placo-0.3.8}/tweak_sdist.sh +0 -0
  156. {placo-0.3.7 → placo-0.3.8}/wks.yml +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: placo
3
- Version: 0.3.7
3
+ Version: 0.3.8
4
4
  Summary: PlaCo: Rhoban Planning and Control
5
5
  Requires-Python: >= 3.8
6
6
  License-Expression: MIT
@@ -33,6 +33,8 @@ void exposeRobotType(class_<RobotType, W1>& type)
33
33
  .def("get_joint", &RobotType::get_joint)
34
34
  .def("set_joint_velocity", &RobotType::set_joint_velocity)
35
35
  .def("get_joint_velocity", &RobotType::get_joint_velocity)
36
+ .def("set_joint_acceleration", &RobotType::set_joint_acceleration)
37
+ .def("get_joint_acceleration", &RobotType::get_joint_acceleration)
36
38
  .def("set_velocity_limit", &RobotType::set_velocity_limit)
37
39
  .def("set_velocity_limits", &RobotType::set_velocity_limits)
38
40
  .def("set_torque_limit", &RobotType::set_torque_limit)
@@ -28,7 +28,6 @@ void exposeTools()
28
28
  def("wrap_angle", &wrap_angle);
29
29
  def("rotation_from_axis", &rotation_from_axis);
30
30
  def("frame_yaw", &frame_yaw);
31
- def("frame", &frame);
32
31
  def("flatten_on_floor", &flatten_on_floor);
33
32
 
34
33
  exposeStdVector<int>("vector_int");
@@ -3615,6 +3615,19 @@ class HumanoidRobot:
3615
3615
  :return: the joint current (inner state) value (e.g rad for revolute or meters for prismatic)"""
3616
3616
  ...
3617
3617
 
3618
+ def get_joint_acceleration(
3619
+ self: HumanoidRobot,
3620
+ name: str, # const std::string &
3621
+
3622
+ ) -> float:
3623
+ """Gets the joint acceleration from state.qd.
3624
+
3625
+
3626
+ :param name: joint name
3627
+
3628
+ :return: joint acceleration"""
3629
+ ...
3630
+
3618
3631
  def get_joint_offset(
3619
3632
  self: HumanoidRobot,
3620
3633
  name: str, # const std::string &
@@ -3797,6 +3810,20 @@ class HumanoidRobot:
3797
3810
  :param value: joint value (e.g rad for revolute or meters for prismatic)"""
3798
3811
  ...
3799
3812
 
3813
+ def set_joint_acceleration(
3814
+ self: HumanoidRobot,
3815
+ name: str, # const std::string &
3816
+ value: float, # double
3817
+
3818
+ ) -> None:
3819
+ """Sets the joint acceleration in state.qd.
3820
+
3821
+
3822
+ :param name: joint name
3823
+
3824
+ :param value: joint acceleration"""
3825
+ ...
3826
+
3800
3827
  def set_joint_limits(
3801
3828
  self: HumanoidRobot,
3802
3829
  name: str, # const std::string &
@@ -3926,7 +3953,7 @@ class HumanoidRobot:
3926
3953
  self: HumanoidRobot,
3927
3954
 
3928
3955
  ) -> None:
3929
- """Update the current kinematics."""
3956
+ """Update internal computation for kinematics (frames, jacobian). This method should be called when the robot state has changed."""
3930
3957
  ...
3931
3958
 
3932
3959
  def update_support_side(
@@ -6007,6 +6034,19 @@ class RobotWrapper:
6007
6034
  :return: the joint current (inner state) value (e.g rad for revolute or meters for prismatic)"""
6008
6035
  ...
6009
6036
 
6037
+ def get_joint_acceleration(
6038
+ self: RobotWrapper,
6039
+ name: str, # const std::string &
6040
+
6041
+ ) -> float:
6042
+ """Gets the joint acceleration from state.qd.
6043
+
6044
+
6045
+ :param name: joint name
6046
+
6047
+ :return: joint acceleration"""
6048
+ ...
6049
+
6010
6050
  def get_joint_offset(
6011
6051
  self: RobotWrapper,
6012
6052
  name: str, # const std::string &
@@ -6176,6 +6216,20 @@ class RobotWrapper:
6176
6216
  :param value: joint value (e.g rad for revolute or meters for prismatic)"""
6177
6217
  ...
6178
6218
 
6219
+ def set_joint_acceleration(
6220
+ self: RobotWrapper,
6221
+ name: str, # const std::string &
6222
+ value: float, # double
6223
+
6224
+ ) -> None:
6225
+ """Sets the joint acceleration in state.qd.
6226
+
6227
+
6228
+ :param name: joint name
6229
+
6230
+ :param value: joint acceleration"""
6231
+ ...
6232
+
6179
6233
  def set_joint_limits(
6180
6234
  self: RobotWrapper,
6181
6235
  name: str, # const std::string &
@@ -6301,7 +6355,7 @@ class RobotWrapper:
6301
6355
  self: RobotWrapper,
6302
6356
 
6303
6357
  ) -> None:
6304
- """Update the current kinematics."""
6358
+ """Update internal computation for kinematics (frames, jacobian). This method should be called when the robot state has changed."""
6305
6359
  ...
6306
6360
 
6307
6361
  visual_model: any # pinocchio::GeometryModel
@@ -7191,19 +7245,6 @@ def flatten_on_floor(
7191
7245
  ...
7192
7246
 
7193
7247
 
7194
- def frame(
7195
- matrix: any, # Eigen::Matrix4d
7196
-
7197
- ) -> numpy.ndarray:
7198
- """Makes an Affine3d from a 4x4 matrix (for python bindings)
7199
-
7200
-
7201
- :param matrix: the 4x4 matrix
7202
-
7203
- :return: The Affine3d"""
7204
- ...
7205
-
7206
-
7207
7248
  def frame_yaw(
7208
7249
  rotation: numpy.ndarray, # Eigen::Matrix3d
7209
7250
 
@@ -23,7 +23,7 @@ description = "PlaCo: Rhoban Planning and Control"
23
23
  license = "MIT"
24
24
  name = "placo"
25
25
  requires-python = ">= 3.8"
26
- version = "0.3.7"
26
+ version = "0.3.8"
27
27
 
28
28
  [project.urls]
29
29
  changelog = "https://github.com/rhoban/placo/blob/main/CHANGELOG.md"
@@ -170,6 +170,16 @@ double RobotWrapper::get_joint_velocity(const std::string& name)
170
170
  return state.qd[get_joint_v_offset(name)];
171
171
  }
172
172
 
173
+ void RobotWrapper::set_joint_acceleration(const std::string& name, double value)
174
+ {
175
+ state.qdd[get_joint_v_offset(name)] = value;
176
+ }
177
+
178
+ double RobotWrapper::get_joint_acceleration(const std::string& name)
179
+ {
180
+ return state.qdd[get_joint_v_offset(name)];
181
+ }
182
+
173
183
  void RobotWrapper::set_joint_velocity(const std::string& name, double value)
174
184
  {
175
185
  state.qd[get_joint_v_offset(name)] = value;
@@ -139,6 +139,20 @@ public:
139
139
  */
140
140
  double get_joint_velocity(const std::string& name);
141
141
 
142
+ /**
143
+ * @brief Sets the joint acceleration in state.qd
144
+ * @param name joint name
145
+ * @param value joint acceleration
146
+ */
147
+ void set_joint_acceleration(const std::string& name, double value);
148
+
149
+ /**
150
+ * @brief Gets the joint acceleration from state.qd
151
+ * @param name joint name
152
+ * @return joint acceleration
153
+ */
154
+ double get_joint_acceleration(const std::string& name);
155
+
142
156
  /**
143
157
  * @brief Gets the offset for a given joint in the \ref state (in \ref State.q)
144
158
  * @param name joint name
@@ -205,7 +219,8 @@ public:
205
219
  State neutral_state();
206
220
 
207
221
  /**
208
- * @brief Update the current kinematics
222
+ * @brief Update internal computation for kinematics (frames, jacobian). This method should be called when
223
+ * the robot state has changed.
209
224
  */
210
225
  void update_kinematics();
211
226
 
@@ -73,14 +73,6 @@ Eigen::Matrix3d rotation_from_axis(std::string axis, Eigen::Vector3d vector)
73
73
  return pinocchio::exp3(w * theta);
74
74
  }
75
75
 
76
- Eigen::Affine3d frame(Eigen::Matrix4d matrix)
77
- {
78
- Eigen::Affine3d result;
79
- result.matrix() = matrix;
80
-
81
- return result;
82
- }
83
-
84
76
  Eigen::Affine3d flatten_on_floor(const Eigen::Affine3d& transformation)
85
77
  {
86
78
  Eigen::Affine3d flattened = transformation;
@@ -34,13 +34,6 @@ double frame_yaw(Eigen::Matrix3d rotation);
34
34
  */
35
35
  Eigen::Matrix3d rotation_from_axis(std::string axis, Eigen::Vector3d vector);
36
36
 
37
- /**
38
- * @brief Makes an Affine3d from a 4x4 matrix (for python bindings)
39
- * @param matrix the 4x4 matrix
40
- * @return The Affine3d
41
- */
42
- Eigen::Affine3d frame(Eigen::Matrix4d matrix);
43
-
44
37
  /**
45
38
  * @brief Takes a 3D transformation and ensure it is "flat" on the floor
46
39
  * (setting z to 0 and keeping only yaw)
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes