Marine systems simulation
ITrawlCable.h
1
9#ifndef ITRAWLCABLE_H
10#define ITRAWLCABLE_H
11
12#include "ICommonComputation.h"
13#include "eigen_matrix_defs.h"
14#include "TrawlCableConstraintSets.h"
15
17{
18public:
19 virtual void Compute(const double T, const double *const X) = 0;
20 virtual void AddDependency(ICommonComputation* dependecy) = 0;
21 virtual double getRegulatorTimeConstant() = 0;
22 virtual CoRiBoDynamics::ConstraintSolver* GetConstraintSolver() = 0;
26
27/*
28 virtual int addSphereGeometry(double radius, double gamma, double frictionCoefficient, ICommonComputation* geometryUpdater) = 0;
29 virtual int addCapsuleGeometry(double radius, double length, double gamma, double frictionCoefficient, ICommonComputation* geometryUpdater) = 0;
30 virtual int addTorusGeometry(double majorRadius, double minorRadius, double gamma, double frictionCoefficient, ICommonComputation* geometryUpdater) = 0;
31 virtual int addChamferGeometry(double majorRadius, double minorRadius, double gamma, double frictionCoefficient, ICommonComputation* geometryUpdater) = 0;
32 virtual int addPlateGeometry(double lengthX, double lengthY, double thickness, double gamma, double frictionCoefficient, ICommonComputation* geometryUpdater) = 0;
33
34 virtual int addSphereGeometry(double radius, double frictionCoefficient, ICommonComputation* geometryUpdater) = 0;
35 virtual int addCapsuleGeometry(double radius, double length, double frictionCoefficient, ICommonComputation* geometryUpdater) = 0;
36 virtual int addTorusGeometry(double majorRadius, double minorRadius, double frictionCoefficient, ICommonComputation* geometryUpdater) = 0;
37 virtual int addChamferGeometry(double majorRadius, double minorRadius, double frictionCoefficient, ICommonComputation* geometryUpdater) = 0;
38 virtual int addPlateGeometry(double lengthX, double lengthY, double thickness, double frictionCoefficient, ICommonComputation* geometryUpdater) = 0;
39
40 virtual void updateGeometry(int index, const double* Position, const double* Velocity, const double* Orientation, const double* AngularVelocity) = 0;
41 virtual CoRiBoDynamics::vec6 getGeometryForce(int index, const double T, const double* const X) = 0;*/
42};
43#endif
Definition: ConstraintSolver.h:31
Definition: TrawlCableConstraintSets.h:116
Definition: TrawlCableConstraintSets.h:70
Definition: TrawlCableConstraintSets.h:10
Definition: ITrawlCable.h:17
virtual CoRiBoDynamics::TrawlCableCollisionManager * GetCollisionManager()=0
6dof rigid body constrained dynamic solver
virtual CoRiBoDynamics::EnvironmentForces * GetEnvironmentForces()=0
structural joint constraints
virtual CoRiBoDynamics::TrawlCableJointConstraint * GetJointConstraint()=0
collision constraints