File mechanics/src/collision/RigidBody2dDS.hpp#
Go to the source code of this file
Definition of an abstract 3D rigid body above NewtonEulerDS.
-
class RigidBody2dDS : public LagrangianLinearTIDS, public std::enable_shared_from_this<RigidBody2dDS>
Public Functions
-
RigidBody2dDS(SP::SiconosVector position, SP::SiconosVector velocity, SP::SiconosMatrix mass = SP::SimpleMatrix())#
-
virtual ~RigidBody2dDS()#
-
inline double scalarMass()#
-
inline void setUseContactorInertia(bool use)#
-
inline bool useContactorInertia()#
-
inline bool allowSelfCollide()
Return the value of the _allowSelfCollide flag.
-
inline void setAllowSelfCollide(bool x)
Set the value of the _allowSelfCollide flag.
-
inline SP::SiconosContactorSet contactors() const
- Returns:
the contactor set associated with this body
-
inline void setContactors(SP::SiconosContactorSet c)
Provide a set of contactors to the body.
- Parameters:
c – A SP::SiconosContactorSet
-
inline virtual SP::SiconosVector base_position()
Make the base position of the contactors equal to the DS q vector.
- Returns:
a SP::SiconosVector
-
ACCEPT_BASE_VISITORS(LagrangianLinearTIDS)#
Protected Attributes
-
double _scalarMass#
a scalar mass in the case of RigidBody2dDS
-
bool _useContactorInertia#
-
bool _allowSelfCollide = true#
If false, bodies connected to this body by a joint will not collide.
See also NewtonEulerJointR::_allowSelfCollide
-
RigidBody2dDS(SP::SiconosVector position, SP::SiconosVector velocity, SP::SiconosMatrix mass = SP::SimpleMatrix())#