1 #ifndef BIORBD_MUSCLES_WRAPPING_CYLINDER_H
2 #define BIORBD_MUSCLES_WRAPPING_CYLINDER_H
4 #include "biorbdConfig.h"
5 #include "Muscles/WrappingObject.h"
29 const biorbd::utils::Scalar& diameter,
30 const biorbd::utils::Scalar& length,
31 bool isCylinderPositiveSign);
44 const biorbd::utils::Scalar& diameter,
45 const biorbd::utils::Scalar& length,
46 bool isCylinderPositiveSign,
78 biorbd::utils::Scalar* length =
nullptr);
97 biorbd::utils::Scalar* length =
nullptr) ;
108 biorbd::utils::Scalar* length =
nullptr);
120 bool updateKin =
true);
127 const biorbd::utils::Scalar& val);
133 const biorbd::utils::Scalar& diameter()
const;
139 biorbd::utils::Scalar radius()
const;
146 const biorbd::utils::Scalar& val);
152 const biorbd::utils::Scalar& length()
const;
168 m_p1(std::make_shared<biorbd::utils::Vector3d>(p1)),
169 m_p2(std::make_shared<biorbd::utils::Vector3d>(p2))
171 std::shared_ptr<biorbd::utils::Vector3d>
m_p1;
172 std::shared_ptr<biorbd::utils::Vector3d>
m_p2;
181 void findTangentToCircle(
200 bool findVerticalNode(
210 #ifdef BIORBD_USE_CASADI_MATH
211 biorbd::utils::Scalar checkIfWraps(
223 biorbd::utils::Scalar computeLength(
226 std::shared_ptr<biorbd::utils::Scalar>
m_dia;
239 #endif // BIORBD_MUSCLES_WRAPPING_CYLINDER_H