18#ifndef XSECTSHAPEGEOM_H
19#define XSECTSHAPEGEOM_H
23#include <openswmm/engine/openswmm_links.h>
60 {
"CIRCULAR", SWMM_XSECT_CIRCULAR,
"Diameter",
"",
"",
"" },
61 {
"FILLED_CIRCULAR", SWMM_XSECT_FILLED_CIRCULAR,
"Diameter",
"Filled Depth",
"",
"" },
62 {
"RECT_CLOSED", SWMM_XSECT_RECT_CLOSED,
"Max Depth",
"Width",
"",
"" },
63 {
"RECT_OPEN", SWMM_XSECT_RECT_OPEN,
"Max Depth",
"Width",
"",
"" },
64 {
"TRAPEZOIDAL", SWMM_XSECT_TRAPEZOIDAL,
"Max Depth",
"Bottom Width",
"Left Slope",
"Right Slope" },
65 {
"TRIANGULAR", SWMM_XSECT_TRIANGULAR,
"Max Depth",
"Top Width",
"",
"" },
66 {
"PARABOLIC", SWMM_XSECT_PARABOLIC,
"Max Depth",
"Top Width",
"",
"" },
67 {
"POWER", SWMM_XSECT_POWER,
"Max Depth",
"Top Width",
"Exponent",
"" },
68 {
"RECT_TRIANGULAR", SWMM_XSECT_RECT_TRIANG,
"Max Depth",
"Top Width",
"Triangle Height",
"" },
69 {
"RECT_ROUND", SWMM_XSECT_RECT_ROUND,
"Max Depth",
"Top Width",
"Bottom Radius",
"" },
70 {
"MOD_BASKETHANDLE",SWMM_XSECT_MOD_BASKET,
"Max Depth",
"Bottom Width",
"Top Radius",
"" },
71 {
"HORIZ_ELLIPSE", SWMM_XSECT_HORIZ_ELLIPSE,
"Max Height",
"Max Width",
"",
"" },
72 {
"VERT_ELLIPSE", SWMM_XSECT_VERT_ELLIPSE,
"Max Height",
"Max Width",
"",
"" },
73 {
"ARCH", SWMM_XSECT_ARCH,
"Max Height",
"Max Width",
"",
"" },
74 {
"EGGSHAPED", SWMM_XSECT_EGGSHAPED,
"Max Depth",
"",
"",
"" },
75 {
"HORSESHOE", SWMM_XSECT_HORSESHOE,
"Max Depth",
"",
"",
"" },
76 {
"GOTHIC", SWMM_XSECT_GOTHIC,
"Max Depth",
"",
"",
"" },
77 {
"CATENARY", SWMM_XSECT_CATENARY,
"Max Depth",
"",
"",
"" },
78 {
"SEMIELLIPTICAL", SWMM_XSECT_SEMIELLIPTICAL,
"Max Depth",
"",
"",
"" },
82 {
"BASKETHANDLE", SWMM_XSECT_BASKETHANDLE,
"Max Depth",
"",
"",
"" },
83 {
"SEMICIRCULAR", SWMM_XSECT_SEMICIRCULAR,
"Max Depth",
"",
"",
"" },
87 {
"FORCE_MAIN", SWMM_XSECT_FORCE_MAIN,
"Diameter",
"Roughness (C or e)",
"",
"" },
88 {
"IRREGULAR", SWMM_XSECT_IRREGULAR,
"Transect (index)",
"",
"",
"" },
89 {
"CUSTOM", SWMM_XSECT_CUSTOM,
"Max Depth",
"Shape Curve (index)",
"",
"" },
90 {
"STREET", SWMM_XSECT_STREET,
"Street (index)",
"",
"",
"" },
93 {
"DUMMY", SWMM_XSECT_DUMMY,
"",
"",
"",
"" },
101 if (r.engineId == engineId)
return &r;
115 if (r.engineId == engineId)
return QString::fromLatin1(r.name);
126 const char *lbl =
nullptr;
134 return (lbl && *lbl) ? QString::fromLatin1(lbl) : QString();
Definition aquiferprovider.h:21
constexpr int kXsectStreetId
Definition xsectshapegeom.h:52
QString xsectGeomLabel(int shapeId, int ordinal)
Definition xsectshapegeom.h:123
const XsectShapeRow * findXsectShapeRow(int engineId)
Definition xsectshapegeom.h:98
QString xsectShapeName(int engineId)
Definition xsectshapegeom.h:112
constexpr int kXsectIrregularId
Definition xsectshapegeom.h:51
constexpr XsectShapeRow kXsectShapes[]
Definition xsectshapegeom.h:59
constexpr int kXsectCustomId
Definition xsectshapegeom.h:57
bool xsectGeomApplies(int shapeId, int ordinal)
Definition xsectshapegeom.h:148
bool xsectGeomIsPickerIndex(int shapeId, int ordinal)
Definition xsectshapegeom.h:168
Definition xsectshapegeom.h:39
const char * geom1Label
"Diameter", "Max Depth", … ("" if unused).
Definition xsectshapegeom.h:42
const char * geom3Label
Definition xsectshapegeom.h:44
int engineId
SWMM_XSECT_* numeric.
Definition xsectshapegeom.h:41
const char * name
"CIRCULAR", "RECT_CLOSED", …
Definition xsectshapegeom.h:40
const char * geom2Label
Definition xsectshapegeom.h:43
const char * geom4Label
Definition xsectshapegeom.h:45