Struct PinSubhingeParams#
Defined in File PinSubhinge.h
Inheritance Relationships#
Base Type#
public Karana::Dynamics::PhysicalSubhingeParams(Struct PhysicalSubhingeParams)
Struct Documentation#
-
struct PinSubhingeParams : public Karana::Dynamics::PhysicalSubhingeParams#
Hold data related to a PinSubhinge.
Public Functions
-
PinSubhingeParams(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}))#
PinSubhingeParams 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 PinSubhinge.
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.
-
~PinSubhingeParams()#
Destructor.
-
PinSubhingeParams(const PinSubhingeParams&) = delete#
-
PinSubhingeParams &operator=(const PinSubhingeParams&) = delete#
Public Members
-
km::Vec3 unit_axis#
The unit axis for the PinSubhinge.
-
bool prescribed = false#
Whether this PinSubhinge is prescribed or not.
-
km::Vec joint_limits = {{km::notReadyNaN, km::notReadyNaN}}#
The joint limits for the PinSubhinge.
-
Eigen::Matrix<double, 1, 2, Eigen::RowMajor> range_limits#
The Q range limits for the PinSubhinge.
Public Static Functions
-
static kc::ks_ptr<PinSubhingeParams> create(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}))#
Create an instance of PinSubhingeParams.
- Parameters:
unit_axis – The unit axis for the PinSubhinge.
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 PinSubhingeParams.
-
PinSubhingeParams(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}))#