|
| | PointOnLine (MobilizedBody &lineBody_B, const UnitVec3 &defaultLineDirection_B, const Vec3 &defaultPointOnLine_B, MobilizedBody &followerBody_F, const Vec3 &defaultFollowerPoint_F) |
| |
| | PointOnLine () |
| | Default constructor creates an empty handle. More...
|
| |
| PointOnLine & | setLineDisplayHalfLength (Real) |
| |
| PointOnLine & | setPointDisplayRadius (Real) |
| |
| Real | getLineDisplayHalfLength () const |
| |
| Real | getPointDisplayRadius () const |
| |
| PointOnLine & | setDefaultLineDirection (const UnitVec3 &) |
| |
| PointOnLine & | setDefaultPointOnLine (const Vec3 &) |
| |
| PointOnLine & | setDefaultFollowerPoint (const Vec3 &) |
| |
| MobilizedBodyIndex | getLineMobilizedBodyIndex () const |
| |
| MobilizedBodyIndex | getFollowerMobilizedBodyIndex () const |
| |
| const UnitVec3 & | getDefaultLineDirection () const |
| |
| const Vec3 & | getDefaultPointOnLine () const |
| |
| const Vec3 & | getDefaultFollowerPoint () const |
| |
| const UnitVec3 & | getLineDirection (const State &) const |
| |
| const Vec3 & | getPointOnLine (const State &) const |
| |
| const Vec3 & | getFollowerPoint (const State &) const |
| |
| Vec2 | getPositionErrors (const State &) const |
| |
| Vec2 | getVelocityErrors (const State &) const |
| |
| Vec2 | getAccelerationErrors (const State &) const |
| |
| Vec2 | getMultipliers (const State &) const |
| |
| const Vec2 & | getForceOnFollowerPoint (const State &) const |
| |
| | Constraint () |
| | Default constructor creates an empty Constraint handle that can be used to reference any Constraint. More...
|
| |
| | Constraint (ConstraintImpl *r) |
| | For internal use: construct a new Constraint handle referencing a particular implementation object. More...
|
| |
| void | disable (State &) const |
| | Disable this Constraint, effectively removing it from the system. More...
|
| |
| void | enable (State &) const |
| | Enable this Constraint, without necessarily satisfying it. More...
|
| |
| bool | isDisabled (const State &) const |
| | Test whether this constraint is currently disabled in the supplied State. More...
|
| |
| bool | isDisabledByDefault () const |
| | Test whether this Constraint is disabled by default in which case it must be explicitly enabled before it will take effect. More...
|
| |
| void | setDisabledByDefault (bool shouldBeDisabled) |
| | Normally Constraints are enabled when defined and can be disabled later. More...
|
| |
| | operator ConstraintIndex () const |
| | This is an implicit conversion from Constraint to ConstraintIndex when needed. More...
|
| |
| const SimbodyMatterSubsystem & | getMatterSubsystem () const |
| | Get a const reference to the matter subsystem that contains this Constraint. More...
|
| |
| SimbodyMatterSubsystem & | updMatterSubsystem () |
| | Assuming you have writable access to this Constraint, get a writable reference to the containing matter subsystem. More...
|
| |
| ConstraintIndex | getConstraintIndex () const |
| | Get the ConstraintIndex that was assigned to this Constraint when it was added to the matter subsystem. More...
|
| |
| bool | isInSubsystem () const |
| | Test whether this Constraint is contained within a matter subsystem. More...
|
| |
| bool | isInSameSubsystem (const MobilizedBody &mobod) const |
| | Test whether the supplied MobilizedBody is in the same matter subsystem as this Constraint. More...
|
| |
| int | getNumConstrainedBodies () const |
| | Return the number of unique bodies directly restricted by this constraint. More...
|
| |
| const MobilizedBody & | getMobilizedBodyFromConstrainedBody (ConstrainedBodyIndex consBodyIx) const |
| | Return a const reference to the actual MobilizedBody corresponding to one of the Constrained Bodies included in the count returned by getNumConstrainedBodies(). More...
|
| |
| const MobilizedBody & | getAncestorMobilizedBody () const |
| | Return a const reference to the actual MobilizedBody which is serving as the Ancestor body for the constrained bodies in this Constraint. More...
|
| |
| int | getNumConstrainedMobilizers () const |
| | Return the number of unique mobilizers directly restricted by this Constraint. More...
|
| |
| const MobilizedBody & | getMobilizedBodyFromConstrainedMobilizer (ConstrainedMobilizerIndex consMobilizerIx) const |
| | Return a const reference to the actual MobilizedBody corresponding to one of the Constrained Mobilizers included in the count returned by getNumConstrainedMobilizers(). More...
|
| |
| const SimbodyMatterSubtree & | getSubtree () const |
| | Return a subtree object indicating which parts of the multibody tree are potentially affected by this Constraint. More...
|
| |
| int | getNumConstrainedQ (const State &, ConstrainedMobilizerIndex) const |
| | Return the number of constrainable generalized coordinates q associated with a particular constrained mobilizer. More...
|
| |
| int | getNumConstrainedU (const State &, ConstrainedMobilizerIndex) const |
| | Return the number of constrainable mobilities u associated with a particular constrained mobilizer. More...
|
| |
| ConstrainedUIndex | getConstrainedUIndex (const State &, ConstrainedMobilizerIndex, MobilizerUIndex which) const |
| | Return the index into the constrained mobilities u array corresponding to a particular mobility of the indicated ConstrainedMobilizer. More...
|
| |
| ConstrainedQIndex | getConstrainedQIndex (const State &, ConstrainedMobilizerIndex, MobilizerQIndex which) const |
| | Return the index into the constrained coordinates q array corresponding to a particular coordinate of the indicated ConstrainedMobilizer. More...
|
| |
| int | getNumConstrainedQ (const State &) const |
| | Return the sum of the number of coordinates q associated with each of the constrained mobilizers. More...
|
| |
| int | getNumConstrainedU (const State &) const |
| | Return the sum of the number of mobilities u associated with each of the constrained mobilizers. More...
|
| |
| QIndex | getQIndexOfConstrainedQ (const State &state, ConstrainedQIndex consQIndex) const |
| | Map one of this Constraint's constrained q's to the corresponding index within the matter subsystem's whole q vector. More...
|
| |
| UIndex | getUIndexOfConstrainedU (const State &state, ConstrainedUIndex consUIndex) const |
| | Map one of this Constraint's constrained U's (or mobilities) to the corresponding index within the matter subsystem's whole u vector. More...
|
| |
| void | getNumConstraintEquationsInUse (const State &state, int &mp, int &mv, int &ma) const |
| | Find out how many holonomic (position), nonholonomic (velocity), and acceleration-only constraint equations are currently being generated by this Constraint. More...
|
| |
| void | getIndexOfMultipliersInUse (const State &state, MultiplierIndex &px0, MultiplierIndex &vx0, MultiplierIndex &ax0) const |
| | Return the start of the blocks of multipliers (or acceleration errors) assigned to this Constraint. More...
|
| |
| void | setMyPartInConstraintSpaceVector (const State &state, const Vector &myPart, Vector &constraintSpace) const |
| | Set the part of a complete constraint-space vector that belongs to this constraint. More...
|
| |
| void | getMyPartFromConstraintSpaceVector (const State &state, const Vector &constraintSpace, Vector &myPart) const |
| | Get the part of a complete constraint-space vector that belongs to this constraint. More...
|
| |
| Vector | getPositionErrorsAsVector (const State &) const |
| | Get a Vector containing the position errors. More...
|
| |
| Vector | calcPositionErrorFromQ (const State &, const Vector &q) const |
| |
| Matrix | calcPositionConstraintMatrixP (const State &) const |
| |
| Matrix | calcPositionConstraintMatrixPt (const State &) const |
| |
| Matrix | calcPositionConstraintMatrixPNInv (const State &) const |
| |
| void | calcConstraintForcesFromMultipliers (const State &, const Vector &lambda, Vector_< SpatialVec > &bodyForcesInA, Vector &mobilityForces) const |
| | This operator calculates this constraint's body and mobility forces given the complete set of multipliers lambda for this Constraint. More...
|
| |
| Vector | getVelocityErrorsAsVector (const State &) const |
| | Get a Vector containing the velocity errors. More...
|
| |
| Vector | calcVelocityErrorFromU (const State &, const Vector &u) const |
| |
| Matrix | calcVelocityConstraintMatrixV (const State &) const |
| |
| Matrix | calcVelocityConstraintMatrixVt (const State &) const |
| |
| Vector | getAccelerationErrorsAsVector (const State &) const |
| | Get a Vector containing the acceleration errors. More...
|
| |
| Vector | calcAccelerationErrorFromUDot (const State &, const Vector &udot) const |
| |
| Vector | getMultipliersAsVector (const State &) const |
| | Get a Vector containing the Lagrange multipliers. More...
|
| |
| void | getConstraintForcesAsVectors (const State &state, Vector_< SpatialVec > &bodyForcesInG, Vector &mobilityForces) const |
| | Given a State realized through Acceleration stage, return the forces that were applied to the system by this Constraint, with body forces expressed in Ground. More...
|
| |
| Vector_< SpatialVec > | getConstrainedBodyForcesAsVector (const State &state) const |
| | For convenience, returns constrained body forces as the function return. More...
|
| |
| Vector | getConstrainedMobilityForcesAsVector (const State &state) const |
| | For convenience, returns constrained mobility forces as the function return. More...
|
| |
| Real | calcPower (const State &state) const |
| | Calculate the power being applied by this Constraint to the system. More...
|
| |
| Matrix | calcAccelerationConstraintMatrixA (const State &) const |
| |
| Matrix | calcAccelerationConstraintMatrixAt (const State &) const |
| |
| void | setIsConditional (bool isConditional) |
| | (Advanced) Mark this constraint as one that is only conditionally active. More...
|
| |
| bool | isConditional () const |
| | (Advanced) Get the value of the isConditional flag. More...
|
| |
Public Member Functions inherited from SimTK::PIMPLHandle< Constraint, ConstraintImpl, true > |
| bool | isEmptyHandle () const |
| | Returns true if this handle is empty, that is, does not refer to any implementation object. More...
|
| |
| bool | isOwnerHandle () const |
| | Returns true if this handle is the owner of the implementation object to which it refers. More...
|
| |
| bool | isSameHandle (const Constraint &other) const |
| | Determine whether the supplied handle is the same object as "this" PIMPLHandle. More...
|
| |
| void | disown (Constraint &newOwner) |
| | Give up ownership of the implementation to an empty handle. More...
|
| |
| PIMPLHandle & | referenceAssign (const Constraint &source) |
| | "Copy" assignment but with shallow (pointer) semantics. More...
|
| |
| PIMPLHandle & | copyAssign (const Constraint &source) |
| | This is real copy assignment, with ordinary C++ object ("value") semantics. More...
|
| |
| void | clearHandle () |
| | Make this an empty handle, deleting the implementation object if this handle is the owner of it. More...
|
| |
| const ConstraintImpl & | getImpl () const |
| | Get a const reference to the implementation associated with this Handle. More...
|
| |
| ConstraintImpl & | updImpl () |
| | Get a writable reference to the implementation associated with this Handle. More...
|
| |
| int | getImplHandleCount () const |
| | Return the number of handles the implementation believes are referencing it. More...
|
| |
Two constraint equations.
This constraint enforces that a point fixed to one body (the "follower body") must travel along a line fixed on another body (the "line body"). The constraint is enforced by an internal (non-working) scalar force acting at the spatial location of the follower point, directed in the plane for which the line is a normal, and equal and opposite on the two bodies.
The assembly condition is the same as the run-time constraint: the point has to be moved onto the line.