Class uipc::constitution::AffineBodyRevoluteJointExternalBodyForce
ClassList > uipc > constitution > AffineBodyRevoluteJointExternalBodyForce
Inherits the following classes: uipc::constitution::Constraint
Public Functions
| Type | Name |
|---|---|
| AffineBodyRevoluteJointExternalBodyForce (const Json & config=default_config()) |
|
| void | apply_to (geometry::SimplicialComplex & sc, Float torque=Float{0}) Apply uniform external torque around the revolute joint axis to all joints. |
| void | apply_to (geometry::SimplicialComplex & sc, span< Float > torques) Apply per-joint external torques around the revolute joint axis. |
| ~AffineBodyRevoluteJointExternalBodyForce () override |
Public Functions inherited from uipc::constitution::Constraint
See uipc::constitution::Constraint
| Type | Name |
|---|---|
| Constraint () noexcept |
Public Functions inherited from uipc::constitution::IConstitution
See uipc::constitution::IConstitution
| Type | Name |
|---|---|
| std::string_view | name () noexcept const |
| std::string_view | type () noexcept const |
| U64 | uid () noexcept const |
| const builtin::UIDInfo & | uid_info () noexcept const |
| virtual | ~IConstitution () = default |
Public Static Functions
| Type | Name |
|---|---|
| Json | default_config () |
Protected Functions inherited from uipc::constitution::Constraint
See uipc::constitution::Constraint
| Type | Name |
|---|---|
| void | apply_to (geometry::Geometry & geo) const |
| virtual U64 | get_uid () noexcept const = 0 |
Protected Functions inherited from uipc::constitution::IConstitution
See uipc::constitution::IConstitution
| Type | Name |
|---|---|
| virtual U64 | get_uid () noexcept const = 0 |
Public Functions Documentation
function AffineBodyRevoluteJointExternalBodyForce
uipc::constitution::AffineBodyRevoluteJointExternalBodyForce::AffineBodyRevoluteJointExternalBodyForce (
const Json & config=default_config()
)
function apply_to [1/2]
Apply uniform external torque around the revolute joint axis to all joints.
void uipc::constitution::AffineBodyRevoluteJointExternalBodyForce::apply_to (
geometry::SimplicialComplex & sc,
Float torque=Float{0}
)
Must be applied AFTER AffineBodyRevoluteJoint (constitution_uid == 18). The torque is a scalar: +τ applied to body_j, -τ applied to body_i, where the axis is defined by the edge direction.
Parameters:
scThe simplicial complex containing the edges representing the joints.torqueThe scalar torque value applied to all joints.
function apply_to [2/2]
Apply per-joint external torques around the revolute joint axis.
void uipc::constitution::AffineBodyRevoluteJointExternalBodyForce::apply_to (
geometry::SimplicialComplex & sc,
span< Float > torques
)
Must be applied AFTER AffineBodyRevoluteJoint (constitution_uid == 18).
Parameters:
scThe simplicial complex containing the edges representing the joints.torquesPer-joint scalar torque values (one per edge).
function ~AffineBodyRevoluteJointExternalBodyForce
uipc::constitution::AffineBodyRevoluteJointExternalBodyForce::~AffineBodyRevoluteJointExternalBodyForce () override
Public Static Functions Documentation
function default_config
The documentation for this class was generated from the following file include/uipc/constitution/affine_body_revolute_joint_external_force.h