12#ifndef CNetElementDef_H
13#define CNetElementDef_H
16#include "SNetSectionData.h"
17#include <fhsim/Exceptions.h>
26 NODE_ON_EDGE_AB = 100,
27 NODE_ON_EDGE_BC = 101,
28 NODE_ON_EDGE_CA = 102,
29 NODE_NOT_ON_EDGE = -100
65 void DivideEdge(
int newNode,
int newElementID,
NetElementDef* sNewPanel,
int nodeNoOldPanel,
int nodeNoNewPanel,
double divideAtDistance=0.5);
67 NodePosition NodesDefineEdge(
int aiNodes[2]);
70 bool Test(
bool bOk, std::string message)
const;
71 bool Test(
int iIn1,
int iIn2,
bool shouldBeEqual, std::string sArg1)
const;
72 bool Test(
double dIn1,
double dIn2,
bool shouldBeEqual, std::string sArg1)
const;
73 bool Test(std::string sIn1, std::string sIn2,
bool shouldBeEqual, std::string sArg1)
const;
Class containing the description of a net panel and methods necessary for taking this over to triangu...
Definition NetElementDef.h:22
bool PanelEdge2Nodes(unsigned short edge, int aiNodes[2]) const
Finds the global nodes connected to the specified edge.
double refineFactor
The refine factor of the panel.
Definition NetElementDef.h:32
double CalcEdgeLength(int edgeIndex) const
Calculates the length of the specified edge.
bool Check() const
Does the initialization and checking to make sure that the panel is ready for simulation.
bool Divide(int aiNodes[2], int newNode, int newElementID, NetElementDef **ppSNewPanel)
Divides the panel in two, if the panel has an edge between the two provided nodes.
bool Panel2Triangles(int newElementID, NetElementDef *sNewPanel)
Divides the panel in two triangular ones, if the panel is quadrangular.
double CalcLengthFactor() const
Calculates the largest length factor of the panel.
double CalcLongestEdge() const
Calculates the longest edge length of the panel.
unsigned short FindLongestEdge() const
Finds the longest edge of the panel.
NetElementDef()
Constructor.
double FindLongestEdge(int aiNodes[2]) const
Finds the nodes connected to the longest edge of the panel.
Definition SNetSectionData.h:11
Definition NTrawlSpec.h:217