FhSim  3.1.0
Marine systems simulation
Loading...
Searching...
No Matches
SNetSectionData.h
1#ifndef S_NET_SECTION_DATA_H
2#define S_NET_SECTION_DATA_H
3
4#include <string>
5#include <vector>
6#include "NTrawlSpec.h"
7#ifdef FH_VISUALIZATION
8#include "OgreColourValue.h"
9#endif
10
12{
13 unsigned long iID;
14 std::string name;
15 std::vector<TrawlSpec::SNetNode_t> VSNodes;
17#ifdef FH_VISUALIZATION
18 Ogre::ColourValue twineColour;// = Ogre::ColourValue(1,1,1,1)// Ogre::ColourValue(0.1, 0.3, 0.2, 0.5)
19#endif
21 unsigned long GetNumNodes() const;
22 int AddNode(TrawlSpec::SNetNode_t SNode);
23 int AddNode(double x, double y, unsigned long conn = (unsigned long) -1);
24 int AddNode(sfh::linalg::Vec2 SPos, unsigned long conn = (unsigned long) -1);
25 int DeleteNode(int nodeIndex);
26 void DeleteAllNodes();
27 void SetNettingData(TrawlSpec::SMeshBar SBar);
28 void SetNettingData(double D, double L, double E, double Rho);
29 std::string GetConnString();
30 bool UpdateNode(int index, TrawlSpec::SNetNode_t SNodeData);
31 bool UpdateNode(int index, sfh::linalg::Vec2 SMeshPos, unsigned long conn);
32 bool UpdateNodeConn(int index, unsigned long conn);
33 bool UpdateNodeMeshPos(int index, sfh::linalg::Vec2 SMeshPos);
34
35 // Calculated data
36 double CalcInertia(double rhoWater) const;
37 double CalcWeight(double rhoWater) const;
38 double CalcNodesInertia(double* adNodeInertias, double rhoWater) const;
39 double CalcNodesWeight(double* adNodeWeights, double rhoWater) const;
40 double CalcThreadCrossSectionArea() const;
41 double CalcMeshDeterminant() const;
42 double GetNumBars() const;
43 void CalcNodeMassRatios(double* adNodeMassRatio) const;
44 double CalcThreadEA() const;
45 double GetNumKnots() const;
46
47
48};
49
50#endif
Definition SNetSectionData.h:12
unsigned long iID
The id of the panel.
Definition SNetSectionData.h:13
unsigned long GetNumNodes() const
The number of nodes of the panel.
std::string name
The name of the panel.
Definition SNetSectionData.h:14
Definition NTrawlSpec.h:79
Definition NTrawlSpec.h:56