1#ifndef TRAWLCABLE_CONSTRAINT_SETS_H
2#define TRAWLCABLE_CONSTRAINT_SETS_H
3#include "CEnvironment.h"
4#include "CollisionManager.h"
5#include "JointConstraint.h"
28 vec3 GetBallJointCouplingForce(
int i);
35 m_CouplingData = data;
36 m_elements = elements;
39 void SetStates(
double T,
const double* X){
45 for(
int i = 0; i < m_elements.size()-1; ++i){
46 m_CouplingData.elementA = m_elements[i];
47 m_CouplingData.elementB = m_elements[i+1];
48 m_master->ComputeRigidCoupling(m_CouplingData);
52 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
57 std::vector<int> m_elements;
61 std::vector<CableSegmentTask*> m_CableSegmentTask;
64 int m_ThreadManagerGroupID;
66 std::vector<vec3> m_BallJointForces;
75 double elementContactStiffness;
76 double frictionCoefficient;
77 double contactDamping;
78 std::vector<int> elements;
85 double getFrequencyCoefficient() {
86 return m_timeConstant;
89 void setStartTimeCollision(
double time) {
90 m_startTimeCollision = time;
101 std::vector<ElementContact>* GetContactPoints();
104 double m_startTimeCollision;
106 struct CableSegment {
int start;
int end;
double elementLength;
int firstElementInSegment;
int lastElementInSegment;};
107 std::vector<CableSegment> m_CableSegments;
109 std::vector<ElementContact> m_ContactPoints;
119 vector<int> elements;
121 double elementLength;
123 double elementDisplacementVolume;
130 double displacementVolume;
150 std::vector<CableSegment> m_Cables;
151 std::vector<TrawlDoor> m_TrawlDoors;
152 std::vector<ClumpWeight> m_ClumpWeights;
154 double m_timeConstant;
Definition: CEnvironment.h:10
Definition: CollisionManager.h:122
Definition: CollisionManager.h:37
Definition: ConstraintSet.h:24
Definition: ConstraintSolver.h:31
Definition: AsynchronousTask.h:15
Definition: TrawlCableConstraintSets.h:116
void ComputeConstraints(const double T, const double *const X)
Definition: JointConstraint.h:17
Definition: TrawlCableConstraintSets.h:70
void ComputeConstraints(const double T, const double *const X)
Definition: TrawlCableConstraintSets.h:31
Definition: TrawlCableConstraintSets.h:10
virtual void ComputeConstraints(const double T, const double *const X)
Definition: CollisionManager.h:6
Definition: TrawlCableConstraintSets.h:118
Definition: TrawlCableConstraintSets.h:136
Definition: TrawlCableConstraintSets.h:125
Definition: JointConstraint.h:125
Definition: TrawlCableConstraintSets.h:72
Definition: TrawlCableConstraintSets.h:106
Definition: TrawlCableConstraintSets.h:93
double MainSegmentPosition
contact point on element B
Definition: TrawlCableConstraintSets.h:98
double la
index of element B
Definition: TrawlCableConstraintSets.h:96
int ib
index of element A
Definition: TrawlCableConstraintSets.h:95
double lb
contact point on element A
Definition: TrawlCableConstraintSets.h:97
Definition: TrawlCableConstraintSets.h:12