SOFA API  b3f2f2a4
Open source framework for multi-physics simuation
sofa::component::collision::response::contact Namespace Reference

Classes

class  BarycentricPenalityContact
 
class  BarycentricStickContact
 
class  CollisionResponse
 
class  ContactIdentifier
 
class  ContactListener
 
class  FrictionContact
 
class  PenalityContact
 
class  PenalityContactForceField
 
class  BaseRayContact
 
class  RayContact
 
class  RuleBasedContactManager
 
class  StickContactConstraint
 

Functions

long cantorPolynomia (sofa::core::collision::DetectionOutput::ContactId x, sofa::core::collision::DetectionOutput::ContactId y)
 
SOFA_EXPORT_DYNAMIC_LIBRARY void initExternalModule ()
 
SOFA_EXPORT_DYNAMIC_LIBRARY const chargetModuleName ()
 
SOFA_EXPORT_DYNAMIC_LIBRARY const chargetModuleVersion ()
 
SOFA_EXPORT_DYNAMIC_LIBRARY const chargetModuleComponentList ()
 
void init ()
 

Variables

Creator< Contact::Factory, BarycentricPenalityContact< SphereCollisionModel< sofa::defaulttype::Vec3Types >, SphereCollisionModel< sofa::defaulttype::Vec3Types > > > SphereSpherePenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< SphereCollisionModel< sofa::defaulttype::Vec3Types >, RigidSphereModel > > SphereRigidSpherePenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< RigidSphereModel, RigidSphereModel > > RigidSphereRigidSpherePenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< SphereCollisionModel< sofa::defaulttype::Vec3Types >, PointCollisionModel< sofa::defaulttype::Vec3Types > > > SpherePointPenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< RigidSphereModel, PointCollisionModel< sofa::defaulttype::Vec3Types > > > RigidSpherePointPenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< PointCollisionModel< sofa::defaulttype::Vec3Types >, PointCollisionModel< sofa::defaulttype::Vec3Types > > > PointPointPenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< LineCollisionModel< sofa::defaulttype::Vec3Types >, PointCollisionModel< sofa::defaulttype::Vec3Types > > > LinePointPenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< LineCollisionModel< sofa::defaulttype::Vec3Types >, LineCollisionModel< sofa::defaulttype::Vec3Types > > > LineLinePenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< LineCollisionModel< sofa::defaulttype::Vec3Types >, SphereCollisionModel< sofa::defaulttype::Vec3Types > > > LineSpherePenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< LineCollisionModel< sofa::defaulttype::Vec3Types >, RigidSphereModel > > LineRigidSpherePenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< TriangleCollisionModel< sofa::defaulttype::Vec3Types >, SphereCollisionModel< sofa::defaulttype::Vec3Types > > > TriangleSpherePenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< TriangleCollisionModel< sofa::defaulttype::Vec3Types >, RigidSphereModel > > TriangleRigidSpherePenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< TriangleCollisionModel< sofa::defaulttype::Vec3Types >, PointCollisionModel< sofa::defaulttype::Vec3Types > > > TrianglePointPenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< TriangleCollisionModel< sofa::defaulttype::Vec3Types >, LineCollisionModel< sofa::defaulttype::Vec3Types > > > TriangleLinePenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< TriangleCollisionModel< sofa::defaulttype::Vec3Types >, TriangleCollisionModel< sofa::defaulttype::Vec3Types > > > TriangleTrianglePenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< CylinderCollisionModel< sofa::defaulttype::Rigid3Types >, CylinderCollisionModel< sofa::defaulttype::Rigid3Types > > > CylinderCylinderPenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< CylinderCollisionModel< sofa::defaulttype::Rigid3Types >, TriangleCollisionModel< sofa::defaulttype::Vec3Types > > > CylinderTrianglePenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< CylinderCollisionModel< sofa::defaulttype::Rigid3Types >, SphereCollisionModel< sofa::defaulttype::Vec3Types > > > CylinderSpherePenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< CylinderCollisionModel< sofa::defaulttype::Rigid3Types >, RigidSphereModel > > CylinderRigidSpherePenalityContactClass ("PenalityContactForceField", true)
 
template class SOFA_COMPONENT_COLLISION_RESPONSE_CONTACT_API BarycentricPenalityContact< RigidSphereModel, RigidSphereModel >
 
Creator< Contact::Factory, BarycentricStickContact< SphereCollisionModel< sofa::defaulttype::Vec3Types >, SphereCollisionModel< sofa::defaulttype::Vec3Types > > > SphereSphereStickContactClass ("StickContactForceField", true)
 
Creator< Contact::Factory, BarycentricStickContact< SphereCollisionModel< sofa::defaulttype::Vec3Types >, PointCollisionModel< sofa::defaulttype::Vec3Types > > > SpherePointStickContactClass ("StickContactForceField", true)
 
Creator< Contact::Factory, BarycentricStickContact< PointCollisionModel< sofa::defaulttype::Vec3Types >, PointCollisionModel< sofa::defaulttype::Vec3Types > > > PointPointStickContactClass ("StickContactForceField", true)
 
Creator< Contact::Factory, BarycentricStickContact< LineCollisionModel< sofa::defaulttype::Vec3Types >, PointCollisionModel< sofa::defaulttype::Vec3Types > > > LinePointStickContactClass ("StickContactForceField", true)
 
Creator< Contact::Factory, BarycentricStickContact< LineCollisionModel< sofa::defaulttype::Vec3Types >, LineCollisionModel< sofa::defaulttype::Vec3Types > > > LineLineStickContactClass ("StickContactForceField", true)
 
Creator< Contact::Factory, BarycentricStickContact< LineCollisionModel< sofa::defaulttype::Vec3Types >, SphereCollisionModel< sofa::defaulttype::Vec3Types > > > LineSphereStickContactClass ("StickContactForceField", true)
 
Creator< Contact::Factory, BarycentricStickContact< TriangleCollisionModel< sofa::defaulttype::Vec3Types >, SphereCollisionModel< sofa::defaulttype::Vec3Types > > > TriangleSphereStickContactClass ("StickContactForceField", true)
 
Creator< Contact::Factory, BarycentricStickContact< TriangleCollisionModel< sofa::defaulttype::Vec3Types >, PointCollisionModel< sofa::defaulttype::Vec3Types > > > TrianglePointStickContactClass ("StickContactForceField", true)
 
Creator< Contact::Factory, BarycentricStickContact< TriangleCollisionModel< sofa::defaulttype::Vec3Types >, LineCollisionModel< sofa::defaulttype::Vec3Types > > > TriangleLineStickContactClass ("StickContactForceField", true)
 
Creator< Contact::Factory, BarycentricStickContact< TriangleCollisionModel< sofa::defaulttype::Vec3Types >, TriangleCollisionModel< sofa::defaulttype::Vec3Types > > > TriangleTriangleStickContactClass ("StickContactForceField", true)
 
int CollisionResponseClass
 
int ContactListenerClass = core::RegisterObject("ContactListener .. ").add< ContactListener >()
 
Creator< sofa::core::collision::Contact::Factory, FrictionContact< PointCollisionModel< sofa::defaulttype::Vec3Types >, PointCollisionModel< sofa::defaulttype::Vec3Types > > > PointPointFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< sofa::core::collision::Contact::Factory, FrictionContact< LineCollisionModel< sofa::defaulttype::Vec3Types >, SphereCollisionModel< sofa::defaulttype::Vec3Types > > > LineSphereFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< sofa::core::collision::Contact::Factory, FrictionContact< LineCollisionModel< sofa::defaulttype::Vec3Types >, PointCollisionModel< sofa::defaulttype::Vec3Types > > > LinePointFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< sofa::core::collision::Contact::Factory, FrictionContact< LineCollisionModel< sofa::defaulttype::Vec3Types >, LineCollisionModel< sofa::defaulttype::Vec3Types > > > LineLineFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< sofa::core::collision::Contact::Factory, FrictionContact< TriangleCollisionModel< sofa::defaulttype::Vec3Types >, SphereCollisionModel< sofa::defaulttype::Vec3Types > > > TriangleSphereFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< sofa::core::collision::Contact::Factory, FrictionContact< TriangleCollisionModel< sofa::defaulttype::Vec3Types >, PointCollisionModel< sofa::defaulttype::Vec3Types > > > TrianglePointFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< sofa::core::collision::Contact::Factory, FrictionContact< TriangleCollisionModel< sofa::defaulttype::Vec3Types >, LineCollisionModel< sofa::defaulttype::Vec3Types > > > TriangleLineFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< sofa::core::collision::Contact::Factory, FrictionContact< TriangleCollisionModel< sofa::defaulttype::Vec3Types >, TriangleCollisionModel< sofa::defaulttype::Vec3Types > > > TriangleTriangleFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< sofa::core::collision::Contact::Factory, FrictionContact< SphereCollisionModel< sofa::defaulttype::Vec3Types >, SphereCollisionModel< sofa::defaulttype::Vec3Types > > > SphereSphereFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< sofa::core::collision::Contact::Factory, FrictionContact< SphereCollisionModel< sofa::defaulttype::Vec3Types >, PointCollisionModel< sofa::defaulttype::Vec3Types > > > SpherePointFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< sofa::core::collision::Contact::Factory, FrictionContact< RigidSphereModel, RigidSphereModel > > RigidSphereRigidSphereFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< sofa::core::collision::Contact::Factory, FrictionContact< SphereCollisionModel< sofa::defaulttype::Vec3Types >, RigidSphereModel > > SphereRigidSphereFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< sofa::core::collision::Contact::Factory, FrictionContact< LineCollisionModel< sofa::defaulttype::Vec3Types >, RigidSphereModel > > LineRigidSphereFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< sofa::core::collision::Contact::Factory, FrictionContact< TriangleCollisionModel< sofa::defaulttype::Vec3Types >, RigidSphereModel > > TriangleRigidSphereFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< sofa::core::collision::Contact::Factory, FrictionContact< RigidSphereModel, PointCollisionModel< sofa::defaulttype::Vec3Types > > > RigidSpherePointFrictionContactClass ("FrictionContactConstraint", true)
 
template class SOFA_COMPONENT_COLLISION_RESPONSE_CONTACT_API FrictionContact< RigidSphereModel, RigidSphereModel >
 
int PenalityContactForceFieldClass
 
template class SOFA_COMPONENT_COLLISION_RESPONSE_CONTACT_API PenalityContactForceField< Vec3Types >
 
Creator< core::collision::Contact::Factory, RayContact< SphereCollisionModel< sofa::defaulttype::Vec3Types > > > RaySphereContactClass ("RayContact", true)
 
Creator< core::collision::Contact::Factory, RayContact< RigidSphereModel > > RayRigidSphereContactClass ("RayContact", true)
 
Creator< core::collision::Contact::Factory, RayContact< TriangleCollisionModel< sofa::defaulttype::Vec3Types > > > RayTriangleContactClass ("RayContact", true)
 
template class SOFA_COMPONENT_COLLISION_RESPONSE_CONTACT_API RayContact< RigidSphereModel >
 
int RuleBasedContactManagerClass
 
Creator< Contact::Factory, StickContactConstraint< PointCollisionModel< sofa::defaulttype::Vec3Types >, PointCollisionModel< sofa::defaulttype::Vec3Types > > > PointPointStickContactConstraintClass ("StickContactConstraint", true)
 
Creator< Contact::Factory, StickContactConstraint< LineCollisionModel< sofa::defaulttype::Vec3Types >, SphereCollisionModel< sofa::defaulttype::Vec3Types > > > LineSphereStickContactConstraintClass ("StickContactConstraint", true)
 
Creator< Contact::Factory, StickContactConstraint< LineCollisionModel< sofa::defaulttype::Vec3Types >, PointCollisionModel< sofa::defaulttype::Vec3Types > > > LinePointStickContactConstraintClass ("StickContactConstraint", true)
 
Creator< Contact::Factory, StickContactConstraint< LineCollisionModel< sofa::defaulttype::Vec3Types >, LineCollisionModel< sofa::defaulttype::Vec3Types > > > LineLineStickContactConstraintClass ("StickContactConstraint", true)
 
Creator< Contact::Factory, StickContactConstraint< TriangleCollisionModel< sofa::defaulttype::Vec3Types >, SphereCollisionModel< sofa::defaulttype::Vec3Types > > > TriangleSphereStickContactConstraintClass ("StickContactConstraint", true)
 
Creator< Contact::Factory, StickContactConstraint< TriangleCollisionModel< sofa::defaulttype::Vec3Types >, PointCollisionModel< sofa::defaulttype::Vec3Types > > > TrianglePointStickContactConstraintClass ("StickContactConstraint", true)
 
Creator< Contact::Factory, StickContactConstraint< TriangleCollisionModel< sofa::defaulttype::Vec3Types >, LineCollisionModel< sofa::defaulttype::Vec3Types > > > TriangleLineStickContactConstraintClass ("StickContactConstraint", true)
 
Creator< Contact::Factory, StickContactConstraint< TriangleCollisionModel< sofa::defaulttype::Vec3Types >, TriangleCollisionModel< sofa::defaulttype::Vec3Types > > > TriangleTriangleStickContactConstraintClass ("StickContactConstraint", true)
 
Creator< Contact::Factory, StickContactConstraint< SphereCollisionModel< sofa::defaulttype::Vec3Types >, SphereCollisionModel< sofa::defaulttype::Vec3Types > > > SphereSphereStickContactConstraintClass ("StickContactConstraint", true)
 
Creator< Contact::Factory, StickContactConstraint< SphereCollisionModel< sofa::defaulttype::Vec3Types >, PointCollisionModel< sofa::defaulttype::Vec3Types > > > SpherePointStickContactConstraintClass ("StickContactConstraint", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< TetrahedronCollisionModel, SphereCollisionModel< sofa::defaulttype::Vec3Types > > > TetrahedronSpherePenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< TetrahedronCollisionModel, PointCollisionModel< sofa::defaulttype::Vec3Types > > > TetrahedronPointPenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< TetrahedronCollisionModel, LineCollisionModel< sofa::defaulttype::Vec3Types > > > TetrahedronLinePenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< TetrahedronCollisionModel, TriangleCollisionModel< sofa::defaulttype::Vec3Types > > > TetrahedronTrianglePenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, BarycentricPenalityContact< TetrahedronCollisionModel, TetrahedronCollisionModel > > TetrahedronTetrahedronPenalityContactClass ("PenalityContactForceField", true)
 
Creator< Contact::Factory, FrictionContact< TetrahedronCollisionModel, SphereCollisionModel< sofa::defaulttype::Vec3Types > > > TetrahedronSphereFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< Contact::Factory, FrictionContact< TetrahedronCollisionModel, PointCollisionModel< sofa::defaulttype::Vec3Types > > > TetrahedronPointFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< Contact::Factory, FrictionContact< TetrahedronCollisionModel, LineCollisionModel< sofa::defaulttype::Vec3Types > > > TetrahedronLineFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< Contact::Factory, FrictionContact< TetrahedronCollisionModel, TriangleCollisionModel< sofa::defaulttype::Vec3Types > > > TetrahedronTriangleFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< Contact::Factory, FrictionContact< TetrahedronCollisionModel, TetrahedronCollisionModel > > TetrahedronTetrahedronFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< Contact::Factory, FrictionContact< TetrahedronCollisionModel, SphereCollisionModel< sofa::defaulttype::Vec3Types > > > TetrahedronSpherePenalityFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< Contact::Factory, FrictionContact< TetrahedronCollisionModel, PointCollisionModel< sofa::defaulttype::Vec3Types > > > TetrahedronPointPenalityFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< Contact::Factory, FrictionContact< TetrahedronCollisionModel, LineCollisionModel< sofa::defaulttype::Vec3Types > > > TetrahedronLinePenalityFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< Contact::Factory, FrictionContact< TetrahedronCollisionModel, TriangleCollisionModel< sofa::defaulttype::Vec3Types > > > TetrahedronTrianglePenalityFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< Contact::Factory, FrictionContact< TetrahedronCollisionModel, TetrahedronCollisionModel > > TetrahedronTetrahedronPenalityFrictionContactClass ("FrictionContactConstraint", true)
 
Creator< core::collision::Contact::Factory, RayContact< collision::geometry::TetrahedronCollisionModel > > RayTetrahedronContactClass ("RayContact", true)
 

Function Documentation

◆ cantorPolynomia()

long sofa::component::collision::response::contact::cantorPolynomia ( sofa::core::collision::DetectionOutput::ContactId  x,
sofa::core::collision::DetectionOutput::ContactId  y 
)
inline

◆ getModuleComponentList()

const char * sofa::component::collision::response::contact::getModuleComponentList ( )

◆ getModuleName()

const char * sofa::component::collision::response::contact::getModuleName ( )

◆ getModuleVersion()

const char * sofa::component::collision::response::contact::getModuleVersion ( )

◆ init()

SOFA_COMPONENT_COLLISION_RESPONSE_CONTACT_API void sofa::component::collision::response::contact::init ( )

◆ initExternalModule()

void sofa::component::collision::response::contact::initExternalModule ( )

Variable Documentation

◆ BarycentricPenalityContact< RigidSphereModel, RigidSphereModel >

◆ CollisionResponseClass

int sofa::component::collision::response::contact::CollisionResponseClass
Initial value:
= core::RegisterObject("Default class to create reactions to the collisions")
.add< CollisionResponse >()
.addAlias("DefaultContactManager")

◆ ContactListenerClass

int sofa::component::collision::response::contact::ContactListenerClass = core::RegisterObject("ContactListener .. ").add< ContactListener >()

◆ CylinderCylinderPenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<CylinderCollisionModel<sofa::defaulttype::Rigid3Types>, CylinderCollisionModel<sofa::defaulttype::Rigid3Types> > > sofa::component::collision::response::contact::CylinderCylinderPenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ CylinderRigidSpherePenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<CylinderCollisionModel<sofa::defaulttype::Rigid3Types>, RigidSphereModel> > sofa::component::collision::response::contact::CylinderRigidSpherePenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ CylinderSpherePenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<CylinderCollisionModel<sofa::defaulttype::Rigid3Types>, SphereCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::CylinderSpherePenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ CylinderTrianglePenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<CylinderCollisionModel<sofa::defaulttype::Rigid3Types>, TriangleCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::CylinderTrianglePenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ FrictionContact< RigidSphereModel, RigidSphereModel >

template class SOFA_COMPONENT_COLLISION_RESPONSE_CONTACT_API sofa::component::collision::response::contact::FrictionContact< RigidSphereModel, RigidSphereModel >

◆ LineLineFrictionContactClass

Creator<sofa::core::collision::Contact::Factory, FrictionContact<LineCollisionModel<sofa::defaulttype::Vec3Types>, LineCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::LineLineFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ LineLinePenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<LineCollisionModel<sofa::defaulttype::Vec3Types>, LineCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::LineLinePenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ LineLineStickContactClass

Creator<Contact::Factory, BarycentricStickContact<LineCollisionModel<sofa::defaulttype::Vec3Types>, LineCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::LineLineStickContactClass("StickContactForceField", true) ( "StickContactForceField"  ,
true   
)

◆ LineLineStickContactConstraintClass

Creator<Contact::Factory, StickContactConstraint<LineCollisionModel<sofa::defaulttype::Vec3Types>, LineCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::LineLineStickContactConstraintClass("StickContactConstraint", true) ( "StickContactConstraint"  ,
true   
)

◆ LinePointFrictionContactClass

Creator<sofa::core::collision::Contact::Factory, FrictionContact<LineCollisionModel<sofa::defaulttype::Vec3Types>, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::LinePointFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ LinePointPenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<LineCollisionModel<sofa::defaulttype::Vec3Types>, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::LinePointPenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ LinePointStickContactClass

Creator<Contact::Factory, BarycentricStickContact<LineCollisionModel<sofa::defaulttype::Vec3Types>, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::LinePointStickContactClass("StickContactForceField", true) ( "StickContactForceField"  ,
true   
)

◆ LinePointStickContactConstraintClass

Creator<Contact::Factory, StickContactConstraint<LineCollisionModel<sofa::defaulttype::Vec3Types>, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::LinePointStickContactConstraintClass("StickContactConstraint", true) ( "StickContactConstraint"  ,
true   
)

◆ LineRigidSphereFrictionContactClass

Creator<sofa::core::collision::Contact::Factory, FrictionContact<LineCollisionModel<sofa::defaulttype::Vec3Types>, RigidSphereModel> > sofa::component::collision::response::contact::LineRigidSphereFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ LineRigidSpherePenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<LineCollisionModel<sofa::defaulttype::Vec3Types>, RigidSphereModel> > sofa::component::collision::response::contact::LineRigidSpherePenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ LineSphereFrictionContactClass

Creator<sofa::core::collision::Contact::Factory, FrictionContact<LineCollisionModel<sofa::defaulttype::Vec3Types>, SphereCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::LineSphereFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ LineSpherePenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<LineCollisionModel<sofa::defaulttype::Vec3Types>, SphereCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::LineSpherePenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ LineSphereStickContactClass

Creator<Contact::Factory, BarycentricStickContact<LineCollisionModel<sofa::defaulttype::Vec3Types>, SphereCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::LineSphereStickContactClass("StickContactForceField", true) ( "StickContactForceField"  ,
true   
)

◆ LineSphereStickContactConstraintClass

Creator<Contact::Factory, StickContactConstraint<LineCollisionModel<sofa::defaulttype::Vec3Types>, SphereCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::LineSphereStickContactConstraintClass("StickContactConstraint", true) ( "StickContactConstraint"  ,
true   
)

◆ PenalityContactForceField< Vec3Types >

template class SOFA_COMPONENT_COLLISION_RESPONSE_CONTACT_API sofa::component::collision::response::contact::PenalityContactForceField< Vec3Types >

◆ PenalityContactForceFieldClass

int sofa::component::collision::response::contact::PenalityContactForceFieldClass
Initial value:
= core::RegisterObject("Contact using repulsive springs")
.add< PenalityContactForceField<Vec3Types> >()

◆ PointPointFrictionContactClass

Creator<sofa::core::collision::Contact::Factory, FrictionContact<PointCollisionModel<sofa::defaulttype::Vec3Types>, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::PointPointFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ PointPointPenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<PointCollisionModel<sofa::defaulttype::Vec3Types>, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::PointPointPenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ PointPointStickContactClass

Creator<Contact::Factory, BarycentricStickContact<PointCollisionModel<sofa::defaulttype::Vec3Types>, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::PointPointStickContactClass("StickContactForceField", true) ( "StickContactForceField"  ,
true   
)

◆ PointPointStickContactConstraintClass

Creator<Contact::Factory, StickContactConstraint<PointCollisionModel<sofa::defaulttype::Vec3Types>, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::PointPointStickContactConstraintClass("StickContactConstraint", true) ( "StickContactConstraint"  ,
true   
)

◆ RayContact< RigidSphereModel >

template class SOFA_COMPONENT_COLLISION_RESPONSE_CONTACT_API sofa::component::collision::response::contact::RayContact< RigidSphereModel >

◆ RayRigidSphereContactClass

Creator<core::collision::Contact::Factory, RayContact<RigidSphereModel> > sofa::component::collision::response::contact::RayRigidSphereContactClass("RayContact", true) ( "RayContact"  ,
true   
)

◆ RaySphereContactClass

Creator<core::collision::Contact::Factory, RayContact<SphereCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::RaySphereContactClass("RayContact", true) ( "RayContact"  ,
true   
)

◆ RayTetrahedronContactClass

Creator<core::collision::Contact::Factory, RayContact<collision::geometry::TetrahedronCollisionModel> > sofa::component::collision::response::contact::RayTetrahedronContactClass("RayContact", true) ( "RayContact"  ,
true   
)

◆ RayTriangleContactClass

Creator<core::collision::Contact::Factory, RayContact<TriangleCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::RayTriangleContactClass("RayContact", true) ( "RayContact"  ,
true   
)

◆ RigidSpherePointFrictionContactClass

Creator<sofa::core::collision::Contact::Factory, FrictionContact<RigidSphereModel, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::RigidSpherePointFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ RigidSpherePointPenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<RigidSphereModel, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::RigidSpherePointPenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ RigidSphereRigidSphereFrictionContactClass

Creator<sofa::core::collision::Contact::Factory, FrictionContact<RigidSphereModel, RigidSphereModel> > sofa::component::collision::response::contact::RigidSphereRigidSphereFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ RigidSphereRigidSpherePenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<RigidSphereModel, RigidSphereModel> > sofa::component::collision::response::contact::RigidSphereRigidSpherePenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ RuleBasedContactManagerClass

int sofa::component::collision::response::contact::RuleBasedContactManagerClass
Initial value:
= core::RegisterObject("Create different response to the collisions based on a set of rules")
.add< RuleBasedContactManager >()
.addAlias("RuleBasedCollisionResponse")

◆ SpherePointFrictionContactClass

Creator<sofa::core::collision::Contact::Factory, FrictionContact<SphereCollisionModel<sofa::defaulttype::Vec3Types>, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::SpherePointFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ SpherePointPenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<SphereCollisionModel<sofa::defaulttype::Vec3Types>, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::SpherePointPenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ SpherePointStickContactClass

Creator<Contact::Factory, BarycentricStickContact<SphereCollisionModel<sofa::defaulttype::Vec3Types>, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::SpherePointStickContactClass("StickContactForceField", true) ( "StickContactForceField"  ,
true   
)

◆ SpherePointStickContactConstraintClass

Creator<Contact::Factory, StickContactConstraint<SphereCollisionModel<sofa::defaulttype::Vec3Types>, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::SpherePointStickContactConstraintClass("StickContactConstraint", true) ( "StickContactConstraint"  ,
true   
)

◆ SphereRigidSphereFrictionContactClass

Creator<sofa::core::collision::Contact::Factory, FrictionContact<SphereCollisionModel<sofa::defaulttype::Vec3Types>, RigidSphereModel> > sofa::component::collision::response::contact::SphereRigidSphereFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ SphereRigidSpherePenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<SphereCollisionModel<sofa::defaulttype::Vec3Types>, RigidSphereModel> > sofa::component::collision::response::contact::SphereRigidSpherePenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ SphereSphereFrictionContactClass

Creator<sofa::core::collision::Contact::Factory, FrictionContact<SphereCollisionModel<sofa::defaulttype::Vec3Types>, SphereCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::SphereSphereFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ SphereSpherePenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<SphereCollisionModel<sofa::defaulttype::Vec3Types>, SphereCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::SphereSpherePenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ SphereSphereStickContactClass

Creator<Contact::Factory, BarycentricStickContact<SphereCollisionModel<sofa::defaulttype::Vec3Types>, SphereCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::SphereSphereStickContactClass("StickContactForceField", true) ( "StickContactForceField"  ,
true   
)

◆ SphereSphereStickContactConstraintClass

Creator<Contact::Factory, StickContactConstraint<SphereCollisionModel<sofa::defaulttype::Vec3Types>, SphereCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::SphereSphereStickContactConstraintClass("StickContactConstraint", true) ( "StickContactConstraint"  ,
true   
)

◆ TetrahedronLineFrictionContactClass

Creator<Contact::Factory, FrictionContact<TetrahedronCollisionModel, LineCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TetrahedronLineFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ TetrahedronLinePenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<TetrahedronCollisionModel, LineCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TetrahedronLinePenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ TetrahedronLinePenalityFrictionContactClass

Creator<Contact::Factory, FrictionContact<TetrahedronCollisionModel, LineCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TetrahedronLinePenalityFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ TetrahedronPointFrictionContactClass

Creator<Contact::Factory, FrictionContact<TetrahedronCollisionModel, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TetrahedronPointFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ TetrahedronPointPenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<TetrahedronCollisionModel, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TetrahedronPointPenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ TetrahedronPointPenalityFrictionContactClass

Creator<Contact::Factory, FrictionContact<TetrahedronCollisionModel, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TetrahedronPointPenalityFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ TetrahedronSphereFrictionContactClass

Creator<Contact::Factory, FrictionContact<TetrahedronCollisionModel, SphereCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TetrahedronSphereFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ TetrahedronSpherePenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<TetrahedronCollisionModel, SphereCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TetrahedronSpherePenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ TetrahedronSpherePenalityFrictionContactClass

Creator<Contact::Factory, FrictionContact<TetrahedronCollisionModel, SphereCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TetrahedronSpherePenalityFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ TetrahedronTetrahedronFrictionContactClass

Creator<Contact::Factory, FrictionContact<TetrahedronCollisionModel, TetrahedronCollisionModel> > sofa::component::collision::response::contact::TetrahedronTetrahedronFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ TetrahedronTetrahedronPenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<TetrahedronCollisionModel, TetrahedronCollisionModel> > sofa::component::collision::response::contact::TetrahedronTetrahedronPenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ TetrahedronTetrahedronPenalityFrictionContactClass

Creator<Contact::Factory, FrictionContact<TetrahedronCollisionModel, TetrahedronCollisionModel> > sofa::component::collision::response::contact::TetrahedronTetrahedronPenalityFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ TetrahedronTriangleFrictionContactClass

Creator<Contact::Factory, FrictionContact<TetrahedronCollisionModel, TriangleCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TetrahedronTriangleFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ TetrahedronTrianglePenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<TetrahedronCollisionModel, TriangleCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TetrahedronTrianglePenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ TetrahedronTrianglePenalityFrictionContactClass

Creator<Contact::Factory, FrictionContact<TetrahedronCollisionModel, TriangleCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TetrahedronTrianglePenalityFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ TriangleLineFrictionContactClass

Creator<sofa::core::collision::Contact::Factory, FrictionContact<TriangleCollisionModel<sofa::defaulttype::Vec3Types>, LineCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TriangleLineFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ TriangleLinePenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<TriangleCollisionModel<sofa::defaulttype::Vec3Types>, LineCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TriangleLinePenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ TriangleLineStickContactClass

Creator<Contact::Factory, BarycentricStickContact<TriangleCollisionModel<sofa::defaulttype::Vec3Types>, LineCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TriangleLineStickContactClass("StickContactForceField", true) ( "StickContactForceField"  ,
true   
)

◆ TriangleLineStickContactConstraintClass

Creator<Contact::Factory, StickContactConstraint<TriangleCollisionModel<sofa::defaulttype::Vec3Types>, LineCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TriangleLineStickContactConstraintClass("StickContactConstraint", true) ( "StickContactConstraint"  ,
true   
)

◆ TrianglePointFrictionContactClass

Creator<sofa::core::collision::Contact::Factory, FrictionContact<TriangleCollisionModel<sofa::defaulttype::Vec3Types>, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TrianglePointFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ TrianglePointPenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<TriangleCollisionModel<sofa::defaulttype::Vec3Types>, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TrianglePointPenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ TrianglePointStickContactClass

Creator<Contact::Factory, BarycentricStickContact<TriangleCollisionModel<sofa::defaulttype::Vec3Types>, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TrianglePointStickContactClass("StickContactForceField", true) ( "StickContactForceField"  ,
true   
)

◆ TrianglePointStickContactConstraintClass

Creator<Contact::Factory, StickContactConstraint<TriangleCollisionModel<sofa::defaulttype::Vec3Types>, PointCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TrianglePointStickContactConstraintClass("StickContactConstraint", true) ( "StickContactConstraint"  ,
true   
)

◆ TriangleRigidSphereFrictionContactClass

Creator<sofa::core::collision::Contact::Factory, FrictionContact<TriangleCollisionModel<sofa::defaulttype::Vec3Types>, RigidSphereModel> > sofa::component::collision::response::contact::TriangleRigidSphereFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ TriangleRigidSpherePenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<TriangleCollisionModel<sofa::defaulttype::Vec3Types>, RigidSphereModel> > sofa::component::collision::response::contact::TriangleRigidSpherePenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ TriangleSphereFrictionContactClass

Creator<sofa::core::collision::Contact::Factory, FrictionContact<TriangleCollisionModel<sofa::defaulttype::Vec3Types>, SphereCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TriangleSphereFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ TriangleSpherePenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<TriangleCollisionModel<sofa::defaulttype::Vec3Types>, SphereCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TriangleSpherePenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ TriangleSphereStickContactClass

Creator<Contact::Factory, BarycentricStickContact<TriangleCollisionModel<sofa::defaulttype::Vec3Types>, SphereCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TriangleSphereStickContactClass("StickContactForceField", true) ( "StickContactForceField"  ,
true   
)

◆ TriangleSphereStickContactConstraintClass

Creator<Contact::Factory, StickContactConstraint<TriangleCollisionModel<sofa::defaulttype::Vec3Types>, SphereCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TriangleSphereStickContactConstraintClass("StickContactConstraint", true) ( "StickContactConstraint"  ,
true   
)

◆ TriangleTriangleFrictionContactClass

Creator<sofa::core::collision::Contact::Factory, FrictionContact<TriangleCollisionModel<sofa::defaulttype::Vec3Types>, TriangleCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TriangleTriangleFrictionContactClass("FrictionContactConstraint", true) ( "FrictionContactConstraint"  ,
true   
)

◆ TriangleTrianglePenalityContactClass

Creator<Contact::Factory, BarycentricPenalityContact<TriangleCollisionModel<sofa::defaulttype::Vec3Types>, TriangleCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TriangleTrianglePenalityContactClass("PenalityContactForceField", true) ( "PenalityContactForceField"  ,
true   
)

◆ TriangleTriangleStickContactClass

Creator<Contact::Factory, BarycentricStickContact<TriangleCollisionModel<sofa::defaulttype::Vec3Types>, TriangleCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TriangleTriangleStickContactClass("StickContactForceField", true) ( "StickContactForceField"  ,
true   
)

◆ TriangleTriangleStickContactConstraintClass

Creator<Contact::Factory, StickContactConstraint<TriangleCollisionModel<sofa::defaulttype::Vec3Types>, TriangleCollisionModel<sofa::defaulttype::Vec3Types> > > sofa::component::collision::response::contact::TriangleTriangleStickContactConstraintClass("StickContactConstraint", true) ( "StickContactConstraint"  ,
true   
)