Marine systems simulation
CoRiBoDynamics::Structures::SupergridCableCollisionManager Class Reference
+ Inheritance diagram for CoRiBoDynamics::Structures::SupergridCableCollisionManager:
+ Collaboration diagram for CoRiBoDynamics::Structures::SupergridCableCollisionManager:

Public Member Functions

 SupergridCableCollisionManager (ConstraintSolver *solver, SupergridLineStructure *cable, double timeConstant)
 
virtual void ComputeConstraints (const double T, const double *const X)
 
- Public Member Functions inherited from CoRiBoDynamics::CollisionManager
 CollisionManager (ConstraintSolver *solver, double timeConstant)
 
int AddCapsule (double radius, double height, double contactStiffness, double contactDamping, double frictionCoefficient, int index)
 
int AddSphere (double radius, double contactStiffness, double contactDamping, double frictionCoefficient, int index)
 
int AddTorus (double majorRadius, double minorRadius, double contactStiffness, double contactDamping, double frictionCoefficient, int index)
 
int AddChamfer (double majorRadius, double minorRadius, double contactStiffness, double contactDamping, double frictionCoefficient, int index)
 
int AddPlate (double lengthX, double lengthY, double thickness, double contactStiffness, double contactDamping, double frictionCoefficient, int index)
 
int addExternalSphere (double radius, const double *Position, const double *Velocity, const double *Orientation, const double *AngularVelocity, double contactStiffness, double contactDamping, double frictionCoefficient)
 
int addExternalCapsule (double length, double radius, const double *Position, const double *Velocity, const double *Orientation, const double *AngularVelocity, double contactStiffness, double contactDamping, double frictionCoefficient)
 
int addExternalToroid (double majorRadius, double minorRadius, const double *Position, const double *Velocity, const double *Orientation, const double *AngularVelocity, double contactStiffness, double contactDamping, double frictionCoefficient)
 
int addExternalChamfer (double majorRadius, double minorRadius, const double *Position, const double *Velocity, const double *Orientation, const double *AngularVelocity, double contactStiffness, double contactDamping, double frictionCoefficient)
 
int addExternalPlate (double lengthX, double lengthY, double thickness, const double *Position, const double *Velocity, const double *Orientation, const double *AngularVelocity, double contactStiffness, double contactDamping, double frictionCoefficient)
 
void updateExternalElement (int index, const double *Position, const double *Velocity, const double *Orientation, const double *AngularVelocity)
 
vec6 getExternalObjectReactionForce (int index)
 
vec6 getExternalObjectReactionForce (ExternalObject &external_object)
 
vec6 getInternalObjectReactionForce (InternalObject &internal_object)
 
virtual void ComputeConstraints (const double T, const double *const X)
 
void setSpacePartitionOrigo (double x, double y, double z)
 
void setSpacePartitionBlockSize (double length)
 
- Public Member Functions inherited from CoRiBoDynamics::ConstraintSet
 ConstraintSet (ConstraintSolver *solver)
 
virtual void ComputeConstraints (const double T, const double *const X)=0
 

Protected Attributes

SupergridLineStructurem_cable
 
- Protected Attributes inherited from CoRiBoDynamics::CollisionManager
std::vector< ExternalObject, Eigen::aligned_allocator< ExternalObject > > m_ExternalObjects
 
std::vector< InternalObject, Eigen::aligned_allocator< InternalObject > > m_InternalObjects
 list of all external objects in this collision manager
 
DataStructures::SpacePartitioner m_CollisionPartition
 
ObjectFactoryStack< contact_matrix_index_pairm_external_contact
 
double m_timeConstant
 

Additional Inherited Members

- Public Types inherited from CoRiBoDynamics::CollisionManager
enum  ShapeType {
  SPHERE =0 , CAPSULE =1 , CHAMFER =2 , BOX =3 ,
  TOROID =4 , PLATE =5
}
 
- Protected Member Functions inherited from CoRiBoDynamics::CollisionManager
void CollisionTest (InternalObject *objectA, InternalObject *objectB, const double *const X)
 list of all internal objects in this collision manager
 
void CollisionTest (ExternalObject *ExtObj, InternalObject *IntObj, const double *const X)
 
double ObjectDistance (GeometricObject *shapeA, GeometricObject *shapeB, GeometryTools::MinDistanceInfo &result)
 
bool BoundingSphereRejectionTest (GeometricObject *sphereA, GeometricObject *sphereB)
 
bool OBB_BoundingSphereRejectionTest (GeometricObject *box, GeometricObject *sphere)
 
- Protected Member Functions inherited from CoRiBoDynamics::ConstraintSet
const std::vector< RigidElement * > & ElementVector ()
 
void addConstraintResultantForce (int element, const vec6 &Force)
 
const vec3 Acceleration (int element)
 
const vec3 AngularAcceleration (int element)
 
const vec6 SecondDerivatives (int element)
 
void addMatrix (int i, int j, const mat6 &M)
 

Member Function Documentation

◆ ComputeConstraints()

virtual void CoRiBoDynamics::Structures::SupergridCableCollisionManager::ComputeConstraints ( const double  T,
const double *const  X 
)
virtual

Computes and returns the constraint system matrix for the current states (T and X). Adds constraint forces.

Reimplemented from CoRiBoDynamics::CollisionManager.

Reimplemented in CoRiBoDynamics::Structures::SupergridWinchCableCollisionManager.


The documentation for this class was generated from the following file: