|
Fx2D
A C++20 2D rigid-body physics engine
|
Base type for solver constraints. More...
#include <Solver.h>
Inheritance diagram for FxConstraint:Public Member Functions | |
| void | set_stiffness (double k) |
| void | setCompliance (double c) |
| virtual void | evaluate (float &C, FxVec2f &g1, FxVec2f &g2, float >h1, float >h2, bool &active) const =0 |
| void | resolve (double dt) |
| const std::string & | get_name () const |
| const std::shared_ptr< FxEntity > & | get_entity1 () const |
| const std::shared_ptr< FxEntity > & | get_entity2 () const |
| std::string | get_entity1_name () const |
| std::string | get_entity2_name () const |
| virtual | ~FxConstraint ()=default |
Protected Attributes | |
| std::string | m_name |
| double | compliance = 1e-7 |
| bool | carries_velocity = true |
| std::shared_ptr< FxEntity > | entity1 |
| std::shared_ptr< FxEntity > | entity2 |
Friends | |
| class | FxJoint |
|
virtualdefault |
|
pure virtual |
Implemented in FxAngularLimitConstraint, FxAngleLockConstraint, FxAnchorConstraint, FxSeparationConstraint, and FxMotionAlongAxisConstraint.
|
inline |
| std::string FxConstraint::get_entity1_name | ( | ) | const |
|
inline |
| std::string FxConstraint::get_entity2_name | ( | ) | const |
|
inline |
| void FxConstraint::resolve | ( | double | dt | ) |