Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
#pragma once
// [cart-sys3d.h]: 3D cartesian axis type
//
// -------------------------------------------------------------------------------------------- //
#include <string.h>
namespace nse
{
namespace nse_const3d {
enum axisType {
axisX = 0, axisY = 1, axisZ = 2,
axisXY = 3, axisXZ = 4, axisYZ = 5, axisXYZ = 6
};
}
const char* axis_name(const nse_const3d::axisType axis);
bool axis_value(nse_const3d::axisType *axis, const char* name);
bool is_axis_1d(const nse_const3d::axisType axis);
bool is_axis_2d(const nse_const3d::axisType axis);
bool is_axis_3d(const nse_const3d::axisType axis);
namespace nse_const3d {
enum domainSideType {
westSide = 0, eastSide = 1,
southSide = 2, northSide = 3,
bottomSide = 4, topSide = 5
};
}
}
// Implementation:
// -------------------------------------------------------------------------------------------- //
inline const char* nse::axis_name(const nse_const3d::axisType axis) {
if (axis == nse_const3d::axisX) return "X";
if (axis == nse_const3d::axisY) return "Y";
if (axis == nse_const3d::axisZ) return "Z";
if (axis == nse_const3d::axisXY) return "XY";
if (axis == nse_const3d::axisXZ) return "XZ";
if (axis == nse_const3d::axisYZ) return "YZ";
if (axis == nse_const3d::axisXYZ) return "XYZ";
return "UNDEF";
}
inline bool nse::axis_value(nse_const3d::axisType *axis, const char* name)
{
if (!strcmp(name, axis_name(nse_const3d::axisX))) {
(*axis) = nse_const3d::axisX;
return true;
}
if (!strcmp(name, axis_name(nse_const3d::axisY))) {
(*axis) = nse_const3d::axisY;
return true;
}
if (!strcmp(name, axis_name(nse_const3d::axisZ))) {
(*axis) = nse_const3d::axisZ;
return true;
}
if (!strcmp(name, axis_name(nse_const3d::axisXY))) {
(*axis) = nse_const3d::axisXY;
return true;
}
if (!strcmp(name, axis_name(nse_const3d::axisXZ))) {
(*axis) = nse_const3d::axisXZ;
return true;
}
if (!strcmp(name, axis_name(nse_const3d::axisYZ))) {
(*axis) = nse_const3d::axisYZ;
return true;
}
if (!strcmp(name, axis_name(nse_const3d::axisXYZ))) {
(*axis) = nse_const3d::axisXYZ;
return true;
}
return false;
}
inline bool nse::is_axis_1d(const nse_const3d::axisType axis)
{
return ((axis == nse_const3d::axisX) ||
(axis == nse_const3d::axisY) || (axis == nse_const3d::axisZ));
}
inline bool nse::is_axis_2d(const nse_const3d::axisType axis)
{
return ((axis == nse_const3d::axisXY) ||
(axis == nse_const3d::axisXZ) || (axis == nse_const3d::axisYZ));
}
inline bool nse::is_axis_3d(const nse_const3d::axisType axis)
{
return (axis == nse_const3d::axisXYZ);
}