summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--table/elrail_data.h81
1 files changed, 41 insertions, 40 deletions
diff --git a/table/elrail_data.h b/table/elrail_data.h
index c9965f51d..ac613a0dd 100644
--- a/table/elrail_data.h
+++ b/table/elrail_data.h
@@ -97,79 +97,80 @@ static byte PreferredPPPofTrackBitAtPCP[TRACK_END][DIAGDIR_END] = {
};
#undef PCP_NOT_ON_TRACK
+
#define NUM_IGNORE_GROUPS 3
-#define NO_IGNORE 0xFF
+#define IGNORE_NONE 0xFF
/** In case we have a staight line, we place pylon only every two tiles,
so there are certain tiles which we ignore. A straight line is found if
- we have exactly two preferred points.*/
+ we have exactly two PPPs. */
static byte IgnoredPCP[NUM_IGNORE_GROUPS][TLG_END][DIAGDIR_END] = {
- { /* Ignore group 1 */
+ { /* Ignore group 1, X and Y tracks */
{ /* X even, Y even */
- 1 << DIR_N | 1 << DIR_S,
+ IGNORE_NONE,
1 << DIR_NE | 1 << DIR_SW,
1 << DIR_NW | 1 << DIR_SE,
- 1 << DIR_W | 1 << DIR_E
+ IGNORE_NONE
}, { /* X even, Y odd */
- 0xFF,
- 1 << DIR_E | 1 << DIR_W,
+ IGNORE_NONE,
+ IGNORE_NONE,
1 << DIR_NW | 1 << DIR_SE,
1 << DIR_NE | 1 << DIR_SW
}, { /* X odd, Y even */
1 << DIR_NW | 1 << DIR_SE,
1 << DIR_NE | 1 << DIR_SW,
- 1 << DIR_N | 1 << DIR_S ,
- 0xFF
+ IGNORE_NONE,
+ IGNORE_NONE
}, { /* X odd, Y odd */
1 << DIR_NW | 1 << DIR_SE,
- 0xFF,
- 0xFF,
+ IGNORE_NONE,
+ IGNORE_NONE,
1 << DIR_NE | 1 << DIR_SW
}
},
- { /* Ignore group 2 */
+ { /* Ignore group 2, LEFT and RIGHT tracks */
{
1 << DIR_E | 1 << DIR_W,
- 1 << DIR_N | 1 << DIR_S,
- 0xFF,
+ IGNORE_NONE,
+ IGNORE_NONE,
1 << DIR_E | 1 << DIR_W
}, {
- 0xFF,
- 0xFF,
- 1 << DIR_N | 1 << DIR_S,
- 1 << DIR_N | 1 << DIR_S
+ IGNORE_NONE,
+ 1 << DIR_E | 1 << DIR_W,
+ 1 << DIR_E | 1 << DIR_W,
+ IGNORE_NONE
}, {
- 0xFF,
+ IGNORE_NONE,
1 << DIR_E | 1 << DIR_W,
1 << DIR_E | 1 << DIR_W,
- 1 << DIR_N | 1 << DIR_S
+ IGNORE_NONE
}, {
- 1 << DIR_N | 1 << DIR_S,
- 1 << DIR_N | 1 << DIR_S,
- 0xFF,
+ 1 << DIR_E | 1 << DIR_W,
+ IGNORE_NONE,
+ IGNORE_NONE,
1 << DIR_E | 1 << DIR_W
}
},
- { /* Ignore group 3 */
+ { /* Ignore group 3, UPPER and LOWER tracks */
{
- 0xFF,
- 0xFF,
- 0xFF,
- 0xFF
+ 1 << DIR_N | 1 << DIR_S,
+ 1 << DIR_N | 1 << DIR_S,
+ IGNORE_NONE,
+ IGNORE_NONE
}, {
- 0xFF,
- 0xFF,
- 1 << DIR_E | 1 << DIR_W,
- 0xFF
+ IGNORE_NONE,
+ IGNORE_NONE,
+ 1 << DIR_N | 1 << DIR_S,
+ 1 << DIR_N | 1 << DIR_S
}, {
- 0xFF,
- 0xFF,
- 0xFF,
- 0xFF
+ IGNORE_NONE,
+ IGNORE_NONE,
+ 1 << DIR_N | 1 << DIR_S ,
+ 1 << DIR_N | 1 << DIR_S
}, {
- 1 << DIR_E | 1 << DIR_W,
- 0xFF,
- 0xFF,
- 0xFF
+ 1 << DIR_N | 1 << DIR_S,
+ 1 << DIR_N | 1 << DIR_S,
+ IGNORE_NONE,
+ IGNORE_NONE
}
}
};