Struct LinearSubhingeParams#
Defined in File PinSubhinge.h
Inheritance Relationships#
Base Type#
public Karana::Dynamics::PhysicalSubhingeParams(Struct PhysicalSubhingeParams)
Struct Documentation#
-
struct LinearSubhingeParams : public Karana::Dynamics::PhysicalSubhingeParams#
Hold data related to a LinearSubhinge.
Public Functions
-
LinearSubhingeParams(const km::Vec3 &unit_axis, bool prescribed = false, const km::Vec &joint_limits = km::Vec{{km::notReadyNaN, km::notReadyNaN}}, const Eigen::Matrix<double, 1, 2, Eigen::RowMajor> &range_limits = Eigen::Matrix<double, 1, 2, Eigen::RowMajor>({km::notReadyNaN, km::notReadyNaN}))#
LinearSubhingeParams constructor. The constructor is not meant to be called directly. Please use the create(…) method instead to create an instance.
- Parameters:
unit_axis – The unit axis for the LinearSubhinge.
prescribed – Whether the joint is prescribed or not
joint_limits – The joint limits for the subhinge. Signed infinity means the joint is unbounded, and NaN values are treated as unbounded.
range_limits – The range limits for the subhinge. Signed infinity means the joint is unbounded, and NaN values are treated as unbounded.
-
~LinearSubhingeParams()#
Destructor.
-
LinearSubhingeParams(const LinearSubhingeParams&) = delete#
-
LinearSubhingeParams &operator=(const LinearSubhingeParams&) = delete#
Public Members
-
km::Vec3 unit_axis#
The unit axis for the LinearSubhinge.
-
bool prescribed = false#
Whether this LinearSubhinge is prescribed or not.
-
km::Vec joint_limits = {2}#
The joint limits for the LinearSubhinge.
-
Eigen::Matrix<double, 1, 2, Eigen::RowMajor> range_limits#
The Q range limits for the LinearSubhinge.
Public Static Functions
-
static kc::ks_ptr<LinearSubhingeParams> create(const km::Vec3 &unit_axis, bool prescribed = false, km::Vec joint_limits = km::Vec{{km::notReadyNaN, km::notReadyNaN}}, const Eigen::Matrix<double, 1, 2, Eigen::RowMajor> &range_limits = Eigen::Matrix<double, 1, 2, Eigen::RowMajor>({km::notReadyNaN, km::notReadyNaN}))#
Create an instance of LinearSubhingeParams.
- Parameters:
unit_axis – The unit axis for the LinearSubhinge.
prescribed – Whether the joint is prescribed or not
joint_limits – The joint limits for the subhinge. Signed infinity means the joint is unbounded, and NaN values are treated as unbounded.
range_limits – The range limits for the subhinge. Signed infinity means the joint is unbounded, and NaN values are treated as unbounded.
- Returns:
A pointer to the newly created LinearSubhingeParams.
-
LinearSubhingeParams(const km::Vec3 &unit_axis, bool prescribed = false, const km::Vec &joint_limits = km::Vec{{km::notReadyNaN, km::notReadyNaN}}, const Eigen::Matrix<double, 1, 2, Eigen::RowMajor> &range_limits = Eigen::Matrix<double, 1, 2, Eigen::RowMajor>({km::notReadyNaN, km::notReadyNaN}))#