diff --git a/paths/gb/a/d0.osm b/paths/gb/a/d0.osm new file mode 100644 index 00000000..987ed732 --- /dev/null +++ b/paths/gb/a/d0.osm @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/paths/gb/a/d1.osm b/paths/gb/a/d1.osm index 69ad0091..b9e51518 100644 --- a/paths/gb/a/d1.osm +++ b/paths/gb/a/d1.osm @@ -1,316 +1,753 @@ - - + - - - - - - - - - - - - - + + + + + + + + + + + + + - - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - + + + + + + - - - + + + - - - + + + + + + + + + + + + - - - + + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - + + + + + + - - - + + + - - - + + + + - - - + + + - - - + + + + + + + + + + + + + - - - + + + + - - - + + + + + + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/paths/gb/a/d2.osm b/paths/gb/a/d2.osm index 0151fb1f..eabc2eb6 100644 --- a/paths/gb/a/d2.osm +++ b/paths/gb/a/d2.osm @@ -1,8182 +1,8171 @@ - - - - - + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - + + - + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - + - - - + + + - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - - - + + + + - + - + - - + + - - - - - + + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - + + + + - - - + + + - + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - + - - + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + - - + + - - - - - - - + + + + + + + - - - - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - + + + + - - - - - - - - - + + + + + + + + + - - - - - - + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - + - - - - - - - + + + + + + + - + - - - - - + + + + + - - - - - - - - - + + + + + + + + + - + - - - - - - - - - - - - - + + + + + + + + + + + + + - + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - - - - + + + + + + + + - - - + + + - - - + + + - - - - - - - - - - + + + + + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - - - - - - + + + + + + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - - - - - + + + + + + + - - - - - - + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - + + + - - - + + + - - - - - - - - + + + + + + + + - - - - - - - + + + + + + + - - - + + + - - - + + + - - - + + + - - - - - - - + + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - - - + + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - - + + + + + + - - - - - - - - + + + + + + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - - - - + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - - - + + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - + + + + + - - - - - - + + + + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - - - - + + + + + + - - - + + + - - - + + + - - - + + + - - - - - - - - - - + + + + + + + + + + - - - - - - - + + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - - - - - - - + + + + + + + + + - - - + + + - - - + + + - - - + + + - - - - - + + + + + - - - + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - - - - + + + + + + + + - - - - - - - - + + + + + + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - - - - + + + + + + - - - + + + - - - + + + - - - + + + - - - - - - - - - + + + + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - - - - + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - - - - - + + + + + + + - - - - + + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - - - - + + + + + + - - - + + + - - - + + + - - - + + + - - - - - - - - - - + + + + + + + + + + - - - + + + - - - - - + + + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - - - + + + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - - - - - - + + + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - - - - + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - - - - + + + + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - - - - + + + + + + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - - - - + + + + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - - - - - - + + + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - - - - - + + + + + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - - - + + + + + + + - - - - + + + + - - - + + + - - - + + + - - - - - + + + + + - - - - - - + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - - + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - - - + + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - + + + + + - - - - - - - - - + + + + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - - - + + + + + + + - - - + + + - - - + + + - - - - + + + + - - - - - - - + + + + + + + - - - + + + - - - - - + + + + + - - - - - - - - - + + + + + + + + + - - - + + + - - - - - - - - - - - + + + + + + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - - - + + + + + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - - - - - - - - - - - + + + + + + + + + + + + + - - - + + + - - - - - - - - + + + + + + + + - - - + + + - - - - - - - + + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - + + + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - - - - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - - + + + + - - - + + + - - - - - - + + + + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - + + + + + + + + - - - - - - - - - - - - - - + + + + + + + + + + + + + + - - - - - - - - - - + + + + + + + + + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + diff --git a/paths/gb/a/d4.osm b/paths/gb/a/d4.osm index 7be395a0..a0d1a1df 100644 --- a/paths/gb/a/d4.osm +++ b/paths/gb/a/d4.osm @@ -1,4306 +1,12947 @@ - - + - - - - - + + + + - - + - - + + - - + + - + - + - + - - - - - + + + + + - - + + - - - + + + - + - - - - - - - - - - - + + + + + + + + + + + - + - + - + - + - - - + + + - + - + - - - - - - - - - - - - + + + + + + + + + + + + - + - - - - + + + + - + - - - - - - - - - + + + + + + + + + - - - - - - - + + + + + + + - - - + + + - - - - + + + - + - - - - - - - - + + + + + + + + - - - - - - - + + + + + + + - + - + - - - - - - - - - - + + + + + + + + + + - + - - - + + + - + - - - + + + - - - - - - - + + + + + + + - - - + + + + + - + - + - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + - + - + - + - - - - - + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - + - + - - - - - - - + + + + + + + - - - - - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - + + + + + + + + + - + - - + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - + - + - + - - + - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - + + + - - - + + + - - - - + + + + - - - + + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - - - + + + + + - - - - + + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - + + + + + - - - + + + - - - + + + - - - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - + + + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - - - + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - - + + + + - - - - + + + + + - - - - + + + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + + - - - + + + - - - + + + - - - + + + + + + + + - - - + + + + - - - + + + - - - - + + + + + + + + - - - + + + - - - + + + - - - + + + + + + + + - - - + + + + + + + + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + + + + + + + + + + + + - - - + + + + + + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/rules/gb/a/d0.map b/rules/gb/a/d0.map new file mode 100644 index 00000000..30b903c1 --- /dev/null +++ b/rules/gb/a/d0.map @@ -0,0 +1,8 @@ +with detail = 0 { + with link = "line.gb.HL" { + let si = path("d0.gb.hl"); + + track(:first :pax, si[:stj, :inv]); + } +} + diff --git a/rules/gb/a/d1/a.map b/rules/gb/a/d1/a.map new file mode 100644 index 00000000..05f75a9a --- /dev/null +++ b/rules/gb/a/d1/a.map @@ -0,0 +1,10 @@ +with detail = 1 { + with link = "line.gb.AI" { + let ai = path("d1.gb.ai"); + + track(:first :museum, ai[:avi, :bro]); + track(:first :removed, ai[:bro, :for]); + track(:first :pax, ai[:for, :mil.y]); + } +} + diff --git a/rules/gb/a/d1/b.map b/rules/gb/a/d1/b.map new file mode 100644 index 00000000..12f76e72 --- /dev/null +++ b/rules/gb/a/d1/b.map @@ -0,0 +1,6 @@ +with detail = 1 { + with link = "line.gb.BAF" { + track(:first :removed, path("d1.gb.baf")[:bal, :abe]); + } +} + diff --git a/rules/gb/a/d1/d.map b/rules/gb/a/d1/d.map new file mode 100644 index 00000000..85b8945c --- /dev/null +++ b/rules/gb/a/d1/d.map @@ -0,0 +1,6 @@ +with detail = 1 { + with link = "line.gb.DNB" { + track(:third :removed, path("d1.gb.dnb")[:mou, :dor]); + } +} + diff --git a/rules/gb/a/d1/h.map b/rules/gb/a/d1/h.map new file mode 100644 index 00000000..db082a93 --- /dev/null +++ b/rules/gb/a/d1/h.map @@ -0,0 +1,17 @@ +with detail = 1 { + with link = "line.gb.HL" { + let si = path("d1.gb.hl"); + + track(:first :pax, si[:stj, :bla]); + track(:first :double :pax, si[:bla, :dal]); + track(:first :pax, si[:dal, :cul]); + track(:first :double :pax, si[:cul, :inv]); + } + + with link = "point.gb.Inverness" { + slabel(:left :pax, path("d1.gb.hl")[:inv] + (2dt, 0.8dt), + hbox(:right:top, "Inverness") + ); + } +} + diff --git a/rules/gb/a/d1/k.map b/rules/gb/a/d1/k.map new file mode 100644 index 00000000..2d84286c --- /dev/null +++ b/rules/gb/a/d1/k.map @@ -0,0 +1,6 @@ +with detail = 1 { + with link = "line.gb.KYL" { + track(:first :pax, path("d1.gb.kyl")[:din.yk, :kyl]); + } +} + diff --git a/rules/gb/a/d1/l.map b/rules/gb/a/d1/l.map new file mode 100644 index 00000000..9faf7963 --- /dev/null +++ b/rules/gb/a/d1/l.map @@ -0,0 +1,6 @@ +with detail = 1 { + with link = "line.gb.LLR" { + track(:third :removed, path("d1.gb.llr")[:wic.yl, :lyb]); + } +} + diff --git a/rules/gb/a/d1/m.map b/rules/gb/a/d1/m.map new file mode 100644 index 00000000..3fbaf691 --- /dev/null +++ b/rules/gb/a/d1/m.map @@ -0,0 +1,6 @@ +with detail = 1 { + with link = "line.gb.MOF" { + track(:first :removed, path("d1.gb.mof")[:mui, :for]); + } +} + diff --git a/rules/gb/a/d2/a.map b/rules/gb/a/d2/a.map index 29b610fe..607d21ee 100644 --- a/rules/gb/a/d2/a.map +++ b/rules/gb/a/d2/a.map @@ -59,27 +59,46 @@ with detail = 2 { } -# GB AFS. Aviemore - Forres +# GB AI. Aviemore - Forres - Millburn Junction with detail = 2 { - let af = path("d2.gb.afs"); + let ai = path("d2.gb.ai"); - with link = "line.gb.AFS" { - track(:first :museum, af[:avi.yf, :bro]); - track(:first :removed, af[:bro, :for.ya]); - - line_label(:right:w :museum, af[:avi.yf + 4km], "AFS"); - line_badge(:removed, af[:bro + 15km], "AFS"); - line_label(:right:nw :removed, af[:for.ya - 7km], "AFS"); + with link = "line.gb.AI" { + track(:first :museum, ai[:avi.yf, :boa]); + line_label(:right:w :museum, ai[:avi.yf + 4km], "AI"); } with link = "point.gb.Boat-of-Garten" { - statdot(:museum, af[:boa] >> 0.3dt); - slabel(:right :museum, af[:boa] + (1.8dt, 1.3dt), "Boat of Garten"); + statdot(:museum, ai[:boa] >> 0.3dt); + slabel(:right :museum, ai[:boa] + (1.8dt, 1.3dt), "Boat of Garten"); + } + + with link = "line.gb.AI" { + track(:first :museum, ai[:boa, :bro]); } with link = "point.gb.Broomhill" { - statdot(:museum, af[:bro]); - slabel(:left :museum, af[:bro] + (-1.5dt, -0.3dt), "Broomhill"); + statdot(:museum, ai[:bro]); + slabel(:left :museum, ai[:bro] + (-1.5dt, -0.3dt), "Broomhill"); + } + + with link = "line.gb.AI" { + track(:first :removed, ai[:bro, :for.ya]); + track(:first :pax, ai[:for.ya, :gol]); + + line_badge(:removed, ai[:bro + 15km], "AI"); + line_label(:right:nw :removed, ai[:for.ya - 7km], "AI"); + line_badge(:pax, ai[:for.ya + 12km], "AI"); + } + + with link = "point.gb.Gollanfield" { + statdot(:pax, ai[:gol]); + slabel(:right :pax, ai[:gol] + (1.3dt, 2.8dt), "Gollanfield"); + } + + with link = "line.gb.AI" { + track(:first :pax, ai[:gol, :mil.y]); + line_badge(:pax, ai[:gol + 4.5km] @ -4 >> 0.1dt, "AI"); } } @@ -88,6 +107,12 @@ with detail = 2 { with detail = 2 { let fk = path("d2.gb.ani2"); + with link = "point.gb.Forres" { + track(:first:station :pax, fk[:for.ya, :for]); + statdot(:pax, fk[:for]); + slabel(:left :pax, fk[:for] + (-1.5dt, -0.5dt), "Forres"); + } + with link = "line.gb.ANI2" { track(:first :pax, fk[:for, :kei]); @@ -96,11 +121,6 @@ with detail = 2 { line_label(:right:n :pax, fk[:kei - 5km], "ANI2"); } - with link = "point.gb.Forres" { - statdot(:pax, fk[:for]); - slabel(:left :pax, fk[:for] + (-1.5dt, -0.5dt), "Forres"); - } - with link = "point.gb.Kinloss" { statdot(:removed, fk[:kin]); slabel(:right :removed, fk[:kin] + (-0.5dt, 0.8dt), @@ -131,21 +151,3 @@ with detail = 2 { } } - -# GB ANI3. Forres - Inverness -with detail = 2 { - let fi = path("d2.gb.ani3"); - - with link = "line.gb.ANI3" { - track(:first :pax, fi[:for, :mil.y]); - - line_badge(:pax, fi[:for + 12km], "ANI3"); - line_badge(:pax, fi[:gol + 4.5km] @ -4 >> 0.1dt, "ANI3"); - } - - with link = "point.gb.Gollanfield" { - statdot(:pax, fi[:gol]); - slabel(:right :pax, fi[:gol] + (1.3dt, 2.8dt), "Gollanfield"); - } -} - diff --git a/rules/gb/a/d2/b.map b/rules/gb/a/d2/b.map new file mode 100644 index 00000000..a450d234 --- /dev/null +++ b/rules/gb/a/d2/b.map @@ -0,0 +1,65 @@ +# GB BAF. Ballinluig - Aberfeldy +with detail = 2 { + let ba = path("d2.gb.baf"); + + with link = "line.gb.BAF" { + track(:first :removed, ba[:bal.ya, :abe]); + + line_label(:right:s :removed, ba[:bal.ya + 8.5km], "BAF"); + } + + with link = "point.gb.Aberfeldy" { + statdot(:removed, ba[:abe]); + slabel(:left :removed, ba[:abe] + (-1.5dt, 1.0dt), "Aberfeldy"); + } +} + + +# GB BGC. Craigellachie - Boat of Garten +with detail = 2 { + let cb = path("d2.gb.bgc"); + + with link = "line.gb.BGC" { + track(:first :removed, + cb[:cra.yb, :boa.yc - 2dt] + .. cb[:boa.yc, :boa] << 0.6dt + ); + + line_label(:left:w :removed, cb[:cra.yb + 17km], "BGC"); + } +} + + +# GB BGD. Alves - Burghead +with detail = 2 { + let ab = path("d2.gb.bgd"); + + with link = "line.gb.BGD" { + track(:first :removed, ab[:alv.yb, :bur]); + + line_label(:right:w :removed, ab[:alv.yb + 4km], "BGD"); + } + + with link = "point.gb.Burghead" { + statdot(:removed, ab[:bur]); + slabel(:left :removed, ab[:bur] + (-1.5dt, 0.5dt), "Burghead"); + } +} + + +# GB BGF. Burghead - Hopeman +with detail = 2 { + let bh = path("d2.gb.bgf"); + + with link = "line.bg.BGF" { + track(:first :removed, bh[:bur, :hop]); + + line_label(:left:s :removed, bh[:hop - 1.5km], "BGF"); + } + + with link = "point.gb.Hopeman" { + statdot(:removed, bh[:hop]); + slabel(:right :removed, bh[:hop] + (1.5dt, 0.8dt), "Hopeman"); + } +} + diff --git a/rules/gb/a/d2/d.map b/rules/gb/a/d2/d.map new file mode 100644 index 00000000..aecdf21a --- /dev/null +++ b/rules/gb/a/d2/d.map @@ -0,0 +1,35 @@ +# GB DFS. Fodderty Junction - Strathpeffer +with detail = 2 { + let fs = path("d2.gb.dfs"); + + with link = "line.gb.DFS" { + track(:first :removed, fs[:fod, :str]); + + line_label(:left:n :removed, fs[:fod + 1.5km], "DFS"); + } + + with link = "point.gb.Strathpeffer" { + statdot(:removed, fs[:str]); + slabel(:left :removed, fs[:str] + (1.0dt, 0.6dt), + hbox(:right:top, "Strathpeffer") + ); + } +} + + +# GB DNB. The Mound - Dornoch +with detail = 2 { + let md = path("d2.gb.dnb"); + + with link = "line.gb.DNB" { + track(:first :removed, md[:mou.yd, :dor]); + + line_label(:left:w :removed, md[:dor - 3.6km], "DNB"); + } + + with link = "point.gb.Dornoch" { + statdot(:removed, md[:dor]); + slabel(:bottom :removed, md[:dor] + (0dt, 0.7dt), "Dornoch"); + } +} + diff --git a/rules/gb/a/d2/e.map b/rules/gb/a/d2/e.map new file mode 100644 index 00000000..75fae9f2 --- /dev/null +++ b/rules/gb/a/d2/e.map @@ -0,0 +1,17 @@ +# GB ELB. Elgin - Lossiemouth +with detail = 2 { + let el = path("d2.gb.elb"); + + with link = "line.gb.ELB" { + track(:first :removed, el[:elg.yl, :los]); + + line_badge(:removed, el[:los - 3.5km], "ELB"); + } + + with link = "point.gb.Lossiemouth" { + statdot(:removed, el[:los]); + slabel(:top :removed, el[:los] + (0dt, -0.7dt), "Lossiemouth"); + } +} + + diff --git a/rules/gb/a/d2/g.map b/rules/gb/a/d2/g.map new file mode 100644 index 00000000..19a6df10 --- /dev/null +++ b/rules/gb/a/d2/g.map @@ -0,0 +1,16 @@ +# GB GFG. Gollanfield - Fort George +with detail = 2 { + let gf = path("d2.gb.gfg"); + + with link = "line.gb.GFG" { + track(:first :removed, gf[:gol.yf, :fge]); + + line_label(:left:e :removed, gf[:fge - 1.1km], "GFG"); + } + + with link = "point.gb.Fort-George" { + statdot(:removed, gf[:fge]); + slabel(:top :removed, gf[:fge] + (0dt, -0.6dt), "Fort George"); + } +} + diff --git a/rules/gb/a/d2/h.map b/rules/gb/a/d2/h.map new file mode 100644 index 00000000..1ceeef7f --- /dev/null +++ b/rules/gb/a/d2/h.map @@ -0,0 +1,36 @@ +# GB HL. Stanley Junction - Inverness +with detail = 2 { + let si = path("d2.gb.hl"); + + with link = "line.gb.HL" { + track(:first :pax, si[:stj, :bla]); + track(:first :double :pax, si[:bla, :dal]); + track(:first :pax, si[:dal, :cul]); + track(:first :double :pax, si[:cul, :inv]); + + line_label(:right:s :double :pax, si[:stj + 7km], "HL"); + line_label(:right:s :double :pax, si[:bal + 14km], " HL"); + line_badge(:pax, si[:avi - 13.5km] @ -3 << 0.1dt, "HL"); + line_label(:left:e :double :pax, si[:avi + 8km], "HL"); + line_label(:left:e :double :pax, si[:avi + 8km], "HL"); + line_label(:right:w :double :pax, si[:cul - 11km], "HL"); + } + + with link = "point.gb.Ballinluig" { + statdot(:removed, si[:bal]); + slabel(:right :removed, si[:bal] + (1.5dt, 0.5dt), "Ballinluig"); + } + + with link = "point.gb.Aviemore" { + statdot(:pax, si[:avi]); + slabel(:left :pax, si[:avi] + (-1.5dt, 0.5dt), "Aviemore"); + } + + with link = "point.gb.Inverness" { + statdot(:pax, si[:inv]); + slabel(:bottom :pax, si[:inv] + (-2dt, 0.8dt), + span(:medium :bold, "Inverness") + ); + } +} + diff --git a/rules/gb/a/d2/i.map b/rules/gb/a/d2/i.map new file mode 100644 index 00000000..62948f9d --- /dev/null +++ b/rules/gb/a/d2/i.map @@ -0,0 +1,7 @@ +# GB IMB. Inverness - Muirtown Basin +with detail = 2 { + with link = "link.gb.IMB" { + track(:first :removed, path("d2.gb.imb")[:inv.ym, :mui]); + } +} + diff --git a/rules/gb/a/d2/k.map b/rules/gb/a/d2/k.map new file mode 100644 index 00000000..874eb16e --- /dev/null +++ b/rules/gb/a/d2/k.map @@ -0,0 +1,34 @@ +# GB KLF. Kinloss - Findhorn +with detail = 2 { + let kf = path("d2.gb.klf"); + + with link = "line.gb.KLF" { + track(:first :removed, kf[:kin.yf, :fin]); + + line_label(:right:sw :removed, kf[:kin.yf + 2km], "KLF"); + } + + with link = "point.gb.Findhorn" { + statdot(:removed, kf[:fin]); + slabel(:top :removed, kf[:fin] + (0dt, -0.8dt), "Findhorn"); + } +} + + +# GB KYL. Dingwall - Kyle of Lochalsh +with detail = 2 { + let dk = path("d2.gb.kyl"); + + with link = "line.gb.KYL" { + track(:first :pax, dk[:din.yk, :kyl]); + + line_label(:right:s :pax, dk[:fod + 6.5km], "KYL"); + line_label(:right:s :pax, dk[:kyl - 8.9km], "KYL"); + } + + with link = "point.gb.Kyle-of-Lochalsh" { + statdot(:pax, dk[:kyl]); + slabel(:bottom :pax, dk[:kyl] + (0dt, 0.7dt), "Kyle of Lochalsh"); + } +} + diff --git a/rules/gb/a/d2/l.map b/rules/gb/a/d2/l.map new file mode 100644 index 00000000..46366b6a --- /dev/null +++ b/rules/gb/a/d2/l.map @@ -0,0 +1,16 @@ +# GB LLR. Wick - Lybster +with detail = 2 { + let wl = path("d2.gb.llr"); + + with link = "link.gb.LLR" { + track(:first :removed, wl[:wic.yl, :lyb]); + + line_label(:right:e :removed, wl[:wic.yl + 8km], "LLR"); + } + + with link = "point.gb.Lybster" { + statdot(:removed, wl[:lyb]); + slabel(:left :removed, wl[:lyb] + (-1.5dt, 1.0dt), "Lybster"); + } +} + diff --git a/rules/gb/a/d2/m.map b/rules/gb/a/d2/m.map new file mode 100644 index 00000000..a6af82fa --- /dev/null +++ b/rules/gb/a/d2/m.map @@ -0,0 +1,16 @@ +# GB MOF. Muir of Ord - Fortrose +with detail = 2 { + let mf = path("d2.gb.mof"); + + with link = "line.gb.MOF" { + track(:first :removed, mf[:mui.yf, :for]); + + line_badge(:removed, mf[:for - 9.8km] @ -3 << 0.2dt, "MOF"); + } + + with link = "point.gb.Fortrose" { + statdot(:removed, mf[:for]); + slabel(:top :removed, mf[:for] + (0dt, -0.6dt), "Fortrose"); + } +} + diff --git a/rules/gb/a/d3/a/ai.map b/rules/gb/a/d3/a/ai.map new file mode 100644 index 00000000..6e009f8e --- /dev/null +++ b/rules/gb/a/d3/a/ai.map @@ -0,0 +1,227 @@ +# GB AI. Aviemore - Forres - Millburn Junction (- Inverness) +# +let ai = path("d4.gb.ai"); + +with detail = 3 { + # point.gb.Aviemore: gb.AI + + with link = "line.gb.AI" { + track(:first :museum, + path("d4.gb.hl")[:avi + 1sw, :avi + 1.1sw] >> 1dt + .. ai[:avi.ffd, :boa - 1sw] + ); + line_label(:right:w :museum, ai[:avi.ffd + 1.4km], "AI"); + } + + with link = "point.gb.Boat-of-Garten" { + track(:first:station :museum, ai[:boa - 1sw, :boa + 1sw]); + track(:first:station :removed, + ai[:boa - 1sw + 0.9dl, :boa - 1sw + 1dl] + -- ai[:boa - 1sw + 2dl, :boa + 1sw] >> 1dt + ); + marker(:left :de.bf :museum, ai[:boa]); + slabel(:right :museum, ai[:boa - 0.3sw] >> 3.0dt, + span(:bold, "Boat of Garten") + ); + } + + with link = "line.gb.AI" { + track(:first :museum, ai[:boa + 1sw, :bro - 1sw]); + line_label(:left:se :museum, ai[:boa + 1.5km], "AI"); + } + + with link = "point.gb.Broomhill" { + track(:first:station :museum, ai[:bro - 1sw, :bro + 1sw]); + marker(:right :de.bf :museum, ai[:bro]); + slabel(:right :museum, ai[:bro - 0.1sw] >> 1.8sh, "Broomhill"); + } + + with link = "line.gb.AI" { + track(:first :museum, ai[:bro + 1sw, :bro.ff]); + track(:first :removed, ai[:bro.ff, :gra - 1sw]); + } + + with link = "point.gb.Grantown-on-Spey-West" { + track(:first:station :removed, ai[:gra - 1sw, :gra + 1sw]); + marker(:right :de.bf :removed, ai[:gra]); + slabel(:left :removed, ai[:gra - 0.6sw] << 1.5dt, + "Grantown-on-Spey West" + ); + } + + with link = "line.gb.AI" { + track(:first :removed, ai[:gra + 1sw, :cgr - 1sw]); + } + + with link = "point.gb.Castle-Grant" { + track(:first:station :removed, ai[:cgr - 1sw, :cgr + 1sw]); + marker(:right :de.hp :removed, ai[:cgr] >> 0.2dt); + slabel(:right :removed, ai[:cgr] + (1.5sh, 1.2sh), "Castle Grant"); + } + + with link = "line.gb.AI" { + track(:first :removed, ai[:cgr + 1sw, :dav - 1sw]); + line_badge(:removed, ai[:dav - 4.0km], "AI"); + } + + with link = "point.gb.Dava" { + track(:first:station :removed, ai[:dav - 1sw, :dav + 1sw]); + marker(:left :de.hp :removed, ai[:dav]); + slabel(:left :removed, ai[:dav - 0.3sw] << 1.7sh, "Dava"); + } + + with link = "line.gb.AI" { + track(:first :removed, ai[:dav + 1sw, :dun - 1sw]); + } + + with link = "point.gb.Dunphail" { + track(:first:station :removed, ai[:dun - 1sw, :dun + 1sw]); + marker(:left :de.bf :removed, ai[:dun]); + slabel(:left :removed, ai[:dun - 0.3sw] << 1.8sh, "Dunphail"); + } + + with link = "line.gb.AI" { + track(:first :removed, ai[:dun + 1sw, :raf - 1sw]); + line_label(:right:w :removed, ai[:raf - 2.2km], "AI"); + } + + with link = "point.gb.Rafford" { + track(:first:station :removed, ai[:raf - 1sw, :raf + 1sw]); + marker(:right :de.bf :gone, ai[:raf]); + slabel(:top :gone, ai[:raf] >> 1.2sh + (1sw, 0dt), "Rafford"); + } + + with link = "line.gb.AI" { + track(:first :removed, ai[:raf + 1sw, :for - 1sw]); + } + + with link = "point.gb.Forres" { + track(:first:station :removed, ai[:for - 1sw, :for.yk]); + track(:first:station :pax, ai[:for.yk, :for.yk + 0.5sw]); + } + + with link = "line.gb.AI" { + track(:first :pax, ai[:for.yk + 0.5sw, :dal - 1sw]); + } + + with link = "point.gb.Dalvey" { + track(:first:station :pax, ai[:dal - 1sw, :dal + 1sw]); + marker(:right :de.bf :gone, ai[:dal]); + slabel(:left :gone, ai[:dal + 0.2sw] >> 1.4sh, "Dalvey"); + } + + with link = "line.gb.AI" { + track(:first :pax, ai[:dal + 1sw, :bod - 1sw]); + } + + with link = "point.gb.Brodie" { + track(:first:station :pax, ai[:bod - 1sw, :bod + 1sw]); + marker(:left :de.bf :removed, ai[:bod]); + slabel(:bottom :removed, ai[:bod] << 1.0sh, "Brodie"); + } + + with link = "line.gb.AI" { + track(:first :pax, ai[:bod + 1sw, :aul - 1sw]); + line_badge(:pax, ai[:bod + 2.5km], "AI"); + } + + with link = "point.gb.Auldearn" { + track(:first:station :pax, ai[:aul - 1sw, :aul + 1sw]); + marker(:left :de.bf :removed, ai[:aul]); + slabel(:bottom :removed, ai[:aul] << 1.2sh, "Auldearn"); + } + + with link = "line.gb.AI" { + track(:first :pax, ai[:aul + 1sw, :nai - 1sw]); + } + + with link = "point.gb.Nairn" { + track(:first:station :pax, ai[:nai - 1sw, :nai + 1sw]); + marker(:right :de.bf :pax, ai[:nai]); + slabel(:top :pax, ai[:nai + 0.1sh] >> 1.4sh, "Nairn"); + } + + with link = "line.gb.AI" { + track(:first :pax, ai[:nai + 1sw, :kil - 1sw]); + } + + with link = "point.gb.Kildrummie" { + track(:first:station :pax, ai[:kil - 1sw, :kil + 1sw]); + marker(:right :de.hp :removed, ai[:kil]); + slabel(:top :removed, ai[:kil] >> 1.2sh + (-2sw, 0dt), "Kildrummie"); + } + + with link = "line.gb.AI" { + track(:first :pax, ai[:kil + 1sw, :gol - 1sw]); + line_badge(:pax, ai[:gol - 3.0km], "AI"); + } + + with link = "point.gb.Gollanfield" { + track(:first:station :pax, ai[:gol - 1sw, :gol + 1sw]); + marker(:left :de.bf :removed, ai[:gol]); + slabel(:bottom :removed, ai[:gol] << 1.2sh + (2sw, 0dt), + span(:bold, "Gollanfield") + ); + } + + with link = "line.gb.AI" { + track(:first :pax, ai[:gol + 1sw, :ina - 1sw]); + } + + with link = "point.gb.Inverness-Airport" { + track(:first:station :pax, ai[:ina - 1sw, :ina + 1sw]); + marker(:right :de.bf :pax, ai[:ina]); + slabel(:left :pax, ai[:ina + 0.5sw] >> 1.4sh, "Inverness Airport"); + } + + with link = "line.gb.AI" { + track(:first :pax, ai[:ina + 1sw, :dac - 1sw]); + } + + with link = "point.gb.Dalcross" { + track(:first:station :pax, ai[:dac - 1sw, :dac + 1sw]); + track(:first:station :removed, + ai[:dac - 1sw + 0.9dl, :dac - 1sw + 1dl] + -- ai[:dac - 1sw + 2dl, :dac + 1sw] >> 1dt + ); + marker(:left :de.bf :removed, ai[:dac]); + slabel(:right :removed, ai[:dac + 0.2sw] << 2.1sh, "Dalcross"); + } + + with link = "line.gb.AI" { + track(:first :pax, ai[:dac + 1sw, :all - 1sw]); + track(:first :removed, ai[:dac + 1sw, :all - 1sw] >> 1dt); + line_badge(:pax, ai[:all - 1.5km] >> 0.5dt, "AI"); + } + + with link = "point.gb.Allanfearn" { + track(:first:station :pax, ai[:all - 1sw, :all + 1sw]); + track(:first:station :removed, ai[:all - 1sw, :all + 1sw] >> 1dt); + marker(:left :de.bf :removed, ai[:all]); + slabel(:left :removed, ai[:all + 0.3sw] >> 2.5dt, "Allanfearn"); + } + + with link = "line.gb.AI" { + let hl = path("d4.gb.hl"); + + track(:first :pax, + ai[:all + 1sw, :mil.xe] + .. ai[:mil.xw, :inv.af] << 1.5dt + .. hl[:mil - 2.1dl, :mil - 2dl] << 1.5dt + ); + + track(:first :removed, + ai[:all + 1sw, :all.xe] >> 1dt + .. ai[:all.xw, :all.xw + 0.1dl] + ); + track(:first :removed, + ai[:all.xe - 0.1dl, :all.xe] + .. ai[:all.xw, :mil.xe] << 1dt + .. ai[:mil.xw, :inv.af] << 2.5dt + .. hl[:mil - 2.1dl, :mil - 2dl] << 2.5dt + ); + } + + # point.gb.Millburn-Jn: gb.HL +} + diff --git a/rules/gb/a/d3/b/baf.map b/rules/gb/a/d3/b/baf.map new file mode 100644 index 00000000..953e9e48 --- /dev/null +++ b/rules/gb/a/d3/b/baf.map @@ -0,0 +1,51 @@ +# GB BAF. Ballinluig - Aberfeldy +# +let ba = path("d4.gb.baf"); + +with detail = 3 { + # point.gb.Ballinluig: gb.HL + + with link = "line.gb.BAF" { + track(:first :removed, ba[:bal.fa + 1dl, :bag - 1sw]); + } + + with link = "point.gb.Balnaguard" { + track(:first:station :removed, ba[:bag - 1sw, :bag + 1sw]); + marker(:right :de.hp :removed, ba[:bag]); + slabel(:left :removed, ba[:bag - 0.8sw], + hbox(:right:top, "Balnaguard") + ); + } + + with link = "line.gb.BAF" { + track(:first :removed, ba[:bag + 1sw, :gra - 1sw]); + line_label(:right:s :removed, ba[:bag + 1.7km], " BAF"); + } + + with link = "point.gb.Grandtully" { + track(:first:station :removed, ba[:gra - 1sw, :gra + 1sw]); + marker(:right :de.bf :removed, ba[:gra]); + slabel(:left :removed, ba[:gra] + (1sw, -1.5sw), + "Grandtully" + ); + } + + with link = "line.gb.BAF" { + track(:first :removed, ba[:gra + 1sw, :abe - 1sw]); + line_label(:left:nw :removed, ba[:abe - 2.7km], "BAF"); + } + + with link = "point.gb.Aberfeldy-Distillery" { + marker(:right :de.anst :removed, ba[:abd]); + } + + with link = "point.gb.Aberfeldy" { + track(:first:station :removed, ba[:abe - 1sw, :abe + 0.5sw]); + marker(:right :de.bf :removed, ba[:abe]); + slabel(:left :removed, ba[:abe + 0.5sw] >> 1.2sh, + span(:bold, "Aberfeldy") + ); + } + +} + diff --git a/rules/gb/a/d3/d/dfs.map b/rules/gb/a/d3/d/dfs.map new file mode 100644 index 00000000..dfa320db --- /dev/null +++ b/rules/gb/a/d3/d/dfs.map @@ -0,0 +1,22 @@ +# GB DFS. Fodderty Junction - Strathpeffer +# +let fs = path("d4.gb.dfs"); + +with detail = 3 { + # point.gb.Fodderty-Jn: gb.KYL + + with link = "line.gb.DFS" { + track(:first :removed, fs[:fod + 1sw, :str - 1sw]); + + line_label(:left:n :removed, fs[:str - 1.1km], "DFS"); + } + + with link = "point.gb.Strathpeffer" { + track(:first:station :removed, fs[:str - 1sw, :str + 0.5sw]); + marker(:right :de.bf :removed, fs[:str]); + slabel(:left :removed, fs[:str] + (-1.3sw, 0.2sh), + span(:bold, "Strathpeffer") + ); + } +} + diff --git a/rules/gb/a/d3/d/dnb.map b/rules/gb/a/d3/d/dnb.map new file mode 100644 index 00000000..26f7d073 --- /dev/null +++ b/rules/gb/a/d3/d/dnb.map @@ -0,0 +1,53 @@ +# GB DNB. The Mound - Dornoch +# +let md = path("d4.gb.dnb"); + +with detail = 3 { + # point.gb.The-Mound gb.WCK + + with link = "line.gb.DNB" { + track(:third :removed, md[:mou.fd + 1sw, :cam - 1sw]); + } + + with link = "point.gb.Cambusavie" { + track(:third:station :removed, md[:cam - 1sw, :cam + 1sw]); + marker(:right :de.hp :removed, md[:cam]); + slabel(:right :removed, md[:cam + 0.6sw] << 1.0dt, + "Cambusavie Platform" + ); + } + + with link = "line.gb.DNB" { + track(:third :removed, md[:cam + 1sw, :ske - 1sw]); + } + + with link = "point.gb.Skelbo" { + track(:third:station :removed, md[:ske - 1sw, :ske + 1sw]); + marker(:right :de.bf :removed, md[:ske]); + slabel(:bottom :removed, md[:ske] >> 1.2sh + (-1.0dt, 0dt), "Skelbo"); + } + + with link = "line.gb.DNB" { + track(:third :removed, md[:ske + 1sw, :emb - 1sw]); + } + + with link = "point.gb.Embo" { + track(:third:station :removed, md[:emb - 1sw, :emb + 1sw]); + marker(:left :de.bf :removed, md[:emb]); + slabel(:right :removed, md[:emb + 0.5sw] << 1.4sh, "Embo"); + } + + with link = "line.gb.DNB" { + track(:third :removed, md[:emb + 1sw, :dor - 1sw]); + line_label(:left:w :removed, md[:emb + 1.2km], "DNB"); + } + + with link = "point.gb.Dornoch" { + track(:third:station :removed, md[:dor - 1sw, :dor + 0.6sw]); + marker(:left :de.bf :removed, md[:dor]); + slabel(:right :removed, md[:dor + 1.0sw] + (1.5sw, 0.8sw), + span(:bold, "Dornoch") + ); + } +} + diff --git a/rules/gb/a/d3/h/hl.map b/rules/gb/a/d3/h/hl.map new file mode 100644 index 00000000..933b042d --- /dev/null +++ b/rules/gb/a/d3/h/hl.map @@ -0,0 +1,376 @@ +# GB HL. Stanley Junction - Inverness (Highland Line) +# +let hl = path("d4.gb.hl"); + +with detail = 3 { + + with link = "line.gb.HL" { + track(:first :pax, hl[:sta.yd + 1sw, :mur - 1sw]); + line_badge(:pax, hl[:sta.yd + 2.4km], "HL"); + } + + with link = "point.gb.Murthly" { + track(:first:station :pax, hl[:mur - 1sw, :mur + 1sw]); + marker(:left :de.bf :removed, hl[:mur]); + slabel(:left :removed, hl[:mur - 0.2sw] << 2.2sh, "Murthly"); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:mur + 1sw, :kwt.a]); + } + + with link = "struct.gb.Kingswood-Tunnel" { + marker(:top :tunnel.r :pax, hl[:kwt.a]); + marker(:top :tunnel.l :pax, hl[:kwt.a]); + marker(:bottom :tunnel.r :pax, hl[:kwt.f]); + marker(:bottom :tunnel.l :pax, hl[:kwt.f]); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:kwt.f, :dun - 1sw]); + } + + with link = "point.gb.Dunkeld-Birnam" { + track(:first:station :pax, hl[:dun - 1sw, :dun + 1sw]); + marker(:right :de.bf :pax, hl[:dun]); + slabel(:right :pax, hl[:dun] + (-0.7sw, -1.5sw), + "Dunkeld & Birnam" + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:dun + 1sw, :int.a]); + } + + with link = "struct.gb.Inver-Tunnel" { + marker(:top :tunnel.r :pax, hl[:int.a]); + marker(:top :tunnel.l :pax, hl[:int.a]); + marker(:bottom :tunnel.r :pax, hl[:int.f]); + marker(:bottom :tunnel.l :pax, hl[:int.f]); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:int.f, :dag - 1sw]); + line_badge(:pax, hl[:dag - 2.2km], "HL"); + } + + with link = "point.gb.Dalguise" { + track(:first:station :pax, hl[:dag - 1sw, :dag + 1sw]); + marker(:left :de.bf :removed, hl[:dag]); + slabel(:left :removed, hl[:dag - 0.45sw] << 1.6sh, "Dalguise"); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:dag + 1sw, :gua - 1sw]); + } + + with link = "point.gb.Guay" { + track(:first:station :pax, hl[:gua - 1sw, :gua + 1sw]); + marker(:right :de.hp :removed, hl[:gua]); + slabel(:right :removed, hl[:gua - 0.35sw] >> 1.3sh, "Guay"); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:gua + 1sw, :bal - 1sw]); + } + + with link = "point.gb.Ballinluig" { + track(:first:station :removed, + hl[:bal - 1sw + 1.1dl, :bal - 1sw + 1dl] + -- hl[:bal - 1sw + 2dl, :bal - 1sw + 3dl] << 1dt + .. path("d4.gb.baf")[:bal.fa + 0.9dl, :bal.fa + 1dl] + ); + track(:first:station :pax, hl[:bal - 1sw, :bal + 1sw]); + marker(:right :de.bf :removed, hl[:bal]); + slabel(:right :removed, hl[:bal - 0.7sw] >> 1.3sh, + span(:bold, "Ballinluig") + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:bal + 1sw, :pit - 1sw]); + line_badge(:pax, hl[:bal + 3.5km], "HL"); + } + + with link = "point.gb.Pitlochry" { + track(:first:station :pax, hl[:pit - 1sw, :pit + 1sw]); + marker(:right :de.bf :pax, hl[:pit]); + slabel(:right :pax, hl[:pit] + (-0.7sw, -1.5sh), "Pitlochry"); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:pit + 1sw, :kit.f - 1dt]); + } + + with link = "struct.gb.Killiecrankie-Tunnel" { + marker(:top :tunnel.r :pax, hl[:kit.f - 1dt]); + marker(:top :tunnel.l :pax, hl[:kit.f - 1dt]); + marker(:bottom :tunnel.r :pax, hl[:kit.f]); + marker(:bottom :tunnel.l :pax, hl[:kit.f]); + } + + with link = "point.gb.Killiecrankie" { + track(:first:station :pax, hl[:kit.f, :kil + 1sw]); + marker(:right :de.bf :removed, hl[:kil]); + slabel(:right :removed, hl[:kil + 1sw] >> 1.0sh, + "Killiecrankie" + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:kil + 1sw, :bla - 1sw]); + } + + with link = "point.gb.Blair-Atholl" { + track(:first:station :pax, + hl[:bla - 1sw, :bla - 1sw + 1dl] + .. hl[:bla - 1sw + 2dl, :bla + 1sw] >> 0.5dt + ); + track(:first:station :pax, + hl[:bla - 1sw + 0.9dl, :bla - 1sw + 1dl] + .. hl[:bla - 1sw + 2dl, :bla + 1sw] << 0.5dt + ); + marker(:right :de.bf :pax, hl[:bla] >> 0.5dt); + slabel(:top :pax, hl[:bla] >> 0.5dt >> 1.2sh, "Blair Atholl"); + } + + with link = "line.gb.HL" { + track(:first :double :pax, hl[:bla + 1sw, :bli - 1sw]); + } + + with link = "point.gb.Black-Island" { + track(:first:station :double :pax, hl[:bli - 1sw, :bli + 1sw]); + marker(:left :de.hp :removed, hl[:bli] << 0.5dt); + slabel(:bottom :removed, hl[:bli] << 1.4sh, "Black Island Pl."); + } + + with link = "line.gb.HL" { + track(:first :double :pax, hl[:bli + 1sw, :str - 100m]); + } + + with link = "point.gb.Struan" { + track(:first:station :double :pax, hl[:str - 1sw, :str + 1sw]); + marker(:left :de.bf :removed, hl[:str] << 0.5dt); + slabel(:bottom :removed, hl[:str] << 1.2sh, "Struan"); + } + + with link = "line.gb.HL" { + track(:first :double :pax, hl[:str + 1sw, :das - 1sw]); + line_badge(:pax, hl[:str + 5.3km], "HL"); + } + + with link = "point.gb.Dalnaspidal" { + track(:first:station :double :pax, hl[:das - 1sw, :das + 1sw]); + marker(:right :de.bf :removed, hl[:das] >> 0.5dt); + slabel(:right :removed, hl[:das - 0.4sw] >> 0.5dt >> 1.4sh, + "Dalnaspidal" + ); + } + + with link = "line.gb.HL" { + track(:first :double :pax, hl[:das + 1sw, :dal - 1sw]); + } + + with link = "point.gb.Dalwhinnie" { + track(:first:station :pax, + hl[:dal - 1sw, :dal + 1sw - 2dl] << 0.5dt + -- hl[:dal + 1sw - 1dl, :dal + 1sw] + ); + track(:first:station :pax, + hl[:dal - 1sw, :dal + 1sw - 2dl] >> 0.5dt + -- hl[:dal + 1sw - 1dl, :dal + 1sw - 0.9dl] + ); + marker(:right :de.bf :pax, hl[:dal] >> 0.6dt); + slabel(:right :pax, hl[:dal] + (1.8sh, 0.9sw), "Dalwhinnie"); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:dal + 1sw, :new - 1sw]); + } + + with link = "point.gb.Newtonmore" { + track(:first:station :pax, hl[:new - 1sw, :new + 1sw]); + marker(:left :de.hp :pax, hl[:new]); + marker(:left :de.exbf :pax, hl[:new]); + slabel(:left :pax, hl[:new - 0.4sw] << 1.0dt << 1.3sh, "Newtonmore"); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:new + 1sw, :kin - 1sw]); + } + + with link = "point.gb.Kingussie" { + track(:first:station :pax, hl[:kin - 1sw, :kin + 1sw]); + marker(:left :de.bf :pax, hl[:kin]); + slabel(:top :pax, hl[:kin] << 1.4sh + (-1.5sw, 0dt), "Kingussie"); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:kin + 1sw, :kic - 1sw]); + } + + with link = "point.gb.Kincraig" { + track(:first:station :pax, hl[:kic - 1sw, :kic + 1sw]); + marker(:left :de.bbf, hl[:kic]); + marker(:left :de.exbf, hl[:kic]); + slabel(:left, hl[:kic - 0.8sw] << 1.0dt << 1.4sh, "Kincraig"); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:kic + 1sw, :avi - 1sw]); + line_badge(:pax, hl[:avi - 3.5km], "HL"); + } + + with link = "point.gb.Aviemore" { + track(:first:station :pax, hl[:avi - 1sw, :avi + 1sw]); + track(:first:station :pax, + hl[:avi - 1sw + 0.9dl, :avi - 1sw + 1dl] + -- hl[:avi - 1sw + 2dl, :avi + 1sw] >> 1dt + ); + marker(:left :de.bf :pax, hl[:avi]); + slabel(:left :pax, hl[:avi - 1.2sw] << 1.5sh, + span(:bold, "Aviemore") + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:avi + 1sw, :car - 1sw]); + line_label(:left:e :pax, hl[:avi + 4km], "HL"); + } + + with link = "point.gb.Carrbridge" { + track(:first:station :pax, hl[:car - 1sw, :car + 1sw]); + marker(:right :de.bf :pax, hl[:car]); + slabel(:right :pax, hl[:car - 0.4sw] >> 1.3sh, "Carrbridge"); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:car + 1sw, :slo - 1sw]); + } + + with link = "point.gb.Slochd" { + track(:first:station :pax, hl[:slo - 1sw, :slo + 1sw]); + marker(:left :de.bbf, hl[:slo]); + slabel(:left, hl[:slo] << 2.2sh, "Slochd"); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:slo + 1sw, :tom - 1sw]); + line_badge(:pax, hl[:slo + 2.5km], "HL"); + } + + with link = "point.gb.Tomatin" { + track(:first:station :pax, hl[:tom - 1sw, :tom + 1sw]); + marker(:right :de.bbf, hl[:tom] >> 0.1sw); + marker(:right :de.exbf, hl[:tom] >> 0.1sw); + slabel(:right, hl[:tom - 1.0sw] >> 1.6sh, "Tomatin"); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:tom + 1sw, :moy - 1sw]); + } + + with link = "point.gb.Moy" { + track(:first:station :pax, hl[:moy - 1sw, :moy + 1sw]); + marker(:right :de.bbf, hl[:moy]); + marker(:right :de.exbf, hl[:moy]); + slabel(:right, hl[:moy - 0.6sw] >> 1.6sh, "Moy"); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:moy + 1sw, :dav - 1sw]); + } + + with link = "point.gb.Daviot" { + track(:first:station :removed, + hl[:dav - 1sw + 0.9dl, :dav - 1sw + 1dl] + -- hl[:dav - 1sw + 2dl, :dav + 1sw] << 0.5dt + ); + track(:first:station :pax, + hl[:dav - 1sw, :dav - 1sw + 1dl] + -- hl[:dav - 1sw + 2dl, :dav + 1sw] >> 0.5dt + ); + marker(:left :de.bf :removed, hl[:dav] << 0.5dt); + slabel(:left :removed, hl[:dav - 0.1sw] << 0.5dt << 2.0sh, "Daviot"); + } + + with link = "line.gb.HL" { + track(:first :removed, hl[:dav + 1sw, :ban.xn] << 0.5dt); + track(:first :pax, + hl[:dav + 1sw, :ban.xs] >> 0.5dt + .. hl[:ban.xn, :cul - 1sw] << 0.5dt + ); + track(:first :removed, hl[:ban.xs, :cul - 1sw] >> 0.5dt); + } + + with link = "point.gb.Culloden-Moor" { + track(:first:station :pax, hl[:cul - 1sw, :cul + 1sw] << 0.5dt); + + track(:first:station :removed, hl[:cul - 1sw, :cul + 1dl] >> 0.5dt); + track(:first:station :pax, + hl[:cul - 0.1dl, :cul] << 0.5dt + -- hl[:cul + 1dl, :cul + 1sw] >> 0.5dt + ); + marker(:right :de.bbf, hl[:cul] >> 0.5dt); + marker(:right :de.exbf, hl[:cul] >> 0.5dt); + slabel(:right, hl[:cul - 0.4sw] >> 0.5dt >> 1.8sh, "Culloden"); + } + + with link = "line.gb.HL" { + track(:first :double :pax, hl[:cul + 1sw, :cra - 0.5sw]); + line_badge(:pax, hl[:cul + 3.7km], "HL"); + } + + with link = "point.gb.Cradlehall" { + with layer = 2 track( + :first:station :double :pax, hl[:cra - 0.5sw, :cra + 0.5sw] + ); + with layer = 2 marker(:right :de.uest, hl[:cra] >> 0.5dt); + with layer = 1 marker(:right :de.uest.casing, hl[:cra] >> 0.5dt); + } + + with link = "line.gb.HL" { + with layer = 2 track(:first :double :pax, hl[:cra + 0.5sw, :inv.ap]); + with layer = 1 casing(:first :double :pax, + hl[:cra - 0.4sw, :inv.ap - 0.2sw] + ); + } + + with link = "point.gb.Millburn-Jn" { + marker(:left :de.abzw, hl[:mil] << 2.5dt); + } + + with link = "point.gb.Welshs-Bridge" { + track(:first:station, + hl[:wel - 1.1dl, :wel - 1dl] >> 0.5dt + -- hl[:wel, :wel + 0.3sw] >> 1.5dt + ); + marker(:right :de.abzw, hl[:wel] >> 1.5dt); + } + + with link = "point.gb.Inverness" { + let wk = path("d4.gb.wck"); + let ai = path("d4.gb.ai"); + + track(:first:station :double :pax, hl[:inv.ap, :inv + 0.5sw]); + track(:first:station :pax, + hl[:inv + 0.5sw, :inv] << 1.5dt + -- wk[:ros + 0.9sw, :ros + 1sw] + ); + + track(:first:station :pax, + hl[:mil - 2dl, :mil + 1dl] << 1.5dt + -- hl[:mil + 2dl, :mil + 2.1dl] << 0.5dt + ); + track(:first:station :removed, + hl[:mil - 2dl, :mil] << 2.5dt + -- hl[:mil + 1dl, :mil + 1.1dl] << 1.5dt + ); + + marker(:top :de.bf :pax, hl[:inv + 0.5sw] >> 0.5dt); + slabel(:bottom :pax, hl[:inv + 0.5sw] + (-1.5sw, 1sw), + hbox(:center:top :medium :bold, "Inverness") + ); + } +} + diff --git a/rules/gb/a/d3/i/imb.map b/rules/gb/a/d3/i/imb.map new file mode 100644 index 00000000..f5203cf0 --- /dev/null +++ b/rules/gb/a/d3/i/imb.map @@ -0,0 +1,10 @@ +# GB IMB. Inverness - Muirtown Canal Basin +# +let im = path("d4.gb.imb"); + +with detail = 3 { + with link = "line.gb.IMB" { + track(:first :removed, im[:can + 0.5sw, :f]); + } +} + diff --git a/rules/gb/a/d3/k/kyl.map b/rules/gb/a/d3/k/kyl.map new file mode 100644 index 00000000..153e4ad4 --- /dev/null +++ b/rules/gb/a/d3/k/kyl.map @@ -0,0 +1,172 @@ +# GB KYL. Dingwall - Kyle of Lochalsh +# +let dk = path("d4.gb.kyl"); + +with detail = 3 { + # point.gb.Dingwall-Jn gb.WCK + + with link = "line.gb.KYL" { + track(:first :pax, dk[:din.yk + 1sw, :fod - 1sw]); + line_label(:right:s :pax, dk[:din.yk + 1.8km], "KYL"); + } + + with link = "point.gb.Fodderty-Jn" { + track(:first:station :pax, dk[:fod - 1sw, :fod + 1sw]); + track(:first:station :removed, path("d2.gb.dfs")[:fod, :fod + 1sw]); + marker(:left :de.abzw :removed, dk[:fod]); + slabel(:bottom :removed, dk[:fod] << 1.4sh, "Fodderty Jn."); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:fod + 1sw, :ach - 1sw]); + line_label(:right:s :pax, dk[:ach + 3.3km], "KYL"); + } + + with link = "point.gb.Achterneed" { + track(:first:station :pax, dk[:ach - 1sw, :ach + 1sw]); + marker(:left :de.bf :removed, dk[:ach] @ 2); + slabel(:right :removed, dk[:ach] + (-1.5sw, -2.5dt), "Achterneed"); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:ach + 1sw, :gar - 1sw]); + } + + with link = "point.gb.Garve" { + track(:first:station :pax, dk[:gar - 1sw, :gar + 1sw]); + marker(:right :de.bf :pax, dk[:gar]); + slabel(:right :pax, dk[:gar - 0.4sw] >> 1.4sh, "Garve"); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:gar + 1sw, :loc - 1sw]); + } + + with link = "point.gb.Lochluichart" { + track(:first:station :pax, dk[:loc - 1sw, :loc + 1sw]); + marker(:right :de.hp :pax, dk[:loc]); + slabel(:left :pax, dk[:loc] + (0.8sw, -1.4sh), "Lochluichart"); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:loc + 1sw, :aca - 1sw]); + } + + with link = "point.gb.Achanalt" { + track(:first:station :pax, dk[:aca - 1sw, :aca + 1sw]); + marker(:right :de.hp :pax, dk[:aca]); + marker(:right :de.exbf :pax, dk[:aca]); + slabel(:top :pax, dk[:aca] >> 1dt >> 1.2sh, "Achanalt"); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:aca + 1sw, :acn - 1sw]); + line_badge(:pax, dk[:aca + 2.8km], "KYL"); + } + + with link = "point.gb.Achnasheen" { + track(:first:station :pax, dk[:acn - 1sw, :acn + 1sw]); + marker(:right :de.bf :pax, dk[:acn]); + slabel(:left :pax, dk[:acn + 0.35sw] >> 1.25sh, "Achnasheen"); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:acn + 1sw, :gle - 1sw]); + } + + with link = "point.gb.Glencarron" { + track(:first:station :pax, dk[:gle - 1sw, :gle + 1sw]); + marker(:left :de.hp :removed, dk[:gle]); + slabel(:right :removed, dk[:gle] + (0.3sw, 2.4sh), "Glencarron"); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:gle + 1sw, :acs - 1sw]); + } + + with link = "point.gb.Achnashellach" { + track(:first:station :pax, dk[:acs - 1sw, :acs + 1sw]); + marker(:left :de.hp :pax, dk[:acs]); + slabel(:left :pax, dk[:acs - 0.5sw] >> 1.0dt, "Achnashellach"); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:acs + 1sw, :sta - 1sw]); + line_badge(:pax, dk[:acs + 4.8km], "KYL"); + } + + with link = "point.gb.Strathcarron" { + track(:first:station :pax, dk[:sta - 1sw, :sta + 1sw]); + marker(:right :de.bf :pax, dk[:sta]); + slabel(:left :pax, dk[:sta + 0.5sw] >> 1.4sh, "Strathcarron"); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:sta + 1sw, :att - 1sw]); + } + + with link = "point.gb.Attadale" { + track(:first:station :pax, dk[:att - 1sw, :att + 1sw]); + marker(:left :de.hp :pax, dk[:att]); + marker(:left :de.exbf :pax, dk[:att]); + slabel(:right :pax, dk[:att + 0.25sw] << 1dt << 1.5sh, "Attadale"); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:att + 1sw, :sto - 1sw]); + } + + with link = "point.gb.Stromeferry" { + track(:first:station :pax, dk[:sto - 1sw, :sto + 1sw]); + marker(:right :de.hp :pax, dk[:sto]); + marker(:right :de.exbf :pax, dk[:sto]); + slabel(:top :pax, dk[:sto] >> 1.0dt >> 1.4sh, + "Stromeferry " + ); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:sto + 1sw, :dun - 1sw]); + } + + with link = "point.gb.Duncraig" { + track(:first:station :pax, dk[:dun - 1sw, :dun + 1sw]); + marker(:left :de.hp :pax, dk[:dun] @ 10); + slabel(:right :pax, dk[:dun] + (1.2sw, 1.5sw), "Duncraig"); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:dun + 1sw, :plo - 1sw]); + } + + with link = "point.gb.Plockton" { + track(:first:station :pax, dk[:plo - 1sw, :plo + 1sw]); + marker(:right :de.hp :pax, dk[:plo]); + marker(:right :de.exbf :pax, dk[:plo]); + slabel(:left :pax, dk[:plo + 0.2sw] >> 1.0dt >> 1.2sh, "Plockton"); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:plo + 1sw, :dui - 1sw]); + } + + with link = "point.gb.Duirinish" { + track(:first:station :pax, dk[:dui - 1sw, :dui + 1sw]); + marker(:left :de.hp :pax, dk[:dui]); + slabel(:left :pax, dk[:dui + 0.3sw] >> 1.5dt, "Duirinish"); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:dui + 1sw, :kyl.f - 1.5sw]); + line_label(:right:e :pax, dk[:dui + 2.7km], "KYL"); + } + + with link = "point.gb.Kyle-of-Lochalsh" { + track(:first:station :pax, dk[:kyl.f - 1.5sw, :kyl.f]); + marker(:left :de.bf :pax, dk[:kyl.f - 0.5sw] << 0.5dt); + slabel(:left :pax, dk[:kyl.f] + (-0.8sw, 0.4sw), + span(:bold, "Kyle of Lochalsh") + ); + } +} + diff --git a/rules/gb/a/d3/l/llr.map b/rules/gb/a/d3/l/llr.map new file mode 100644 index 00000000..92a2e7cf --- /dev/null +++ b/rules/gb/a/d3/l/llr.map @@ -0,0 +1,104 @@ +# GB LLR. Wick - Lybster +# +let wl = path("d4.gb.llr"); + +with detail = 3 { + # point.gb.Wick gb.LLR + + with link = "line.gb.LLR" { + track(:third :removed, wl[:wic.yl + 1sw, :thr - 1sw]); + line_badge(:removed, wl[:thr - 3.5km], "LLR"); + } + + with link = "point.gb.Thrumster" { + track(:third:station :removed, wl[:thr - 1sw, :thr + 1sw]); + marker(:left :de.bf :removed, wl[:thr]); + slabel(:right :removed, wl[:thr + 0.3sw] << 1.8sh, + "Thrumster" + ); + } + + with link = "line.gb.LLR" { + track(:third :removed, wl[:thr + 1sw, :wel - 1sw]); + } + + with link = "point.gb.Welshs-Crossing" { + track(:third:station :removed, wl[:wel - 1sw, :wel + 1sw]); + marker(:left :de.hp :removed, wl[:wel]); + slabel(:right :removed, wl[:wel + 0.15sw] << 1.6sh, + "Welsh’s Crossing Halt" + ); + } + + with link = "line.gb.LLR" { + track(:third :removed, wl[:wel + 1sw, :ulb - 1sw]); + } + + with link = "point.gb.Ulbster" { + track(:third:station :removed, wl[:ulb - 1sw, :ulb + 1sw]); + marker(:left :de.bf :removed, wl[:ulb]); + slabel(:right :removed, wl[:ulb - 0.05sw] << 2.2sh, + "Ulbster" + ); + } + + with link = "line.gb.LLR" { + track(:third :removed, wl[:ulb + 1sw, :mid - 1sw]); + } + + with link = "point.gb.Mid-Clyth" { + track(:third:station :removed, wl[:mid - 1sw, :mid + 1sw]); + marker(:left :de.bf :removed, wl[:mid]); + slabel(:right :removed, wl[:mid + 0.25sw] << 2.0sh, "Mid Clyth"); + } + + with link = "line.gb.LLR" { + track(:third :removed, wl[:mid + 1sw, :ros - 1sw]); + } + + with link = "point.gb.Roster-Road" { + track(:third:station :removed, wl[:ros - 1sw, :ros + 1sw]); + marker(:left :de.hp :removed, wl[:ros]); + slabel(:left :removed, wl[:ros + 0.5sw] >> 1.0dt, + "Roster Road Halt" + ); + } + + with link = "line.gb.LLR" { + track(:third :removed, wl[:ros + 1sw, :occ - 1sw]); + line_label(:left:nw :removed, wl[:occ - 2.5km], "LLR"); + } + + with link = "point.gb.Occumster" { + track(:third:station :removed, wl[:occ - 1sw, :occ + 1sw]); + marker(:left :de.bf :removed, wl[:occ]); + slabel(:right :removed, wl[:occ + 1sw] << 1.8sh + (-1dt, 0dt), + hbox(:left:top, "Occumster") + ); + } + + with link = "line.gb.LLR" { + track(:third :removed, wl[:occ + 1sw, :par - 1sw]); + } + + with link = "point.gb.Parkside" { + track(:third:station :removed, wl[:par - 1sw, :par + 1sw]); + marker(:right :de.hp :removed, wl[:par]); + slabel(:left :removed, wl[:par] >> 2.0sh + (4dt, -0.3dt), + "Parkside Halt" + ); + } + + with link = "line.gb.LLR" { + track(:third :removed, wl[:par + 1sw, :lyb - 1sw]); + } + + with link = "point.gb.Lybster" { + track(:third:station :removed, wl[:lyb - 1sw, :lyb + 1sw]); + marker(:right :de.bf :removed, wl[:lyb + 0.5sw]); + slabel(:left :removed, wl[:lyb + 1sw] + (-1.3dt, 0.8dt), + span(:bold, "Lybster") + ); + } +} + diff --git a/rules/gb/a/d3/m/mof.map b/rules/gb/a/d3/m/mof.map new file mode 100644 index 00000000..20b388a6 --- /dev/null +++ b/rules/gb/a/d3/m/mof.map @@ -0,0 +1,67 @@ +# GB MOF. Muir of Ord - Fortrose +# +let mf = path("d4.gb.mof"); + +with detail = 3 { + # point.gb.Muir-of-Ord: gb.WCK + + with link = "line.gb.MOF" { + track(:first :removed, + mf[:mui.yf - 0.1dl, :mui.yf] >> 1dt + .. mf[:mui.yff + 1dt, :red - 1sw] + ); + line_badge(:removed, mf[:mui.yff + 2.0km], "MOF"); + } + + with link = "point.gb.Redcastle" { + track(:first:station :removed, mf[:red - 1sw, :red + 1sw]); + marker(:left :de.bf :removed, mf[:red]); + slabel(:left :removed, mf[:red + 1.5sw] << 1.0sh, "Redcastle"); + } + + with link = "line.gb.MOF" { + track(:first :removed, mf[:red + 1sw, :all - 1sw]); + } + + with link = "point.gb.Allangrange" { + track(:first:station :removed, mf[:all - 1sw, :all + 1sw]); + marker(:left :de.bf :removed, mf[:all]); + slabel(:top :removed, mf[:all] << 1.3sh + (-2sw, 0dt), "Allangrange"); + } + + with link = "line.gb.MOF" { + track(:first :removed, mf[:all + 1sw, :mun - 1sw]); + } + + with link = "point.gb.Munlochy" { + track(:first:station :removed, mf[:mun - 1sw, :mun + 1sw]); + marker(:right :de.bf :removed, mf[:mun]); + slabel(:right :removed, mf[:mun - 0.3sw] >> 2.0sh, + "Munlochy" + ); + } + + with link = "line.gb.MOF" { + track(:first :removed, mf[:mun + 1sw, :avo - 1sw]); + line_badge(:removed, mf[:mun + 3.0km], "MOF"); + } + + with link = "point.gb.Avoch" { + track(:first:station :removed, mf[:avo - 1sw, :avo + 1sw]); + marker(:right :de.bf :removed, mf[:avo]); + slabel(:bottom :removed, mf[:avo] >> 1.2sh, "Avoch"); + } + + with link = "line.gb.MOF" { + track(:first :removed, mf[:avo + 1sw, :for - 1sw]); + } + + with link = "point.gb.Fortrose" { + track(:first:station :removed, mf[:for - 1sw, :for + 0.5sw]); + marker(:right :de.bf :removed, mf[:for]); + slabel(:right :removed, mf[:for - 0.1sw] >> 2.0sh, + span(:bold, "Fortrose") + ); + } +} + diff --git a/rules/gb/a/d3/r/rsw.map b/rules/gb/a/d3/r/rsw.map new file mode 100644 index 00000000..4a40b2ef --- /dev/null +++ b/rules/gb/a/d3/r/rsw.map @@ -0,0 +1,12 @@ +# GB RSW. Welsh’s Bridge Jn - Rose Street Jn +# + +with detail = 3 { + with link = "line.gb.RSW" { + track(:first, + path("d4.gb.hl")[:wel + 0.3sw, :wel + 0.31sw] >> 1.5dt + .. path("d4.gb.wck")[:ros + 0.69sw, :ros + 0.7sw] >> 1dt + ); + } +} + diff --git a/rules/gb/a/d3/w/wck.map b/rules/gb/a/d3/w/wck.map index de1018ab..0bc506ee 100644 --- a/rules/gb/a/d3/w/wck.map +++ b/rules/gb/a/d3/w/wck.map @@ -7,7 +7,27 @@ with detail = 3 { # point.gb.Rose-Street-Jn gb.HL with link = "line.gb.WCK" { - track(:first :pax, iw[:ros + 1sw, :cla - 1sw]); + track(:first :pax, iw[:ros + 1sw, :can - 0.5sw]); + } + + with link = "point.gb.Rose-Street-Jn" { + track(:first:station, + iw[:ros + 0.7sw, :ros + 1sw] >> 1dt + -- iw[:ros + 1sw + 1dl, :ros + 1sw + 1.1dl] + ); + marker(:right :de.abzw, iw[:ros + 1sw] >> 1dt); + } + + with link = "point.gb.Canal-Branch-Jn" { + track(:first:station :pax, iw[:can - 0.5sw, :can + 0.5sw]); + track(:first:station :removed, + path("d4.gb.imb")[:can, :can + 0.5sw] + ); + marker(:right :de.abzw :removed, iw[:can]); + } + + with link = "line.gb.WCK" { + track(:first :pax, iw[:can + 0.5sw, :cla - 1sw]); } with link = "point.gb.Clachnaharry" { @@ -123,15 +143,21 @@ with detail = 3 { } with link = "point.gb.Dingwall" { - track(:first:station :pax, iw[:din - 1sw, :din.fw + 0.5sw]); + track(:first:station :pax, iw[:din - 1sw, :din + 0.5sw]); marker(:left :de.bf :pax, iw[:din]); - slabel(:right :pax, iw[:din - 0.4sw] >> 2.0dt, + slabel(:right :pax, iw[:din - 1.0sw] >> 2.0dt, span(:bold, "Dingwall") ); } + with link = "point.gb.Dingwall-Jn" { + track(:first:station :pax, iw[:din + 0.5sw, :din.yk + 1sw]); + track(:first:station :pax, path("d4.gb.kyl")[:din.yk, :din.yk + 1sw]); + marker(:right :de.abzw :pax, iw[:din.yk]); + } + with link = "line.gb.WCK" { - track(:first :pax, iw[:din.fw + 0.5sw, :fou - 1sw]); + track(:first :pax, iw[:din.yk + 1sw, :fou - 1sw]); line_badge(:pax, iw[:din.fw + 3km], "WCK"); } @@ -288,8 +314,8 @@ with detail = 3 { with link = "point.gb.Invershin" { track(:first:station :pax, iw[:ins - 1sw, :ins + 1sw]); - marker(:left :de.hp :pax, iw[:ins]); - marker(:left :de.exbf :pax, iw[:ins]); + marker(:left :de.hp :pax, iw[:ins] @ -5); + marker(:left :de.exbf :pax, iw[:ins] @ -5); slabel(:right :pax, iw[:ins] >> 2.5dt, "Invershin"); } @@ -315,13 +341,18 @@ with detail = 3 { } with link = "line.gb.WCK" { - track(:first :pax, iw[:rog + 1sw, :mou - 1sw]); + track(:first :pax, iw[:rog + 1sw, :mou - 1.5sw]); } with link = "point.gb.The-Mound" { - track(:first:station :pax, iw[:mou - 1sw, :mou + 1sw]); - marker(:right :de.bf :removed, iw[:mou]); - slabel(:left :removed, iw[:mou] + (-1.5sw, -0.3sw), + track(:first:station :pax, iw[:mou - 1.5sw, :mou + 1sw]); + track(:third:station :removed, + iw[:mou - 1sw - 1.1dl, :mou - 1sw - 1dl] + -- iw[:mou - 1sw, :mou] >> 1dt + .. path("d4.gb.dnb")[:mou.fd + 0.9sw, :mou.fd + 1sw] + ); + marker(:right :de.bf :removed, iw[:mou - 0.5sw] >> 1dt); + slabel(:left :removed, iw[:mou] + (-2.0sw, -0.3sw), hbox(:right:top :bold, "The Mound") ); } @@ -536,6 +567,9 @@ with detail = 3 { with link = "point.gb.Wick" { track(:first:station :pax, iw[:wic.yl - 1sw, :wic]); + track(:third:station :removed, + path("d4.gb.llr")[:wic.yl + 1sw, :wic.yl] + ); marker(:left :de.bf :pax, iw[:wic - 0.5sw]); slabel(:right :pax, iw[:wic] + (0.9sw, 0.5dt), span(:bold, "Wick") diff --git a/rules/gb/a/d4/a/ai.map b/rules/gb/a/d4/a/ai.map new file mode 100644 index 00000000..47d4610b --- /dev/null +++ b/rules/gb/a/d4/a/ai.map @@ -0,0 +1,632 @@ +# GB AI. Aviemore - Forres - Millburn Junction (- Inverness) +# +let ai = path("d4.gb.ai"); + +with detail = [4, 5] { + # point.gb.Aviemore: gb.AI + + with link = "line.gb.AI" { + track(:first :museum, + ai[:avi.yf + 500m, :avi.ffd - 1dl] >> 1.5dt + .. ai[:avi.ffd + 800m, :boa - 570m] + ); + line_badge(:museum, ai[:avi.yf + 1800m] >> 1.5dt, "AI"); + line_badge(:museum, ai[:boa - 1700m], "AI"); + } + + with link = "point.gb.Boat-of-Garten" { + track(:first:station :museum, + ai[:boa - 570m, :boa + 50m] + -- ai[:boa + 120m, :boa + 200m] >> 1dt + -- ai[:boa + 280m, :boa + 350m] + ); + track(:station :removed, ai[:boa + 50m, :boa + 280m]); + track(:station :museum, + ai[:boa - 445m] + -- ai[:boa - 350m] >> 1dt + ); + + track(:station :museum, ai[:boa - 520m, :boa + 120m] >> 1dt); + track(:station :museum, + ai[:boa - 260m] >> 1dt + -- ai[:boa - 200m] + ); + + track(:first:station, ai[:boa - 170m, :boa + 30m] >> 2dt); + track(:first:station :removed, + ai[:boa + 30m, :boa + 200m + 0.7dl] >> 2dt + .. ai[:boa + 280m + 0.7dl, :boa + 350m] >> 1dt + ); + + track(:station, + ai[:boa - 211m, :boa - 210m] >> 1dt + -- ai[:boa - 130m, :boa - 50m] >> 3dt + ); + track(:station :removed, ai[:boa - 50m, :boa + 110m] >> 3dt); + + track(:station :removed, ai[:boa - 90m, :boa + 70m] >> 4dt); + + track(:station :removed, + ai[:boa - 131m, :boa - 130m] >> 3dt + -- ai[:boa - 50m, :boa + 30m] >> 5dt + -- ai[:boa + 150m, :boa + 151m] >> 2dt + ); + + track(:station, + ai[:boa - 300m] >> 1dt + -- ai[:boa - 140m] >> 5dt + ); + + platform(:museum, + ai[:boa - 170m, :boa + 50m] + -- ai[:boa + 50m, :boa - 170m] >> 0.7dt + ); + platform(:museum, + ai[:boa - 130m, :boa + 50m] >> 1.0dt + -- ai[:boa + 50m, :boa - 130m] << 2.0dt + ); + + marker(:left :de.bf :museum, ai[:boa] << 0.5dt); + station(:right :museum, ai[:boa - 0.1sw] >> 6.5dt, + span(:bold, "Boat of Garten"), + hbox(:center:top, + vbox(:right:top, "AI: ", "BGC: "), + vbox(:right:top, "??", "??") + ) + ); + } + + with link = "line.gb.AI" { + track(:first :museum, ai[:boa + 350m, :bro - 270m]); + line_label(:left:se :museum, ai[:boa + 1.5km], "AI"); + } + + with link = "point.gb.Broomhill" { + track(:first:station :museum, + ai[:bro - 270m, :bro + 100m] + -- ai[:bro + 150m, :bro + 340m] >> 0.5dt + -- ai[:bro + 390m, :bro + 440m] + ); + track(:first:station :museum, + ai[:bro + 99m, :bro + 100m] + -- ai[:bro + 150m, :bro + 340m] << 0.5dt + -- ai[:bro + 390m, :bro + 391m] + ); + + track(:station, + ai[:bro - 210m, :bro - 110m] >> 1.0dt + -- ai[:bro - 40m, :bro - 30m] >> 1.2dt + ); + track(:station, + ai[:bro - 110m] >> 1.0dt + -- ai[:bro - 60m] + ); + + platform(:museum, + ai[:bro - 40m, :bro + 80m] + -- ai[:bro + 80m, :bro - 40m] << 0.7dt + ); + + marker(:right :de.bf :museum, ai[:bro] >> 1.0dt); + station(:right :museum, ai[:bro - 0.1sw] >> 1.0dt >> 1.8sh, + "Broomhill", "??" + ); + } + + with link = "line.gb.AI" { + track(:first :museum, ai[:bro + 440m, :bro.ff]); + track(:first :removed, ai[:bro.ff, :gra - 380m]); + line_badge(:removed, ai[:gra - 2.0km], "AI"); + } + + with link = "point.gb.Grantown-on-Spey-West" { + track(:station :removed, + ai[:gra - 30m, :gra + 150m] << 2.2dt + -- ai[:gra + 220m, :gra + 221m] << 1dt + ); + track(:station :removed, + ai[:gra - 351m, :gra - 350m] + -- ai[:gra - 250m, :gra + 220m] << 1dt + -- ai[:gra + 300m, :gra + 301m] + ); + track(:first:station :removed, ai[:gra - 400m, :gra + 350m]); + track(:station :removed, + ai[:gra + 60m] + -- ai[:gra + 120m] << 1dt + ); + track(:station :removed, + ai[:gra - 325m, :gra - 50m] >> 1dt + ); + track(:station :removed, + ai[:gra - 325m, :gra - 70m] >> 2dt + ); + track(:station :removed, + ai[:gra - 325m, :gra - 170m] >> 3dt + -- ai[:gra - 50m, :gra - 49m] + ); + + platform(:removed, + ai[:gra - 170m, :gra + 120m] << 1.0dt + -- ai[:gra + 120m, :gra - 170m] >> 1.7dt + ); + platform(:removed, + ai[:gra - 50m, :gra + 225m] + -- ai[:gra + 225m, :gra - 50m] << 0.7dt + ); + + marker(:right :de.bf :removed, ai[:gra] >> 2dt); + station(:right :removed, ai[:gra - 0.35sw] >> 2dt >> 1.7sh, + vbox(:left:bottom, + span(:italic, " Grantom"), + span(:italic, " Grantom-on-Spey"), + "Grantown-on-Spey West" + ), + "??" + ); + } + + with link = "line.gb.AI" { + track(:first :removed, ai[:gra + 350m, :cgr - 1sw]); + } + + with link = "point.gb.Castle-Grant" { + track(:first:station :removed, ai[:cgr - 1sw, :cgr + 1sw]); + marker(:right :de.hp :removed, ai[:cgr]); + station(:right :removed, ai[:cgr - 0.45sw] >> 1.6sh, + "Castle Grant", "??" + ); + } + + with link = "line.gb.AI" { + track(:first :removed, ai[:cgr + 1sw, :dav - 1sw]); + line_badge(:removed, ai[:dav - 4.0km], "AI"); + } + + with link = "point.gb.Dava" { + track(:first:station :removed, ai[:dav - 1sw, :dav + 1sw]); + marker(:left :de.hp :removed, ai[:dav]); + station(:left :removed, ai[:dav - 0.3sw] << 1.5sh, + "Dava", "??" + ); + } + + with link = "line.gb.AI" { + track(:first :removed, ai[:dav + 1sw, :div.a]); + } + + with link = "struct.gb.Divie-Viaduct" { + track(:station :removed, + ai[:div.a - 0.6dt, :div.a - 0.5dt] << 1.2dt + -- ai[:div.a, :div.f] << 0.7dt + -- ai[:div.f + 0.5dt, :div.f + 0.6dt] << 1.2dt + ); + track(:first:station :removed, ai[:div.a, :div.f]); + track(:station :removed, + ai[:div.a - 0.6dt, :div.a - 0.5dt] >> 1.2dt + -- ai[:div.a, :div.f] >> 0.7dt + -- ai[:div.f + 0.5dt, :div.f + 0.6dt] >> 1.2dt + ); + slabel(:left :removed, ai[:div.a + 0.1sh] << 2.5dt, + "Divie Viaduct" + ); + } + + with link = "line.gb.AI" { + track(:first :removed, ai[:div.f, :dun - 380m]); + } + + with link = "point.gb.Dunphail" { + track(:station :removed, + ai[:dun + 30m, :dun + 140m] << 3dt + ); + track(:station :removed, + ai[:dun + 80m, :dun + 200m] << 2dt + ); + track(:station :removed, + ai[:dun - 331m, :dun - 330m] + .. ai[:dun - 230m, :dun + 100m] << 1dt + .. ai[:dun + 200m, :dun + 201m] + ); + track(:first:station :removed, ai[:dun - 380m, :dun + 250m]); + track(:station :removed, + ai[:dun + 10m] + -- ai[:dun + 110m] << 3dt + ); + + platform(:removed, + ai[:dun - 35m, :dun + 30m] << 1dt + -- ai[:dun + 30m, :dun - 35m] >> 1.7dt + ); + platform(:removed, + ai[:dun - 45m, :dun + 30m] + -- ai[:dun + 30m, :dun - 45m] << 0.7dt + ); + + marker(:left :de.bf :removed, ai[:dun] << 3dt); + station(:left :removed, ai[:dun - 0.25sw] << 3dt << 1.6sh, + "Dunphail", "??" + ); + } + + with link = "line.gb.AI" { + track(:first :removed, ai[:dun + 250m, :raf - 1sw]); + line_badge(:removed, ai[:dun + 3.6km], "AI"); + } + + with link = "point.gb.Rafford" { + track(:first:station :removed, ai[:raf - 1sw, :raf + 1sw]); + marker(:right :de.bf :gone, ai[:raf]); + station(:top :gone, ai[:raf] >> 1.2sh, "Rafford", "??"); + } + + with link = "line.gb.AI" { + track(:first :removed, ai[:raf + 1sw, :for - 290m]); + line_badge(:removed, ai[:for - 1.2km], "AI"); + } + + with link = "point.gb.Forres" { + track(:station :removed, + ai[:for - 241m, :for - 240m] + .. ai[:for - 140m, :for.yk - 100m] << 2dt + .. ai[:for.yk, :for.yk + 0.1dl] + ); + track(:station :removed, ai[:for - 190m, :for.yk - 50m] << 1dt); + track(:first:station :removed, ai[:for - 290m, :for.yk]); + + platform(:removed, + ai[:for - 160m, :for + 40m] + -- ai[:for + 40m, :for - 160m] << 0.7dt + ); + platform(:removed, + ai[:for - 140m, :for + 40m] << 1.0dt + -- ai[:for + 40m, :for - 140m] >> 2.0dt + ); + + + + track(:first:station :pax, ai[:for.yk, :for.f]); + track(:first:station :pax, + ai[:for.yk, :for.f - 150m] >> 1dt + .. ai[:for.f - 50m, :for.f - 49m] + ); + } + + with link = "line.gb.AI" { + track(:first :pax, ai[:for.f, :fiv.a]); + } + + with link = "struct.gb.Findhorn-Viaduct" { + track(:station :pax, + ai[:fiv.a - 0.6dt, :fiv.a - 0.5dt] << 1.2dt + -- ai[:fiv.a, :fiv.f] << 0.7dt + -- ai[:fiv.f + 0.5dt, :fiv.f + 0.6dt] << 1.2dt + ); + track(:first:station :pax, ai[:fiv.a, :fiv.f]); + track(:station :pax, + ai[:fiv.a - 0.6dt, :fiv.a - 0.5dt] >> 1.2dt + -- ai[:fiv.a, :fiv.f] >> 0.7dt + -- ai[:fiv.f + 0.5dt, :fiv.f + 0.6dt] >> 1.2dt + ); + slabel(:left :pax, ai[:fiv.a + 60m] >> 2.0dt, + "Findhorn Viaduct" + ); + } + + with link = "line.gb.AI" { + track(:first :pax, ai[:fiv.f, :dal - 1sw]); + } + + with link = "point.gb.Dalvey" { + track(:first:station :pax, ai[:dal - 1sw, :dal + 1sw]); + marker(:right :de.bf :gone, ai[:dal]); + station(:left :gone, ai[:dal + 0.2sw] >> 1.3sh, + "Dalvey", "??" + ); + } + + with link = "line.gb.AI" { + track(:first :pax, ai[:dal + 1sw, :bod - 390m]); + } + + with link = "point.gb.Brodie" { + track(:station :removed, + ai[:bod - 201m, :bod - 200m] << 1dt + -- ai[:bod - 130m, :bod - 20m] << 2dt + ); + track(:station :removed, + ai[:bod - 341m, :bod - 340m] + .. ai[:bod - 240m, :bod + 200m] << 1dt + .. ai[:bod + 300m, :bod + 301m] + ); + track(:first:station :pax, ai[:bod - 390m, :bod + 350m]); + + platform(:removed, + ai[:bod - 35m, :bod + 140m] << 1dt + -- ai[:bod + 140m, :bod - 5m] >> 1.7dt + -- ai[:bod - 5m, :bod - 35m] >> 1.5dt + ); + platform(:removed, + ai[:bod - 180m, :bod + 120m] + -- ai[:bod + 120m, :bod - 180m] << 0.7dt + ); + marker(:left :de.bf :removed, ai[:bod] << 2.0dt); + station(:bottom :removed, ai[:bod] << 2.0dt << 1.2sh, + "Brodie", "??" + ); + } + + with link = "line.gb.AI" { + track(:first :pax, ai[:bod + 350m, :aul - 110m]); + } + + with link = "point.gb.Auldearn" { + track(:station :removed, + ai[:aul + 30m, :aul + 80m] << 2dt + .. ai[:aul + 175m] << 1dt -- ai[:aul + 230m] + ); + track(:station :removed, ai[:aul + 175m, :aul + 260m] << 1dt); + track(:first:station :pax, ai[:aul - 110m, :aul + 310m]); + + platform(:removed, + ai[:aul - 50m, :aul + 130m] + -- ai[:aul + 130m, :aul - 50m] >> 0.7dt + ); + + marker(:left :de.bf :removed, ai[:aul] << 2dt); + station(:bottom :removed, ai[:aul] << 2dt << 1.2sh, + "Auldearn", "??" + ); + } + + with link = "line.gb.AI" { + track(:first :pax, ai[:aul + 310m, :nai - 600m]); + } + + with link = "point.gb.Nairn" { + track(:station :removed, + ai[:nai + 299m, :nai + 300m] << 2dt + -- ai[:nai + 350m, :nai + 400m] << 3dt + ); + + track(:station, + ai[:nai + 49m, :nai + 50m] << 1dt + .. ai[:nai + 120m, :nai + 250m] << 2dt + ); + track(:station :removed, ai[:nai + 250m, :nai + 550m] << 2dt); + track(:station :removed, + ai[:nai + 290m] << 2dt + -- ai[:nai + 360m] << 1dt + ); + track(:station :removed, + ai[:nai + 440m] << 2dt + -- ai[:nai + 490m] << 1dt + ); + + track(:station :removed, ai[:nai - 550m, :nai - 190m] << 1dt); + track(:station :pax, + ai[:nai - 301m, :nai - 300m] + .. ai[:nai - 190m, :nai + 250m] << 1dt + .. ai[:nai + 350m, :nai + 351m] + ); + track(:station :removed, ai[:nai + 250m, :nai + 780m] << 1dt); + track(:station :removed, + ai[:nai + 180m] << 1dt + -- ai[:nai + 250m] << 2dt + ); + + track(:first:station :pax, ai[:nai - 600m, :nai + 830m]); + + platform(:pax, + ai[:nai - 120m, :nai + 30m] << 1dt + -- ai[:nai + 30m, :nai - 120m] >> 1.7dt + ); + platform(:pax, + ai[:nai - 100m, :nai + 60m] + -- ai[:nai + 60m, :nai - 100m] << 0.7dt + ); + + marker(:right :de.bf :pax, ai[:nai] >> 0.5dt); + station(:top :pax, ai[:nai + 0.1sh] >> 0.5dt >> 1.4sh, + "Nairn", "128 72" + ); + } + + with link = "line.gb.AI" { + track(:first :pax, ai[:nai + 830m, :kil - 1sw]); + } + + with link = "point.gb.Kildrummie" { + track(:first:station :pax, ai[:kil - 1sw, :kil + 1sw]); + marker(:right :de.hp :removed, ai[:kil]); + station(:top :removed, ai[:kil] >> 1.2sh, + vbox(:center:bottom, span(:italic, "Cawdor"), "Kildrummie"), + "??" + ); + } + + with link = "line.gb.AI" { + track(:first :pax, ai[:kil + 1sw, :gol - 340m]); + line_badge(:pax, ai[:gol - 2.4km], "AI"); + } + + with link = "point.gb.Gollanfield" { + let gf = path("d4.gb.gfg"); + + # AI side + + track(:station :removed, ai[:gol - 270m, :gol - 150m] << 2dt); + track(:station :removed, + ai[:gol - 240m] << 2dt + -- ai[:gol - 180m] << 1dt + ); + + track(:station :removed, ai[:gol - 290m, :gol - 25m] << 1dt); + track(:station :removed, + ai[:gol - 100m] << 1dt + -- ai[:gol - 30m] + ); + + track(:first:station :pax, ai[:gol - 340m, :gol + 450m]); + + track(:station :removed, + ai[:gol - 271m, :gol - 270m] + .. ai[:gol - 170m, :gol + 300m] >> 1dt + .. ai[:gol + 400m, :gol + 401m] + ); + track(:station :removed, + ai[:gol - 110m] >> 1dt + -- ai[:gol - 60m] + ); + + # GFG side + + track(:first:station :removed, gf[:gol.yf, :gol.yf + 300m]); + track(:station :removed, + gf[:gol.yf - 0.1dl, :gol.yf] >> 1dt + .. gf[:gol.yf + 250m, :gol.yf + 251m] + ); + track(:station :removed, + gf[:gol - 150m, :gol.yf] >> 2dt + .. gf[:gol.yf + 250m, :gol.yf + 251m] + ); + + platform(:removed, + gf[:gol, :gol.yf + 70m] + -- gf[:gol.yf + 70m, :gol] >> 0.7dt + ); + platform(:removed, + gf[:gol, :gol.yf] >> 1dt + -- gf[:gol.yf, :gol] << 2dt + ); + + marker(:left :de.bf :removed, ai[:gol] << 1.0dt); + station(:bottom :removed, ai[:gol - 0.5sw] << 1.0dt << 1.4sh, + vbox(:center:bottom, + span(:italic, "Fort George"), + span(:italic, "Gollanfield Jn."), + span(:bold, "Gollanfield") + ), + hbox(:center:top, + vbox(:right:top, "GFG: ", "AI: "), + vbox(:right:top, "??", "??") + ) + ); + } + + with link = "line.gb.AI" { + track(:first :pax, ai[:gol + 450m, :ina - 650m]); + } + + with link = "point.gb.Inverness-Airport" { + track(:station :pax, + ai[:ina - 601m, :ina - 600m] + .. ai[:ina - 500m, :ina + 480m] << 1dt + .. ai[:ina + 580m, :ina + 581m] + ); + track(:first:station :pax, ai[:ina - 650m, :ina + 630m]); + + platform(:pax, + ai[:ina - 70m, :ina + 70m] << 1dt + -- ai[:ina + 70m, :ina - 70m] >> 1.7dt + ); + platform(:pax, + ai[:ina - 70m, :ina + 70m] + -- ai[:ina + 70m, :ina - 70m] << 0.7dt + ); + + marker(:right :de.bf :pax, ai[:ina] >> 0.5dt); + station(:left :pax, ai[:ina + 0.4sw] >> 0.5dt >> 1.2sh, + "Inverness Airport", "136 43" + ); + } + + with link = "line.gb.AI" { + track(:first :pax, ai[:ina + 630m, :dac - 330m]); + } + + with link = "point.gb.Dalcross" { + track(:station :removed, ai[:dac - 205m, :dac - 20m] << 1dt); + track(:station :removed, + ai[:dac - 95m] << 1dt + -- ai[:dac - 25m] + ); + track(:first:station :pax, ai[:dac - 330m, :dac + 180m]); + track(:first:station :removed, + ai[:dac - 281m, :dac - 280m] + .. ai[:dac - 180m, :dac + 180m] >> 1dt + ); + + platform(:removed, + ai[:dac - 10m, :dac + 130m] + -- ai[:dac + 130m, :dac - 10m] >> 0.7dt + ); + platform(:removed, + ai[:dac - 10m, :dac + 130m] >> 1.0dt + -- ai[:dac + 130m, :dac - 10m] << 1.7dt + ); + + marker(:left :de.bf :removed, ai[:dac] << 1.0dt); + station(:right :removed, ai[:dac + 0.2sw] << 1.0dt << 1.8sh, + "Dalcross", "??" + ); + } + + with link = "line.gb.AI" { + track(:first :pax, ai[:dac + 180m, :all - 160m]); + track(:first :removed, ai[:dac + 180m, :all - 160m] >> 1dt); + } + + with link = "point.gb.Allanfearn" { + track(:station :removed, ai[:all + 35m, :all + 200m] << 1dt); + track(:station :removed, + ai[:all + 110m] << 1dt + -- ai[:all + 180m] + ); + track(:first:station :pax, ai[:all - 160m, :all + 250m]); + track(:first:station :removed, ai[:all - 160m, :all + 250m] >> 1dt); + track(:station :removed, + ai[:all + 30m] >> 1dt + -- ai[:all + 80m] + ); + + platform(:removed, + ai[:all - 110m, :all + 20m] + -- ai[:all + 20m, :all - 110m] >> 0.7dt + ); + platform(:removed, + ai[:all - 110m, :all + 20m] >> 1.0dt + -- ai[:all + 20m, :all - 110m] << 1.7dt + ); + + marker(:left :de.bf :removed, ai[:all] << 1.0dt); + station(:right :removed, ai[:all + 0.3sw] << 1.0dt << 1.8sh, + vbox(:center:bottom, + span(:italic, "Culloden"), + "Allanfearn" + ), + "??" + ); + } + + with link = "line.gb.AI" { + track(:first :pax, + ai[:all + 250m, :mil.xe] + .. ai[:mil.xw, :inv.af] << 1.5dt + ); + + track(:first :removed, + ai[:all + 250m, :all.xe] >> 1dt + .. ai[:all.xw, :all.xw + 0.1dl] + ); + track(:first :removed, + ai[:all.xe - 0.1dl, :all.xe] + .. ai[:all.xw, :mil.xe] << 1dt + .. ai[:mil.xw, :inv.af] << 2.5dt + ); + + line_badge(:pax, ai[:all.xw + 0.7km] << 0.5dt, "AI"); + } + + # point.gb.Millburn-Jn: gb.HL +} + diff --git a/rules/gb/a/d4/b/baf.map b/rules/gb/a/d4/b/baf.map new file mode 100644 index 00000000..c04b5f8c --- /dev/null +++ b/rules/gb/a/d4/b/baf.map @@ -0,0 +1,106 @@ +# GB BAF. Ballinluig - Aberfeldy +# +let ba = path("d4.gb.baf"); + +with detail = [4, 5] { + # point.gb.Ballinluig: gb.HL + + with link = "line.gb.BAF" { + track(:first :removed, ba[:bal.fa, :bag - 100m]); + line_badge(:removed, ba[:bag - 1.25km], "BAF"); + } + + with link = "point.gb.Balnaguard" { + track(:first:station :removed, ba[:bag - 100m, :bag + 100m]); + platform(:removed, + ba[:bag - 30m, :bag + 30m] + -- ba[:bag + 30m, :bag - 30m] << 0.7dt + ); + marker(:right :de.hp :removed, ba[:bag] >> 0.5dt); + station(:top :removed, ba[:bag - 0.1sw] >> 0.5dt >> 1.2sh, + "Balnaguard", "??" + ); + } + + with link = "line.gb.BAF" { + track(:first :removed, ba[:bag + 100m, :gra - 270m]); + } + + with link = "point.gb.Grandtully" { + track(:first:station :removed, ba[:gra - 270m, :gra + 100m]); + track(:station :removed, ba[:gra - 180m, :gra - 40m] >> 1dt); + track(:station :removed, + ba[:gra - 221m, :gra - 220m] + -- ba[:gra - 140m, :gra - 75m] >> 2dt + ); + + platform(:removed, + ba[:gra - 40m, :gra + 30m] + -- ba[:gra + 30m, :gra - 40m] << 0.7dt + ); + marker(:right :de.bf :removed, ba[:gra] >> 2dt); + station(:top :removed, ba[:gra + 0.1sw] >> 2dt >> 1.2sh, + "Grandtully", "??" + ); + } + + with link = "line.gb.BAF" { + track(:first :removed, ba[:gra + 100m, :abd - 220m]); + } + + with link = "point.gb.Aberfeldy-Distillery" { + track(:station :removed, + ba[:abd - 170m, :abd - 40m] << 2dt + -- ba[:abd + 40m, :abd + 41m] + ); + track(:station :removed, ba[:abd - 170m, :abd + 40m] << 1dt); + track(:first:station :removed, ba[:abd - 220m, :abd + 90m]); + marker(:right :de.anst :removed, ba[:abd]); + station(:right :removed, ba[:abd - 0.2sw] << 1.6sh, + "Aberfeldy Distillery", "??" + ); + } + + with link = "line.gb.BAF" { + track(:first :removed, ba[:abd + 90m, :abe - 350m]); + line_badge(:removed, ba[:abd - 1.85km], "BAF"); + } + + with link = "point.gb.Aberfeldy" { + track(:station :removed, + ba[:abe - 200m, :abe - 180m] << 2dt + -- ba[:abe - 140m, :abe - 139m] << 1dt + ); + track(:station :removed, ba[:abe - 200m, :abe + 80m] << 1dt); + track(:first:station :removed, ba[:abe - 350m, :abe + 80m]); + track(:station :removed, + ba[:abe - 180m] + -- ba[:abe - 110m] << 1dt + ); + track(:station :removed, + ba[:abe - 260m, :abe - 140m] >> 1dt + .. ba[:abe - 70m, :abe - 20m] >> 1.2dt + ); + track(:station :removed, + ba[:abe - 140m] >> 1dt + -- ba[:abe - 80m] + ); + track(:station :removed, ba[:abe - 220m, :abe - 80m] >> 2dt); + track(:station :removed, ba[:abe - 180m, :abe - 20m] >> 3dt); + track(:station :removed, + ba[:abe - 301m, :abe - 300m] + -- ba[:abe - 140m, :abe - 20m] >> 4dt + ); + + platform(:removed, + ba[:abe - 70m, :abe + 80m] + -- ba[:abe + 80m, :abe - 70m] << 0.7dt + ); + + marker(:right :de.bf :removed, ba[:abe] >> 4dt); + station(:left :removed, ba[:abe + 0.5sw] >> 4dt >> 1.2sh, + span(:bold, "Aberfeldy"), "BAF: ??" + ); + } +} + diff --git a/rules/gb/a/d4/d/dfs.map b/rules/gb/a/d4/d/dfs.map new file mode 100644 index 00000000..95d34e70 --- /dev/null +++ b/rules/gb/a/d4/d/dfs.map @@ -0,0 +1,31 @@ +# GB DFS. Fodderty Junction - Strathpeffer +# +let fs = path("d4.gb.dfs"); + +with detail = [4, 5] { + # point.gb.Fodderty-Jn: gb.KYL + + with link = "line.gb.DFS" { + track(:first :removed, fs[:fod + 1sw, :str - 330m]); + line_badge(:removed, fs[:fod + 1.9km], "DFS"); + } + + with link = "point.gb.Strathpeffer" { + track(:first:station :removed, fs[:str - 330m, :str + 20m]); + track(:station :removed, fs[:str - 205m, :str - 20m] >> 1.5dt); + track(:station :removed, + fs[:str - 281m, :str - 280m] + -- fs[:str - 155m, :str - 20m] >> 2.5dt + ); + platform(:removed, + fs[:str - 130m, :str + 20m] + -- fs[:str + 20m, :str - 130m] << 0.7dt + ); + + marker(:right :de.bf :removed, fs[:str] >> 2.5dt); + station(:top :removed, fs[:str] >> 2.5dt >> 1.3sh, + span(:bold, "Strathpeffer"), "DFS: ??" + ); + } +} + diff --git a/rules/gb/a/d4/d/dnb.map b/rules/gb/a/d4/d/dnb.map new file mode 100644 index 00000000..0dc3ae19 --- /dev/null +++ b/rules/gb/a/d4/d/dnb.map @@ -0,0 +1,94 @@ +# GB DNB. The Mound - Dornoch +# +let md = path("d4.gb.dnb"); + +with detail = [4, 5] { + # point.gb.The-Mound gb.WCK + + with link = "line.gb.DNB" { + track(:third :removed, md[:mou.fd, :cam - 110m]); + line_label(:right:e :removed, md[:mou.fd + 1.0km], "DNB"); + } + + with link = "point.gb.Cambusavie" { + track(:third:station :removed, md[:cam - 110m, :cam + 100m]); + platform(:removed, + md[:cam - 60m, :cam + 15m] + -- md[:cam + 15m, :cam - 60m] << 0.7dt + ); + marker(:right :de.hp :removed, md[:cam] >> 0.5dt); + station(:right :removed, md[:cam + 0.4sw] << 1.5dt, + "Cambusavie Platform", "??" + ); + } + + with link = "line.gb.DNB" { + track(:third :removed, md[:cam + 100m, :ske - 100m]); + } + + with link = "point.gb.Skelbo" { + track(:station :removed, + md[:ske - 10m] << 1.3dt + -- md[:ske + 10m] << 1.0dt + .. md[:ske + 80m, :ske + 81m] + ); + track(:third:station :removed, md[:ske - 100m, :ske + 130m]); + platform(:removed, + md[:ske - 20m, :ske + 20m] + -- md[:ske + 30m, :ske - 20m] << 0.7dt + ); + marker(:right :de.bf :removed, md[:ske] >> 0.5dt); + station(:bottom :removed, md[:ske] >> 0.5dt >> 1.2sh, + "Skelbo", "??" + ); + } + + with link = "line.gb.DNB" { + track(:third :removed, md[:ske + 130m, :emb - 100m]); + } + + with link = "point.gb.Embo" { + track(:station :removed, + md[:emb + 29m, :emb + 30m] + .. md[:emb + 100m, :emb + 150m] << 1dt + ); + track(:third:station :removed, md[:emb - 100m, :emb + 200m]); + platform(:removed, + md[:emb - 25m, :emb + 25m] + -- md[:emb + 25m, :emb - 25m] >> 0.7dt + ); + marker(:left :de.bf :removed, md[:emb] << 1.0dt); + station(:right :removed, md[:emb + 0.4sw] << 1.0dt << 1.3sh, + "Embo", "??" + ); + } + + with link = "line.gb.DNB" { + track(:third :removed, md[:emb + 200m, :dor - 220m]); + line_badge(:removed, md[:dor - 1.0km], "DNB"); + } + + with link = "point.gb.Dornoch" { + track(:station :removed, md[:dor - 180m, :dor - 100m] << 1dt); + track(:third:station :removed, md[:dor - 220m, :dor + 30m]); + track(:station :removed, + md[:dor - 170m] + -- md[:dor - 130m] << 1dt + ); + track(:station :removed, md[:dor - 120m, :dor + 30m] >> 1dt); + track(:station :removed, md[:dor - 90m, :dor + 30m] >> 2dt); + track(:station :removed, + md[:dor - 150m] -- md[:dor - 90m] >> 2dt + .. md[:dor - 40m] >> 3.2dt -- md[:dor + 30m] >> 4dt + ); + platform(:removed, + md[:dor - 80m, :dor + 30m] + -- md[:dor + 30m, :dor - 80m] >> 0.7dt + ); + marker(:left :de.bf :removed, md[:dor] << 1.0dt); + station(:right :removed, md[:dor + 0.3sw] << 1.0dt << 1.6sh, + span(:bold, "Dornoch"), "DNB: ??" + ); + } +} + diff --git a/rules/gb/a/d4/h/hl.map b/rules/gb/a/d4/h/hl.map new file mode 100644 index 00000000..d8cfa03b --- /dev/null +++ b/rules/gb/a/d4/h/hl.map @@ -0,0 +1,1059 @@ +# GB HL. Stanley Junction - Inverness (Highland Line) +# +let hl = path("d4.gb.hl"); + +with detail = [4, 5] { + + with link = "line.gb.HL" { + track(:first :pax, hl[:sta.yd + 200m, :mur - 220m]); + line_badge(:pax, hl[:sta.yd + 2km], "HL"); + } + + with link = "point.gb.Murthly" { + track(:station :removed, + hl[:mur + 50m, :mur + 140m] << 2dt + -- hl[:mur + 220m, :mur + 221m] + ); + track(:station :removed, hl[:mur + 50m, :mur + 180m] << 1dt); + track(:first:station :pax, hl[:mur - 220m, :mur + 450m]); + track(:station :removed, + hl[:mur - 161m, :mur - 160m] + .. hl[:mur - 60m, :mur + 270m] >> 1dt + .. hl[:mur + 370m, :mur + 371m] + ); + track(:station :removed, + hl[:mur + 229m, :mur + 230m] >> 1dt + .. hl[:mur + 350m] >> 3dt -- hl[:mur + 380m] >> 6dt + ); + + platform(:removed, + hl[:mur - 20m, :mur + 135m] + -- hl[:mur + 135m, :mur + 50m] >> 1dt + -- hl[:mur + 50m, :mur - 20m] >> 0.7dt + ); + platform(:removed, + hl[:mur - 20m, :mur + 135m] >> 1dt + -- hl[:mur + 135m, :mur - 20m] << 1.7dt + ); + + marker(:left :de.bf :removed, hl[:mur] << 2dt); + station(:left :removed, hl[:mur - 0.2sw] << 2dt << 1.8sh, + "Murthly", "??" + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:mur + 450m, :kwt.a]); + } + + with link = "struct.gb.Kingswood-Tunnel" { + marker(:top :tunnel.r :pax, hl[:kwt.a]); + marker(:top :tunnel.l :pax, hl[:kwt.a]); + marker(:bottom :tunnel.r :pax, hl[:kwt.f]); + marker(:bottom :tunnel.l :pax, hl[:kwt.f]); + slabel(:left :pax, hl[:kwt.a + 200m] << 1.0dt, + hbox(:right:top, + vbox(:center:top, + "Kingswood Tunnel", + span(:xsmall, "(330 yd)") + ) + ) + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:kwt.f, :dun - 400m]); + } + + with link = "point.gb.Dunkeld-Birnam" { + track(:first:station :pax, + hl[:dun - 341m, :dun - 340m] + .. hl[:dun - 240m, :dun + 90m] << 1dt + .. hl[:dun + 190m, :dun + 191m] + ); + track(:first:station :pax, hl[:dun - 400m, :dun + 250m]); + track(:station :removed, + hl[:dun - 220m, :dun - 30m] >> 1.0dt + ); + track(:station :removed, + hl[:dun - 180m, :dun - 60m] >> 2.0dt + ); + track(:station :removed, + hl[:dun - 261m, :dun - 260m] + -- hl[:dun - 140m, :dun - 90m] >> 3.0dt + ); + + platform(:pax, + hl[:dun - 190m, :dun + 55m] << 1dt + -- hl[:dun + 55m, :dun - 190m] >> 1.7dt + ); + platform(:pax, + hl[:dun - 190m, :dun + 55m] + -- hl[:dun + 55m, :dun - 190m] << 0.7dt + ); + + marker(:right :de.bf :pax, hl[:dun] >> 3.0dt); + station(:top :pax, hl[:dun] >> 3.0dt >> 1.5sh, + "Dunkeld & Birnam", "15 31" + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:dun + 250m, :int.a]); + } + + with link = "struct.gb.Inver-Tunnel" { + marker(:top :tunnel.r :pax, hl[:int.a]); + marker(:top :tunnel.l :pax, hl[:int.a]); + marker(:bottom :tunnel.r :pax, hl[:int.f]); + marker(:bottom :tunnel.l :pax, hl[:int.f]); + slabel(:left :pax, hl[:int.a + 200m] << 1.0dt, + hbox(:right:top, + vbox(:center:top, + "Inver Tunnel", + span(:xsmall, "(370 yd)") + ) + ) + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:int.f, :dag - 190m]); + } + + with link = "point.gb.Dalguise" { + track(:station :removed, hl[:dag - 190m, :dag - 60m] << 2dt); + track(:station :removed, + hl[:dag - 120m] << 2dt + -- hl[:dag - 60m] + ); + track(:station :removed, hl[:dag - 170m, :dag - 90m] << 1dt); + track(:first:station :pax, hl[:dag - 400m, :dag + 310m]); + track(:station :removed, + hl[:dag - 331m, :dag - 300m] + .. hl[:dag - 240m, :dag + 140m] >> 1dt + .. hl[:dag + 240m, :dag + 241m] + ); + track(:station :removed, + hl[:dag - 230m] >> 1dt + -- hl[:dag - 140m] << 2dt + ); + + platform(:removed, + hl[:dag - 65m, :dag + 25m] + -- hl[:dag + 25m, :dag - 65m] >> 0.7dt + ); + platform(:removed, + hl[:dag - 65m, :dag + 25m] >> 1.0dt + -- hl[:dag + 25m, :dag - 65m] << 1.7dt + ); + + marker(:left :de.bf :removed, hl[:dag] << 2dt); + station(:left :removed, hl[:dag - 0.35sw] << 2dt << 1.5sh, + "Dalguise", "??" + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:dag + 310m, :gua - 320m]); + } + + with link = "point.gb.Guay" { + track(:first:station :pax, hl[:gua - 320m, :gua + 110m]); + track(:station :removed, + hl[:gua - 250m] -- hl[:gua - 200m] >> 1dt + .. hl[:gua - 140m, :gua - 20m] >> 2dt + ); + track(:station :removed, + hl[:gua - 200m, :gua - 100m] >> 1dt + -- hl[:gua - 60m, :gua - 59m] >> 2dt + ); + + platform(:removed, + hl[:gua - 60m, :gua + 40m] + -- hl[:gua + 40m, :gua - 60m] << 0.7dt + ); + + marker(:right :de.hp :removed, hl[:gua] >> 2dt); + station(:right :removed, hl[:gua - 0.3sw] >> 2dt >> 1.3sh, + "Guay", "??" + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:gua + 110m, :bal - 280m]); + line_badge(:pax, hl[:bal - 2.0km], "HL"); + } + + with link = "point.gb.Ballinluig" { + track(:station :removed, + hl[:bal - 280m, :bal - 90m - 0.7dl] << 2dt + ); + track(:first:station :removed, + hl[:bal - 181m - 0.7dl, :bal - 180m - 0.7dl] + -- hl[:bal - 90m - 0.7dl, :bal + 30m - 0.7dl] << 2dt + .. path("d4.gb.baf")[:bal.fa, :bal.fa + 0.1dl] + ); + track(:first:station :removed, + hl[:bal - 181m, :bal - 180m] >> 1dt + -- hl[:bal - 90m, :bal + 30m] << 1dt + ); + + track(:first:station :pax, hl[:bal - 370m, :bal + 480m]); + + track(:station :removed, + hl[:bal - 321m, :bal - 320m] + .. hl[:bal - 220m, :bal + 330m] >> 1dt + .. hl[:bal + 430m, :bal + 431m] + ); + track(:station :removed, hl[:bal + 45m, :bal + 320m] >> 2dt); + track(:station :removed, + hl[:bal + 44m, :bal + 45m] >> 1dt + .. hl[:bal + 160m, :bal + 250m] >> 3dt + .. hl[:bal + 300m, :bal + 301m] >> 2dt + ); + + platform(:removed, + hl[:bal - 90m, :bal + 30m] + -- hl[:bal + 30m, :bal - 90m] >> 1dt + ); + platform(:removed, + hl[:bal - 130m, :bal + 30m] >> 1dt + -- hl[:bal + 30m, :bal - 130m] << 1.7dt + ); + + marker(:right :de.bf :removed, hl[:bal] >> 2.0dt); + station(:right :removed, hl[:bal - 0.5sw] >> 2.0dt >> 1.3sh, + span(:bold, "Ballinluig"), + hbox(:center:top, + vbox(:right:top, "BAF: ??", "HL: ??") + ) + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:bal + 480m, :pit - 250m]); + line_badge(:pax, hl[:bal + 2.5km], "HL"); + } + + with link = "point.gb.Pitlochry" { + track(:station :pax, + hl[:pit - 201m, :pit - 200m] + .. hl[:pit - 100m, :pit + 200m] << 1dt + .. hl[:pit + 300m, :pit + 301m] + ); + track(:first:station :pax, hl[:pit - 250m, :pit + 350m]); + + platform(:pax, + hl[:pit - 70m, :pit + 170m] << 1dt + -- hl[:pit + 170m, :pit - 70m] >> 1.7dt + ); + platform(:pax, + hl[:pit - 70m, :pit + 170m] + -- hl[:pit + 170m, :pit - 70m] << 0.7dt + ); + + marker(:right :de.bf :pax, hl[:pit] >> 0.5dt); + station(:top :pax, hl[:pit] >> 0.5dt >> 1.3sh, + "Pitlochry", "28 22" + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:pit + 350m, :kit.a]); + } + + with link = "struct.gb.Killiecrankie-Tunnel" { + marker(:top :tunnel.r :pax, hl[:kit.a]); + marker(:top :tunnel.l :pax, hl[:kit.a]); + marker(:bottom :tunnel.r :pax, hl[:kit.f]); + marker(:bottom :tunnel.l :pax, hl[:kit.f]); + slabel(:right :pax, hl[:kit.a + 50m] >> 2.0dt, + hbox(:left:base, + "Killiecrankie Tunnel", + span(:xsmall, " (240 yd)") + ) + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:kit.f, :kil - 190m]); + } + + with link = "point.gb.Killiecrankie" { + track(:station :removed, + hl[:kil - 140m] -- hl[:kil - 20m] << 3.0dt + ); + track(:station :removed, + hl[:kil - 100m, :kil + 340m] << 1dt + .. hl[:kil + 440m, :kil + 441m] + ); + track(:first:station :pax, hl[:kil - 190m, :kil + 490m]); + + platform(:removed, + hl[:kil - 60m, :kil + 130m] << 1.0dt + -- hl[:kil + 130m, :kil - 60m] >> 1.7dt + ); + platform(:removed, + hl[:kil - 60m, :kil + 130m] + -- hl[:kil + 130m, :kil - 60m] << 0.7dt + ); + + marker(:right :de.bf :removed, hl[:kil] >> 0.5dt); + station(:top :removed, hl[:kil - 0.1sw] >> 0.5dt >> 1.3sh, + " Killiecrankie", "??" + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:kil + 490m, :bla - 330m]); + } + + with link = "point.gb.Blair-Atholl" { + track(:first:station :pax, + hl[:bla - 330m, :bla - 280m] + .. hl[:bla - 150m, :bla.f] >> 0.5dt + ); + track(:station, + hl[:bla.f - 120m] >> 0.5dt + -- hl[:bla.f - 50m] << 0.5dt + ); + track(:first:station :pax, + hl[:bla - 281m, :bla - 280m] + .. hl[:bla - 150m, :bla.f] << 0.5dt + ); + + platform(:pax, + hl[:bla - 120m, :bla + 110m] << 0.5dt + -- hl[:bla + 110m, :bla - 120m] >> 1.2dt + ); + platform(:pax, + hl[:bla - 110m, :bla + 40m] >> 0.5dt + -- hl[:bla + 40m, :bla - 120m] << 1.2dt + ); + + marker(:right :de.bf :pax, hl[:bla] >> 1.0dt); + station(:top :pax, hl[:bla] >> 1.0dt >> 1.2sh, + vbox(:center:bottom, + span(:removed :italic, "Blair Athole"), + "Blair Atholl" + ), + "35 09" + ); + } + + with link = "line.gb.HL" { + track(:first :double :pax, hl[:bla.f, :bli - 100m]); + } + + with link = "point.gb.Black-Island" { + track(:first:station :double :pax, hl[:bli - 100m, :bli + 100m]); + + platform(:removed, + hl[:bli - 30m, :bli + 30m] << 0.5dt + -- hl[:bli + 30m, :bli - 30m] >> 1.2dt + ); + platform(:removed, + hl[:bli - 30m, :bli + 30m] >> 0.5dt + -- hl[:bli + 30m, :bli - 30m] << 1.2dt + ); + + marker(:left :de.hp :removed, hl[:bli] << 1.0dt); + station(:bottom :removed, hl[:bli] << 1.0dt << 1.4sh, + "Black Island Pl.", "??" + ); + } + + with link = "line.gb.HL" { + track(:first :double :pax, hl[:bli + 100m, :str - 100m]); + line_badge(:pax, hl[:bli + 1.3km], "HL"); + } + + with link = "point.gb.Struan" { + track(:first:station :double :pax, hl[:str - 100m, :str + 100m]); + + platform(:removed, + hl[:str - 30m, :str + 30m] << 0.5dt + -- hl[:str + 30m, :str - 30m] >> 1.2dt + ); + platform(:removed, + hl[:str - 30m, :str + 30m] >> 0.5dt + -- hl[:str + 30m, :str - 30m] << 1.2dt + ); + + marker(:left :de.bf :removed, hl[:str] << 1.0dt); + station(:bottom :removed, hl[:str] << 1.0dt << 1.2sh, + "Struan", "??" + ); + } + + with link = "line.gb.HL" { + track(:first :double :pax, hl[:str + 100m, :dac - 100m]); + } + + with link = "point.gb.Dalnacardoch" { + track(:first:station :double :pax, hl[:dac - 100m, :dac + 100m]); + track(:station, + hl[:dac - 50m] >> 0.5dt + -- hl[:dac + 50m] << 0.5dt + ); + marker(:right :de.uest, hl[:dac] >> 0.5dt); + station(:top, hl[:dac] >> 0.5dt >> 1.2sh, "Dalnacardoch", "44 76"); + } + + with link = "line.gb.HL" { + track(:first :double :pax, hl[:dac + 100m, :das - 100m]); + line_badge(:pax, hl[:das - 5.7km], "HL"); + } + + with link = "point.gb.Dalnaspidal" { + track(:first:station :double :pax, hl[:das - 100m, :das + 100m]); + + platform(:removed, + hl[:das - 30m, :das + 30m] << 0.5dt + -- hl[:das + 30m, :das - 30m] >> 1.2dt + ); + platform(:removed, + hl[:das - 30m, :das + 30m] >> 0.5dt + -- hl[:das + 30m, :das - 30m] << 1.2dt + ); + + marker(:right :de.bf :removed, hl[:das] >> 1.0dt); + station(:right :removed, hl[:das - 0.4sw] >> 1.0dt >> 1.4sh, + "Dalnaspidal", "??" + ); + } + + with link = "line.gb.HL" { + track(:first :double :pax, hl[:das + 100m, :dal - 150m]); + } + + with link = "point.gb.Dalwhinnie" { + track(:first:station :pax, + hl[:dal - 150m, :dal + 430m] << 0.5dt + .. hl[:dal + 650m, :dal + 700m] + ); + track(:first:station :pax, + hl[:dal - 150m, :dal + 280m] >> 0.5dt + .. hl[:dal + 430m, :dal + 431m] << 0.5dt + ); + track(:station, + hl[:dal + 75m, :dal + 280m] >> 1.5dt + .. hl[:dal + 430m, :dal + 650m] >> 1dt + ); + track(:station, + hl[:dal + 64m, :dal+ 65m] >> 0.5dt + -- hl[:dal + 220m, :dal + 280m] >> 2.5dt + .. hl[:dal + 430m, :dal + 650m] >> 2dt + ); + + platform(:pax, + hl[:dal - 40m, :dal + 155m] << 0.5dt + -- hl[:dal + 155m, :dal - 40m] >> 1.2dt + ); + platform(:pax, + hl[:dal - 55m, :dal + 60m] >> 0.5dt + -- hl[:dal + 60m, :dal - 55m] << 1.2dt + ); + + marker(:right :de.bf :pax, hl[:dal] >> 1.5dt); + station(:right :pax, hl[:dal - 0.4sw] >> 1.5dt >> 1.5sh, + "Dalwhinnie", "58 47" + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:dal + 700m, :new - 210m]); + line_badge(:pax, hl[:dal + 6.0km], "HL"); + } + + with link = "point.gb.Newtonmore" { + track(:station :removed, + hl[:new + 210m, :new + 240m] << 3.0dt + -- hl[:new + 360m, :new + 361m] + ); + track(:station :removed, + hl[:new + 80m, :new + 220m] << 2.0dt + -- hl[:new + 260m, :new + 261m] << 1.0dt + ); + track(:station :removed, + hl[:new + 130m] << 2.0dt + -- hl[:new + 170m] << 1.0dt + ); + track(:station :removed, hl[:new + 85m, :new + 320m] << 1.0dt); + track(:first:station :pax, hl[:new - 210m, :new + 490m]); + track(:station :removed, + hl[:new - 161m, :new - 160m] + .. hl[:new - 60m, :new + 340m] >> 1dt + .. hl[:new + 440m, :new + 441m] + ); + + platform(:removed, + hl[:new - 80m, :new + 10m] + -- hl[:new + 10m, :new - 80m] >> 0.7dt + ); + platform(:pax, + hl[:new + 10m, :new + 130m] + -- hl[:new + 130m, :new + 10m] >> 0.7dt + ); + platform(:removed, + hl[:new - 80m, :new + 80m] >> 1dt + -- hl[:new + 80m, :new - 80m] << 1.7dt + ); + + marker(:left :de.hp :pax, hl[:new] << 2.0dt); + marker(:left :de.exbf :pax, hl[:new] << 2.0dt); + station(:left :pax, hl[:new - 0.3sw] << 3.0dt << 1.2sh, + "Newtonmore", "68 62" + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:new + 490m, :kin - 460m]); + } + + with link = "point.gb.Kingussie" { + let kin = path("d4.gb.hl.kin"); + + track(:station :removed, + kin[:b - 0.1dl, :b] + .. kin[:c, :f] << 1dt + ); + track(:station :removed, + hl[:kin.yd - 0.1dl, :kin.yd] + .. kin[:a, :f] + ); + track(:first:station :pax, hl[:kin - 460m, :kin + 300m]); + track(:station :pax, + hl[:kin - 411m, :kin - 410m] + .. hl[:kin - 310m, :kin + 150m] >> 1dt + .. hl[:kin + 250m, :kin + 251m] + ); + track(:station, + hl[:kin - 280m] >> 1dt + -- hl[:kin - 220m] >> 2.2dt + ); + track(:station, + hl[:kin - 285m, :kin - 20m] >> 2.2dt + ); + track(:station, + hl[:kin - 175m, :kin - 80m] >> 3.2dt + ); + track(:station, + hl[:kin - 206m, :kin - 205m] >> 2.2dt + -- hl[:kin - 145m, :kin - 80m] >> 4.2dt + ); + + platform(:pax, + hl[:kin - 200m, :kin + 50m] + -- hl[:kin + 50m, :kin - 200m] >> 0.7dt + ); + platform(:pax, + hl[:kin - 200m, :kin + 50m] >> 1.0dt + -- hl[:kin + 50m, :kin - 200m] << 1.7dt + ); + + marker(:left :de.bf :pax, hl[:kin] << 0.5dt); + station(:top :pax, kin[:f] << 1.5dt, + "Kingussie", "71 43" + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:kin + 300m, :kic - 290m]); + } + + with link = "point.gb.Kincraig" { + track(:station :removed, + hl[:kic + 20m, :kic + 240m] << 1dt + ); + track(:station :removed, + hl[:kic + 90m] << 1dt + -- hl[:kic + 230m] + ); + track(:first:station :pax, hl[:kic - 290m, :kic + 490m]); + track(:station, + hl[:kic - 241m, :kic - 240m] + .. hl[:kic - 140m, :kic + 340m] >> 1dt + .. hl[:kic + 440m, :kic + 441m] + ); + track(:station :removed, + hl[:kic] >> 1dt + -- hl[:kic + 70m] << 1dt + ); + + platform(:removed, + hl[:kic - 120m, :kic + 20m] + -- hl[:kic + 20m, :kic - 120m] >> 0.7dt + ); + platform(:removed, + hl[:kic - 50m, :kic + 130m] >> 1.0dt + -- hl[:kic + 130m, :kic - 50m] << 1.7dt + ); + + marker(:left :de.bbf, hl[:kic] << 1.0dt); + marker(:left :de.exbf, hl[:kic] << 1.0dt); + station(:left, hl[:kic - 0.4sw] << 2.0dt << 1.3sh, + "Kincraig", "??" + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:kic + 490m, :avi.a]); + line_badge(:pax, hl[:avi.a - 2.8km], "HL"); + } + + with link = "point.gb.Aviemore" { + let ai = path("d4.gb.ai"); + + track(:station, + hl[:avi.yf - 31m, :avi.yf - 30m] << 0.5dt + -- hl[:avi.yf + 40m, :avi.yf + 200m] << 1.5dt + ); + track(:first:station :pax, + hl[:avi.a, :avi - 420m] + .. hl[:avi - 320m, :avi + 640m] << 0.5dt + .. hl[:avi + 740m, :avi.fi] + ); + track(:first:station :pax, + hl[:avi - 421m, :avi - 420m] + .. hl[:avi - 320m, :avi + 640m] >> 0.5dt + .. hl[:avi + 740m, :avi + 741m] + ); + track(:first:station :museum, + hl[:avi - 286m, :avi - 285m] >> 0.5dt + .. hl[:avi - 185m, :avi.yf] >> 1.5dt + .. ai[:avi.yf + 100m, :avi.yf + 500m] >> 1.5dt + ); + track(:station, + hl[:avi - 31m, :avi - 30m] >> 1.5dt + .. hl[:avi + 30m, :avi + 160m] >> 2.5dt + .. hl[:avi + 240m, :avi + 241m] >> 1.5dt + ); + track(:station, + ai[:avi.yf + 260m] >> 1.5dt + -- ai[:avi.yf + 320m] >> 2.5dt + ); + track(:station, + hl[:avi.yf - 120m, :avi.yf] >> 2.5dt + .. ai[:avi.yf + 100m, :avi.yf + 450m] >> 2.5dt + ); + track(:station, + ai[:avi.yf + 140m, :avi.yf + 240m] >> 3.5dt + ); + track(:station, + ai[:avi.yf + 99m, :avi.yf + 100m] >> 2.5dt + -- ai[:avi.yf + 180m, :avi.yf + 240m] >> 4.5dt + ); + track(:station, + ai[:avi.yf + 59m - 0.7dl, :avi.yf + 60m - 0.7dl] >> 2.5dt + -- ai[:avi.yf + 180m - 0.7dl, :avi.yf + 240m] >> 5.5dt + ); + + platform(:pax, + hl[:avi - 90m, :avi + 200m] << 0.5dt + -- hl[:avi + 200m, :avi - 90m] >> 1.2dt + ); + platform(:pax, + hl[:avi - 100m, :avi + 205m] >> 0.5dt + -- hl[:avi + 205m, :avi - 100m] << 1.0dt + ); + platform(:museum, + hl[:avi - 70m, :avi + 205m] >> 1.5dt + -- hl[:avi + 205m, :avi - 70m] << 1.0dt + ); + + marker(:left :de.bf :pax, hl[:avi] << 1.0dt); + station(:left :pax, hl[:avi - 0.3sw] << 1.0dt << 1.5sh, + span(:bold, "Aviemore"), + hbox(:center:top, + vbox(:right:top, "HL: ", "AI: "), + vbox(:right:top, "83 ", "83 "), + vbox(:left:top, "31", "31") + ) + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:avi.fi, :car - 440m]); + line_badge(:pax, hl[:avi.fi + 1.3km], "HL"); + } + + with link = "point.gb.Carrbridge" { + track(:station :pax, + hl[:car - 391m, :car - 390m] + .. hl[:car - 290m, :car + 140m] << 1dt + .. hl[:car + 240m, :car + 241m] + ); + track(:first:station :pax, hl[:car - 440m, :car + 290m]); + + platform(:pax, + hl[:car - 150m, :car + 110m] + -- hl[:car + 110m, :car - 150m] << 0.7dt + ); + platform(:pax, + hl[:car - 150m, :car + 110m] << 1.0dt + -- hl[:car + 110m, :car - 150m] >> 1.7dt + ); + + marker(:right :de.bf :pax, hl[:car] >> 0.5dt); + station(:right :pax, hl[:car - 0.4sw] >> 0.5dt >> 1.0sh, + vbox(:center:bottom, + span(:removed :italic, "Carr Bridge"), + "Carrbridge" + ), + "90 00" + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:car + 290m, :slo - 460m]); + line_badge(:pax, hl[:slo - 3.5km], "HL"); + } + + with link = "point.gb.Slochd" { + track(:station :pax, + hl[:slo - 411m, :slo - 410m] + .. hl[:slo - 310m, :slo + 130m] << 1dt + .. hl[:slo + 230m, :slo + 231m] + ); + track(:first:station :pax, hl[:slo - 460m, :slo + 280m]); + marker(:left :de.bbf, hl[:slo] << 1dt); + station(:left, hl[:slo - 0.2sw] << 1dt << 1.8sh, "Slochd", "??"); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:slo + 280m, :tom - 480m]); + } + + with link = "point.gb.Tomatin" { + track(:first:station :pax, hl[:tom - 480m, :tom + 260m]); + track(:station, + hl[:tom - 431m, :tom - 430m] + .. hl[:tom - 330m, :tom + 110m] >> 1dt + .. hl[:tom + 210m, :tom + 211m] + ); + track(:station :removed, hl[:tom - 260m, :tom - 50m] >> 2dt); + track(:station :removed, hl[:tom - 190m, :tom - 50m] >> 3dt); + track(:station, + hl[:tom - 331m, :tom - 330m] >> 1dt + -- hl[:tom - 120m, :tom - 50m] >> 4dt + ); + + platform(:removed, + hl[:tom - 50m, :tom + 50m] >> 1dt + -- hl[:tom + 50m, :tom - 50m] << 1.7dt + ); + platform(:removed, + hl[:tom - 50m, :tom + 50m] + -- hl[:tom + 50m, :tom - 50m] >> 0.7dt + ); + + marker(:right :de.bbf, hl[:tom] >> 4dt); + marker(:right :de.exbf, hl[:tom] >> 4dt); + station(:top, hl[:tom - 0.2sw] >> 4dt >> 1.6sh, + "Tomatin", "??" + ); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:tom + 260m, :moy - 490m]); + } + + with link = "point.gb.Moy" { + track(:first:station :pax, hl[:moy - 490m, :moy + 280m]); + track(:station :pax, + hl[:moy - 441m, :moy - 440m] + .. hl[:moy - 340m, :moy + 130m] >> 1dt + .. hl[:moy + 230m, :moy + 231m] + ); + + platform(:removed, + hl[:moy - 60m, :moy + 60m] >> 1dt + -- hl[:moy + 60m, :moy - 60m] << 1.7dt + ); + platform(:removed, + hl[:moy - 60m, :moy + 60m] + -- hl[:moy + 60m, :moy - 60m] >> 0.7dt + ); + + marker(:right :de.bbf, hl[:moy] >> 1.5dt); + marker(:right :de.exbf, hl[:moy] >> 1.5dt); + station(:top, hl[:moy - 0.1sw] >> 1.5dt >> 1.6sh, "Moy", "??"); + } + + with link = "line.gb.HL" { + track(:first :pax, hl[:moy + 280m, :dav - 370m]); + line_badge(:pax, hl[:moy + 3.8km], "HL"); + } + + with link = "point.gb.Daviot" { + track(:station :removed, + hl[:dav - 210m, :dav - 170m] << 2.8dt + -- hl[:dav - 140m, :dav - 139m] << 1.8dt + ); + track(:station :removed, + hl[:dav - 270m, :dav - 60m] << 1.8dt + ); + track(:station :removed, + hl[:dav - 130m] << 1.8dt + -- hl[:dav - 60m] << 0.5dt + ); + track(:first:station :removed, + hl[:dav - 321m, :dav - 320m] + .. hl[:dav - 220m, :dav + 70m] << 0.5dt + ); + track(:first:station :pax, + hl[:dav - 370m, :dav - 320m] + .. hl[:dav - 220m, :dav + 70m] >> 0.5dt + ); + track(:station :removed, + hl[:dav - 150m] >> 0.5dt + -- hl[:dav - 90m] << 0.5dt + ); + + platform(:removed, + hl[:dav - 60m, :dav + 20m] >> 0.5dt + -- hl[:dav + 20m, :dav - 60m] << 1.2dt + ); + platform(:removed, + hl[:dav - 60m, :dav + 20m] << 0.5dt + -- hl[:dav + 20m, :dav - 60m] >> 1.2dt + ); + + marker(:left :de.bf :removed, hl[:dav] << 1.8dt); + station(:left :removed, hl[:dav - 0.2sw] << 1.8dt << 1.6sh, + "Daviot", "??" + ); + } + + with link = "line.gb.HL" { + track(:first :removed, hl[:dav + 70m, :ban.xn] << 0.5dt); + track(:first :pax, + hl[:dav + 70m, :ban.xs] >> 0.5dt + .. hl[:ban.xn, :cul - 450m] << 0.5dt + ); + track(:first :removed, hl[:ban.xs, :cul - 450m] >> 0.5dt); + } + + with link = "point.gb.Culloden-Moor" { + track(:first:station :pax, hl[:cul - 450m, :cul + 125m] << 0.5dt); + + track(:first:station :pax, + hl[:cul - 171m, :cul - 170m] << 0.5dt + -- hl[:cul - 30m, :cul + 125m] >> 0.5dt + ); + + track(:station, + hl[:cul - 400m, :cul - 270m] >> 0.5dt + .. hl[:cul - 30m, :cul] >> 1.5dt + -- hl[:cul + 50m, :cul + 51m] >> 0.5dt + ); + track(:station, + hl[:cul - 340m] >> 0.5dt + -- hl[:cul - 270m] << 0.5dt + ); + + track(:station, + hl[:cul - 40m] >> 1.5dt + -- hl[:cul + 20m] >> 2.5dt + ); + + marker(:right :de.bbf, hl[:cul] >> 2.5dt); + marker(:right :de.exbf, hl[:cul] >> 2.5dt); + label(hl[:cul + 0.15sw] >> 3.5dt >> 1.4sh, + vbox(:left:middle, + span(:medium :removed :italic, "Culloden Moor"), + vbox(:center:top, + span(:medium, "Culloden"), + span(:xsmall, "111 30") + ) + ) + ); + } + + with link = "line.gb.HL" { + track(:first :double :pax, hl[:cul + 125m, :cra - 150m]); + line_badge(:pax, hl[:cra - 1400m], "HL"); + } + + with link = "point.gb.Cradlehall" { + with layer = 2 { + track(:first:station :double :pax, hl[:cra - 150m, :cra + 150m]); + track(:station, + hl[:cra - 100m] << 0.5dt + -- hl[:cra - 15m] >> 0.5dt + ); + track(:station, + hl[:cra + 15m] >> 0.5dt + -- hl[:cra + 100m] << 0.5dt + ); + marker(:right :de.uest, hl[:cra] >> 0.5dt); + } + with layer = 1 marker(:right :de.uest.casing, hl[:cra] >> 0.5dt); + station(:right, hl[:cra] + (1.3sw, -0.2sw), + "Cradlehall", "116 44" + ); + } + + with link = "line.gb.HL" { + with layer = 2 track(:first :double :pax, hl[:cra + 150m, :inv.ap]); + with layer = 1 casing(:first :double :pax, + hl[:cra + 160m, :inv.ap - 20m] + ); + } + + with link = "point.gb.Millburn-Jn" { + marker(:left :statdt, hl[:mil] << 0.5dt); + marker(:left :de.abzw, hl[:mil] << 1.5dt); + + station(:bottom, hl[:mil] << 1.5dt << 1.2sh + (1.5sw, 0dt), + span(:bold, "Millburn Jn"), + hbox(:center:top, + vbox(:right:top, "HL: ", "AI: "), + vbox(:right:top, "117 ", "143 "), + vbox(:left:top, "37", "39") + ) + ); + } + + with link = "point.gb.Welshs-Bridge" { + marker(:right :de.abzw, hl[:wel] >> 0.5dt); + label(hl[:wel] + (-1.5sw, -1.4sh), + vbox(:left:bottom, + span(:medium, "Welsh's Bridge Jn"), + hbox(:center:middle :xsmall, + vbox(:right:top, " RSW: ", "HL: "), + vbox(:right:top, "117 56", "117 56") + ) + ) + ); + } + + with link = "point.gb.Rose-Street-Jn" { + let iw = path("d4.gb.wck"); + marker(:right :de.abzw, iw[:ros + 3dt]); + guide(:open, + iw[:ros + 3dt] >> 1.2sw -- iw[:ros + 3dt] + (0.2km, -1.0km) + ); + label(iw[:ros + 3dt] + (0dt, -1.05km), + vbox(:left:bottom, + span(:medium, "Rose Street Jn"), + hbox(:center:middle :xsmall, + vbox(:right:top, " RSW: ", "WCK: "), + vbox(:right:top, "118 ", "0 "), + vbox(:left:top, "56", "01") + ) + ) + ); + } + + with link = "point.gb.Inverness" { + let wk = path("d4.gb.wck"); + let ai = path("d4.gb.ai"); + + # Down North + track(:first:station :pax, + wk[:inv.aw - 49m, :inv.aw - 50m] + .. wk[:inv.aw - 130m, :ros + 3dt] >> 1dt + .. wk[:inv.yw, :inv.yw - 0.1dl] >> 5.5dt + ); + + # Platform 6 + track(:first:station :pax, + wk[:ros + 3.1dt, :ros + 3dt] + .. wk[:inv.yw, :inv] >> 4.5dt + ); + + + # Up North + track(:first:station :pax, + wk[:inv.aw, :ros + 3dt] + .. wk[:inv.yw, :inv] >> 3.5dt + ); + track(:station, + wk[:ros + 3dt] + -- wk[:ros + 3dt + 60m] << 1dt + ); + + # Ross-shire sdg + track(:station, + hl[:inv - 221m, :inv - 220m] >> 1.5dt + .. hl[:inv - 160m, :inv] >> 2.5dt + ); + track(:station, + hl[:inv - 161m, :inv - 160m] >> 2.5dt + .. hl[:inv - 80m, :inv.yw] >> 3.5dt + ); + + # Platform 4 + track(:station :pax, + hl[:wel + 109m, :wel + 110m] >> 0.5dt + .. hl[:inv - 220m, :inv] >> 1.5dt + ); + + # Up Line + track(:first:station :pax, hl[:inv.ap, :inv] >> 0.5dt); + + # Down Line + track(:first:station :pax, hl[:inv.ap, :inv] << 0.5dt); + track(:station, + hl[:wel - 100m] << 0.5dt + -- hl[:wel - 30m] << 1.5dt + ); + + # East Line + track(:first:station :pax, + ai[:inv.af, :inv.af + 0.1dl] << 1.5dt + .. hl[:mil.y, :mil - 100m] << 1.5dt + -- hl[:mil + 30m, :mil + 31m] << 0.5dt + ); + track(:first:station :removed, + ai[:inv.af, :inv.af + 0.1dl] << 2.5dt + .. hl[:mil.y, :mil - 230m] << 2.5dt + -- hl[:mil - 100m, :mil - 99m] << 1.5dt + ); + + # Platform 1 + track(:station :pax, + hl[:wel + 59m, :wel + 60m] << 0.5dt + .. hl[:wel + 180m, :inv] << 1.5dt + ); + + # Sdg + track(:station, + hl[:wel - 220m, :wel - 30m] << 1.5dt + .. hl[:wel + 180m, :inv - 75m] << 2.5dt + ); + + + # Platform 1/2 + platform(:pax, + hl[:wel + 180m, :inv] << 0.5dt + -- hl[:inv, :wel + 180m] >> 1.5dt + ); + + # Platform 3/4 + platform(:pax, + hl[:inv - 180m, :inv] >> 0.5dt + -- hl[:inv, :inv - 180m] << 1.5dt + ); + + # Platform 5/6 + platform(:pax, + hl[:inv.yw, :inv] >> 3.5dt + -- hl[:inv, :inv.yw] << 4.5dt + ); + + marker(:top :de.bf :pax, hl[:inv] >> 2dt); + station(:left :pax, hl[:inv] + (-0.5sw, 1.9sh), + span(:large :bold, "Inverness"), + hbox(:center:top, + vbox(:right:top, "WCK: ", "HL: "), + vbox(:right:top, "0 ", "118 "), + vbox(:left:top, "02", "03") + ) + ); + } +} + diff --git a/rules/gb/a/d4/i/ign.map b/rules/gb/a/d4/i/ign.map new file mode 100644 index 00000000..10820b96 --- /dev/null +++ b/rules/gb/a/d4/i/ign.map @@ -0,0 +1,15 @@ +# GB IGN. Invergordon Harbour Branch +# +let ih = path("d4.gb.ign"); + +with detail = [4, 5] { + with link = "line.gb.IGN" { + track(:station :removed, + ih[:ing.a + 159m, :ing.a + 160m] >> 1dt + .. ih[:a, :f] + ); + + line_label(:right:w :removed, ih[:f - 150m], "IGN"); + } +} + diff --git a/rules/gb/a/d4/i/imb.map b/rules/gb/a/d4/i/imb.map new file mode 100644 index 00000000..9752cd9d --- /dev/null +++ b/rules/gb/a/d4/i/imb.map @@ -0,0 +1,17 @@ +# GB IMB. Inverness - Muirtown Canal Basin +# +let im = path("d4.gb.imb"); + +with detail = [4, 5] { + with link = "line.gb.IMB" { + track(:first :removed, im[:can + 0.5sw, :f]); + line_label(:right:ne :removed, im[:can + 0.7km], "IMB"); + } + + with link = "point.gb.Muirtown-Canal-Basin" { + slabel(:left :removed, im[:f] + (2.5sw, 0.5dt), + hbox(:medium :right:top, "Muirtown Canal Basin") + ); + } +} + diff --git a/rules/gb/a/d4/k/kyl.map b/rules/gb/a/d4/k/kyl.map new file mode 100644 index 00000000..7dcda3a6 --- /dev/null +++ b/rules/gb/a/d4/k/kyl.map @@ -0,0 +1,403 @@ +# GB KYL. Dingwall - Kyle of Lochalsh +# +let dk = path("d4.gb.kyl"); + +with detail = [4, 5] { + # point.gb.Dingwall-Jn gb.WCK + + with link = "line.gb.KYL" { + track(:first :pax, dk[:din.yk + 150m, :fod - 1sw]); + line_badge(:pax, dk[:din.yk + 1.6km], "KYL"); + } + + with link = "point.gb.Fodderty-Jn" { + track(:first:station :pax, dk[:fod - 1sw, :fod + 1sw]); + track(:first:station :removed, path("d2.gb.dfs")[:fod, :fod + 1sw]); + marker(:left :de.bk, dk[:fod]); + marker(:left :de.abzw :removed :removed, dk[:fod]); + station(:bottom, dk[:fod] + (0.3sw, 1.2sh), + vbox(:center:top, + span(:removed :italic, "Fodderty Jn."), "Foderty" + ), + hbox(:center:top, + vbox(:right:top, "KYL: ", span(:removed, "DFS: ")), + vbox(:right:top, "2 ", span(:removed, "2 ")), + vbox(:left:top, "31", span(:removed, "31")) + ) + ); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:fod + 1sw, :ach - 220m]); + line_badge(:pax, dk[:ach - 1.4km], "KYL"); + } + + with link = "point.gb.Achterneed" { + track(:first:station :pax, dk[:ach - 220m, :ach + 220m]); + track(:station :removed, + dk[:ach - 171m, :ach - 170m] + .. dk[:ach - 100m, :ach + 170m] >> 1dt + ); + track(:station :removed, + dk[:ach + 80m] >> 1dt + -- dk[:ach + 170m] + ); + platform(:removed, + dk[:ach - 20m, :ach + 60m] + -- dk[:ach + 60m, :ach - 20m] >> 0.7dt + ); + platform(:removed, + dk[:ach - 20m, :ach + 60m] >> 1.0dt + -- dk[:ach + 60m, :ach - 20m] << 1.7dt + ); + marker(:left :de.bf :removed, dk[:ach] << 0.5dt); + station(:top :removed, dk[:ach] >> 2.0dt, + vbox(:center:bottom, + span(:gone :italic, "Strathpeffer"), + "Achterneed" + ), + "??" + ); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:ach + 220m, :gar - 330m]); + } + + with link = "point.gb.Garve" { + track(:station, + dk[:gar - 201m, :gar - 200m] << 1dt + .. dk[:gar - 90m, :gar - 60m] << 2.2dt + ); + with layer = -1 track(:station :removed, + dk[:gar - 60m, :gar - 30m] << 2.2dt + .. dk[:gar + 30m, :gar + 31m] << 1dt + ); + + track(:first:station :pax, + dk[:gar - 281m, :gar - 280m] + .. dk[:gar - 200m, :gar + 30m] << 1dt + .. dk[:gar + 90m, :gar + 91m] + ); + + track(:first:station :pax, dk[:gar - 330m, :gar + 140m]); + + platform(:pax, + dk[:gar - 80m, :gar + 30m] + -- dk[:gar + 30m, :gar - 80m] << 0.7dt + ); + platform(:pax, + dk[:gar - 80m, :gar + 30m] << 1.0dt + -- dk[:gar + 30m, :gar - 80m] >> 1.7dt + ); + + marker(:right :de.bf :pax, dk[:gar] >> 0.5dt); + station(:right :pax, dk[:gar - 0.4sw] >> 0.5dt >> 1.3sh, + "Garve", "??" + ); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:gar + 140m, :loc - 80m]); + line_badge(:pax, dk[:gar + 3.9km], "KYL"); + } + + with link = "point.gb.Lochluichart" { + track(:first:station :pax, dk[:loc - 80m, :loc + 100m]); + platform(:pax, + dk[:loc - 30m, :loc + 50m] + -- dk[:loc + 50m, :loc - 30m] << 0.7dt + ); + marker(:right :de.hp :pax, dk[:loc] >> 0.5dt); + station(:top :pax, dk[:loc] >> 0.5dt >> 1.2sh, + hbox(:center:bottom, + vbox(:center:bottom, + span(:removed :italic, "Lochluichart High"), + "Lochluichart" + ), + " " + ), + "17 20" + ); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:loc + 100m, :aca - 280m]); + } + + with link = "point.gb.Achanalt" { + track(:first:station :pax, + dk[:aca - 280m, :aca - 230m] + .. dk[:aca - 130m, :aca + 30m] >> 1dt + .. dk[:aca + 130m, :aca + 180m] + ); + track(:first:station :removed, dk[:aca - 230m, :aca + 130m]); + platform(:pax, + dk[:aca - 50m, :aca + 20m] >> 1dt + -- dk[:aca + 20m, :aca - 50m] << 1.7dt + ); + marker(:right :de.hp :pax, dk[:aca] >> 1.5dt); + marker(:right :de.exbf :pax, dk[:aca] >> 1.5dt); + station(:top :pax, dk[:aca] >> 2.5dt >> 1.2sh, + "Achanalt", "21 34" + ); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:aca + 180m, :acn - 400m]); + line_badge(:pax, dk[:acn - 3.7km], "KYL"); + } + + with link = "point.gb.Achnasheen" { + track(:first:station :pax, + dk[:acn - 351m, :acn - 350m] + .. dk[:acn - 250m, :acn + 20m] << 1dt + .. dk[:acn + 100m, :acn + 101m] + ); + + track(:first:station :pax, dk[:acn - 400m, :acn + 150m]); + + track(:station, + dk[:acn - 281m, :acn - 280m] + .. dk[:acn - 180m, :acn - 50m] >> 1dt + ); + track(:station :removed, + dk[:acn - 150m] >> 1dt + -- dk[:acn - 50m] + ); + + platform(:pax, + dk[:acn - 40m, :acn + 70m] + -- dk[:acn + 70m, :acn - 40m] << 0.7dt + ); + platform(:pax, + dk[:acn - 85m, :acn + 20m] << 1.0dt + -- dk[:acn + 20m, :acn - 85m] >> 1.7dt + ); + + marker(:right :de.bf :pax, dk[:acn] >> 1.0dt); + station(:left :pax, dk[:acn + 0.3sw] >> 1.0dt >> 1.2sh, + "Achnasheen", "27 72" + ); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:acn + 150m, :gle - 1sw]); + } + + with link = "point.gb.Glencarron" { + track(:first:station :pax, dk[:gle - 1sw, :gle + 1sw]); + marker(:left :de.hp :removed, dk[:gle]); + station(:right :removed, dk[:gle] + (0.1sw, 2.0sw), + "Glencarron", "36 19" + ); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:gle + 1sw, :acs - 110m]); + } + + with link = "point.gb.Achnashellach" { + track(:first:station :pax, dk[:acs - 110m, :acs + 60m]); + platform(:pax, + dk[:acs - 60m, :acs + 10m] + -- dk[:acs + 10m, :acs - 60m] >> 0.7dt + ); + marker(:left :de.hp :pax, dk[:acs] << 0.5dt); + station(:top :pax, dk[:acs] >> 1.5dt, + "Achnashellach ", "40 34" + ); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:acs + 60m, :sta - 320m]); + line_badge(:pax, dk[:acs + 3.8km], "KYL"); + } + + with link = "point.gb.Strathcarron" { + track(:first:station :pax, + dk[:sta - 271m, :sta - 270m] + .. dk[:sta - 170m, :sta + 70m] << 1dt + .. dk[:sta + 150m, :sta + 151m] + ); + track(:first:station :pax, dk[:sta - 320m, :sta + 200m]); + track(:station, + dk[:sta - 191m, :sta - 190m] + .. dk[:sta - 100m, :sta - 70m] >> 1dt + ); + + platform(:pax, + dk[:sta - 70m, :sta + 20m] << 1dt + -- dk[:sta + 20m, :sta - 70m] >> 1.7dt + ); + platform(:pax, + dk[:sta - 60m, :sta + 30m] + -- dk[:sta + 30m, :sta - 60m] << 0.7dt + ); + + marker(:right :de.bf :pax, dk[:sta] >> 1.0dt); + station(:left :pax, dk[:sta + 0.4sw] >> 1.0dt >> 1.3sh, + "Strathcarron", "45 74" + ); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:sta + 200m, :att - 180m]); + } + + with link = "point.gb.Attadale" { + track(:station :removed, dk[:att - 130m, :att - 30m] << 1dt); + track(:first:station :pax, dk[:att - 180m, :att + 60m]); + track(:station :removed, + dk[:att - 130m] + -- dk[:att - 60m] << 1dt + ); + + platform(:pax, + dk[:att - 20m, :att + 10m] + -- dk[:att + 10m, :att - 20m] >> 0.7dt + ); + + marker(:left :de.hp :pax, dk[:att] << 1dt); + marker(:left :de.exbf :pax, dk[:att] << 1dt); + station(:right :pax, dk[:att + 0.3sw] << 2dt << 1.4sh, + "Attadale", "48 22" + ); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:att + 60m, :sto - 300m]); + } + + with link = "point.gb.Stromeferry" { + track(:station :removed, + dk[:sto - 320m, :sto + 65m] << 1dt + .. dk[:sto + 200m, :sto + 201m] + ); + + track(:first:station :pax, dk[:sto - 300m, :sto + 250m]); + track(:station :removed, + dk[:sto - 250m] + -- dk[:sto - 200m] << 1dt + ); + + track(:station :removed, + dk[:sto - 181m, :sto - 180m] + .. dk[:sto - 125m, :sto - 120m] >> 1dt + .. dk[:sto - 35m] >> 3dt -- dk[:sto - 35m] >> 3.1dt + ); + + platform(:removed, + dk[:sto - 20m, :sto + 65m] << 1.0dt + -- dk[:sto + 65m, :sto - 20m] >> 1.7dt + ); + platform(:pax, + dk[:sto - 20m, :sto + 65m] + -- dk[:sto + 65m, :sto - 20m] << 0.7dt + ); + + marker(:right :de.hp :pax, dk[:sto + 0.5sw] >> 0.5dt); + marker(:right :de.exbf :pax, dk[:sto + 0.5sw] >> 0.5dt); + station(:top :pax, dk[:sto + 0.5sw] >> 1.5dt >> 1.2sh, + "Stromeferry", "53 15" + ); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:sto + 250m, :dun - 75m]); + line_label(:right:e :pax, dk[:sto + 2.3km], "KYL"); + } + + with link = "point.gb.Duncraig" { + track(:first:station :pax, dk[:dun - 75m, :dun + 75m]); + platform(:pax, + dk[:dun - 25m, :dun + 25m] + -- dk[:dun + 25m, :dun - 25m] >> 0.7dt + ); + marker(:left :de.hp :pax, dk[:dun] << 0.5dt); + station(:right :pax, dk[:dun + 0.15sw] << 0.5dt << 1.5sh, + "Duncraig", "57 09" + ); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:dun + 75m, :plo - 110m]); + } + + with link = "point.gb.Plockton" { + track(:first:station :pax, dk[:plo - 110m, :plo + 250m]); + track(:station :removed, dk[:plo + 30m, :plo + 150m] >> 1dt); + track(:station :removed, + dk[:plo + 30m] -- dk[:plo + 90m] >> 1dt + -- dk[:plo + 120m, :plo + 140m] >> 2dt + ); + + platform(:pax, + dk[:plo - 60m, :plo + 20m] + -- dk[:plo + 20m, :plo - 60m] << 0.7dt + ); + marker(:right :de.hp :pax, dk[:plo] >> 1.0dt); + marker(:right :de.exbf :pax, dk[:plo] >> 1.0dt); + station(:left :pax, dk[:plo + 0.2sw] >> 2.0dt >> 1.2sh, + "Plockton", "58 22" + ); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:plo + 110m, :dui - 110m]); + } + + with link = "point.gb.Duirinish" { + track(:first:station :pax, dk[:dui - 110m, :dui + 90m]); + platform(:pax, + dk[:dui - 60m, :dui + 40m] + -- dk[:dui + 40m, :dui - 60m] >> 0.7dt + ); + marker(:left :de.hp :pax, dk[:dui] << 0.5dt); + station(:right :pax, dk[:dui + 0.3sw] << 0.5dt << 1.9sh, + "Duirinish", "59 58" + ); + } + + with link = "line.gb.KYL" { + track(:first :pax, dk[:dui + 90m, :kyl.a]); + line_label(:right:e :pax, dk[:dui + 2.7km], "KYL"); + } + + with link = "point.gb.Kyle-of-Lochalsh" { + track(:station, + dk[:kyl.a + 150m] << 0.8dt -- dk[:kyl.a + 155m] << 0.9dt + .. dk[:kyl - 150m, :kyl.f] << 3dt + ); + track(:station, + dk[:kyl.a + 49m, :kyl.a + 50m] + .. dk[:kyl.a + 150m] << 0.8dt -- dk[:kyl.a + 155m] << 0.9dt + .. dk[:kyl - 150m, :kyl.f] << 2dt + ); + track(:first:station :pax, dk[:kyl.a, :kyl.f]); + track(:station, + dk[:kyl.a + 129m, :kyl.a + 130m] + .. dk[:kyl.a + 180m, :kyl - 60m] >> 1dt + .. dk[:kyl, :kyl + 0.1dl] + ); + track(:station, + dk[:kyl - 231m, :kyl - 230m] >> 1dt + .. dk[:kyl - 150m, :kyl - 100m] >> 2dt + ); + + platform(:pax, + dk[:kyl - 150m, :kyl + 30m] + -- dk[:kyl + 30m, :kyl - 150m] >> 0.7dt + ); + platform(:pax, + dk[:kyl - 150m, :kyl + 30m] << 2dt + -- dk[:kyl + 30m, :kyl - 150m] >> 1.3dt + ); + + marker(:left :de.inbf :pax, dk[:kyl] << 3.5dt); + station(:left :pax, dk[:kyl + 0.2sw] >> 4dt, + span(:bold, "Kyle of Lochalsh"), "KYL: 63 64" + ); + } +} + diff --git a/rules/gb/a/d4/l/llr.map b/rules/gb/a/d4/l/llr.map new file mode 100644 index 00000000..351eb85b --- /dev/null +++ b/rules/gb/a/d4/l/llr.map @@ -0,0 +1,178 @@ +# GB LLR. Wick - Lybster +# +let wl = path("d4.gb.llr"); + +with detail = [4, 5] { + # point.gb.Wick gb.LLR + + with link = "line.gb.LLR" { + track(:third :removed, wl[:wic.yl + 150m, :thr - 90m]); + line_badge(:removed, wl[:wic.yl + 1.3km], "LLR"); + } + + with link = "point.gb.Thrumster" { + track(:third:station :removed, wl[:thr - 90m, :thr + 200m]); + + track(:station :removed, wl[:thr - 10m, :thr + 150m] >> 1dt); + track(:station :removed, + wl[:thr + 35m] >> 1dt + -- wl[:thr + 80m] + ); + + track(:station :removed, + wl[:thr + 64m, :thr + 65m] >> 1dt + .. wl[:thr + 100m, :thr + 120m] >> 2dt + ); + + platform(:removed, + wl[:thr - 40m, :thr + 40m] + -- wl[:thr + 40m, :thr - 40m] >> 0.7dt + ); + + marker(:left :de.bf :removed, wl[:thr] << 0.5dt); + station(:right :removed, wl[:thr + 0.3sw] << 0.5dt << 1.7sh, + "Thrumster", "??" + ); + } + + with link = "line.gb.LLR" { + track(:third :removed, wl[:thr + 200m, :wel - 1sw]); + line_badge(:removed, wl[:thr + 1.5km], "LLR"); + } + + with link = "point.gb.Welshs-Crossing" { + track(:third:station :removed, wl[:wel - 1sw, :wel + 1sw]); + marker(:left :de.hp :removed, wl[:wel]); + station(:right :removed, wl[:wel + 0.2sw] << 1.6sh, + "Welsh’s Crossing Halt", "??" + ); + } + + with link = "line.gb.LLR" { + track(:third :removed, wl[:wel + 1sw, :ulb - 100m]); + } + + with link = "point.gb.Ulbster" { + track(:station :removed, + wl[:ulb + 15m, :ulb + 70m] << 1.2dt + .. wl[:ulb + 120m, :ulb + 140m] << 1dt + ); + track(:station :removed, + wl[:ulb + 69m, :ulb + 70m] << 1.2dt + .. wl[:ulb + 120m, :ulb + 121m] + ); + track(:third:station :removed, wl[:ulb - 100m, :ulb + 200m]); + platform(:removed, + wl[:ulb - 20m, :ulb + 55m] + -- wl[:ulb + 55m, :ulb - 20m] >> 0.7dt + ); + marker(:left :de.bf :removed, wl[:ulb] << 1.2dt); + station(:right :removed, wl[:ulb + 0.05sw] << 1.2dt << 1.8sh, + "Ulbster", "??" + ); + } + + with link = "line.gb.LLR" { + track(:third :removed, wl[:ulb + 200m, :mid - 200m]); + } + + with link = "point.gb.Mid-Clyth" { + track(:station :removed, + wl[:mid - 150m, :mid - 85m] << 1dt + .. wl[:mid - 30m, :mid - 29m] + ); + track(:third:station :removed, wl[:mid - 200m, :mid + 100m]); + platform(:removed, + wl[:mid - 30m, :mid + 35m] + -- wl[:mid + 35m, :mid - 30m] >> 0.7dt + ); + marker(:left :de.bf :removed, wl[:mid] << 1dt); + station(:right :removed, wl[:mid + 0.25sw] << 2.0sh, + "Mid Clyth", "??" + ); + } + + with link = "line.gb.LLR" { + track(:third :removed, wl[:mid + 100m, :ros - 1sw]); + } + + with link = "point.gb.Roster-Road" { + track(:third:station :removed, wl[:ros - 1sw, :ros + 1sw]); + marker(:left :de.hp :removed, wl[:ros]); + station(:right :removed, wl[:ros + 0.2sw] << 1.8sh, + "Roster Road Halt", "??" + ); + } + + with link = "line.gb.LLR" { + track(:third :removed, wl[:ros + 1sw, :occ - 230m]); + line_badge(:removed, wl[:occ - 1.2km], "LLR"); + } + + with link = "point.gb.Occumster" { + track(:station :removed, + wl[:occ - 180m, :occ - 95m] << 1.0dt + .. wl[:occ - 40m, :occ - 10m] << 1.2dt + ); + track(:station :removed, + wl[:occ - 96m, :occ - 95m] << 1.0dt + .. wl[:occ - 35m, :occ - 34m] + ); + track(:third:station :removed, wl[:occ - 230m, :occ + 100m]); + platform(:removed, + wl[:occ - 35m, :occ + 45m] + -- wl[:occ + 45m, :occ - 35m] >> 0.7dt + ); + marker(:left :de.bf :removed, wl[:occ] << 1.2dt); + station(:bottom :removed, wl[:occ] << 1.2dt << 1.3sh, + "Occumster", "??" + ); + } + + with link = "line.gb.LLR" { + track(:third :removed, wl[:occ + 100m, :par - 1sw]); + } + + with link = "point.gb.Parkside" { + track(:third:station :removed, wl[:par - 1sw, :par + 1sw]); + marker(:right :de.hp :removed, wl[:par]); + station(:left :removed, wl[:par + 0.3sw] >> 1.3sh, + "Parkside Halt", "??" + ); + } + + with link = "line.gb.LLR" { + track(:third :removed, wl[:par + 1sw, :lyb - 200m]); + } + + with link = "point.gb.Lybster" { + track(:station :removed, + wl[:lyb - 150m] -- wl[:lyb - 50m] << 2dt + -- wl[:lyb - 25m, :lyb + 50m] << 3dt + ); + track(:station :removed, + wl[:lyb - 151m, :lyb - 150m] + -- wl[:lyb - 50m, :lyb + 50m] << 2dt + ); + track(:station :removed, + wl[:lyb - 75m, :lyb + 50m] << 1dt + ); + + track(:third:station :removed, wl[:lyb - 200m, :lyb + 50m]); + + platform(:removed, + wl[:lyb - 75m, :lyb + 50m] + -- wl[:lyb + 50m, :lyb - 75m] << 0.7dt + ); + platform(:removed, + wl[:lyb - 50m, :lyb + 50m] << 1.0dt + -- wl[:lyb + 50m, :lyb - 30m] >> 2.0dt + ); + + marker(:right :de.bf :removed, wl[:lyb] >> 0.5dt); + station(:left :removed, wl[:lyb + 50m] + (-2.5dt, 0dt), + span(:bold, "Lybster"), "LLR: ??" + ); + } +} + diff --git a/rules/gb/a/d4/m/mof.map b/rules/gb/a/d4/m/mof.map new file mode 100644 index 00000000..86cdcd0c --- /dev/null +++ b/rules/gb/a/d4/m/mof.map @@ -0,0 +1,149 @@ +# GB MOF. Muir of Ord - Fortrose +# +let mf = path("d4.gb.mof"); + +with detail = [4, 5] { + # point.gb.Muir-of-Ord: gb.WCK + + with link = "line.gb.MOF" { + track(:first :removed, + mf[:mui.yf - 0.1dl, :mui.yf] >> 2dt + .. mf[:mui.yff, :red - 120m] + ); + line_badge(:removed, mf[:mui.yff + 1.3km], "MOF"); + } + + with link = "point.gb.Redcastle" { + track(:station :removed, + mf[:red + 99m, :red + 100m] + -- mf[:red + 200m, :red + 225m] << 2dt + ); + track(:station :removed, mf[:red + 90m, :red + 290m] << 1dt); + track(:first:station :removed, mf[:red - 120m, :red + 340m]); + + platform(:removed, + mf[:red - 65m, :red + 65m] + -- mf[:red + 65m, :red - 65m] >> 0.7dt + ); + marker(:left :de.bf :removed, mf[:red] << 1.0dt); + station(:top :removed, mf[:red - 0.1sh] << 1.0dt << 1.2sh, + "Redcastle", "??" + ); + } + + with link = "line.gb.MOF" { + track(:first :removed, mf[:red + 340m, :all - 380m]); + } + + with link = "point.gb.Allangrange" { + track(:station :removed, + mf[:all - 251m, :all - 250m] << 1dt + -- mf[:all - 130m] << 1.8dt -- mf[:all - 65m] << 2dt + ); + track(:station :removed, mf[:all - 330m, :all - 110m] << 1dt); + track(:first:station :removed, mf[:all - 380m, :all + 100m]); + track(:station :removed, + mf[:all - 330m] + -- mf[:all - 265m] << 1dt + ); + + platform(:removed, + mf[:all - 100m, :all + 50m] + -- mf[:all + 50m, :all - 100m] >> 0.7dt + ); + + marker(:left :de.bf :removed, mf[:all] << 2dt); + station(:top :removed, mf[:all] << 2dt << 1.1sh, + "Allangrange", "??" + ); + } + + with link = "line.gb.MOF" { + track(:first :removed, mf[:all + 100m, :mun - 80m]); + line_badge(:removed, mf[:all + 2.2km], "MOF"); + } + + with link = "point.gb.Munlochy" { + track(:first:station :removed, mf[:mun - 80m, :mun + 360m]); + track(:station :removed, mf[:mun + 110m, :mun + 310m] >> 1dt); + track(:station :removed, + mf[:mun + 120m] + -- mf[:mun + 250m] >> 2dt + ); + + platform(:removed, + mf[:mun - 30m, :mun + 100m] + -- mf[:mun + 100m, :mun - 30m] << 0.7dt + ); + marker(:right :de.bf :removed, mf[:mun] >> 0.7dt); + station(:right :removed, mf[:mun - 0.3sw] >> 0.7dt >> 1.85sh, + "Munlochy", "??" + ); + } + + with link = "line.gb.MOF" { + track(:first :removed, mf[:mun + 360m, :avo - 300m]); + } + + with link = "point.gb.Avoch" { + track(:first:station :removed, mf[:avo - 300m, :avo + 90m]); + track(:station :removed, + mf[:avo - 190m, :avo - 25m] >> 1.5dt + ); + track(:station :removed, + mf[:avo - 251m, :avo - 250m] + -- mf[:avo - 150m, :avo - 25m] >> 2.5dt + ); + + platform(:removed, + mf[:avo - 100m, :avo + 40m] + -- mf[:avo + 40m, :avo - 100m] << 0.7dt + ); + marker(:right :de.bf :removed, mf[:avo] >> 2.5dt); + station(:bottom :removed, mf[:avo] >> 2.5dt >> 1.2sh, + "Avoch", "??" + ); + } + + with link = "line.gb.MOF" { + track(:first :removed, mf[:avo + 90m, :for - 380m]); + line_badge(:removed, mf[:for - 1.5km], "MOF"); + } + + with link = "point.gb.Fortrose" { + track(:station :removed, + mf[:for - 171m, :for - 170m] << 1dt + -- mf[:for - 70m, :for] << 3dt + ); + track(:station :removed, + mf[:for - 120m, :for - 50m] << 2dt + ); + track(:station :removed, + mf[:for - 271m, :for - 270m] + -- mf[:for - 210m, :for + 70m] << 1dt + ); + track(:station :removed, + mf[:for] << 1dt + -- mf[:for + 40m] + ); + track(:first:station :removed, mf[:for - 380m, :for + 70m]); + track(:station :removed, + mf[:for - 270m, :for - 40m] >> 1.5dt + ); + track(:station :removed, + mf[:for - 331m, :for - 330m] + -- mf[:for - 230m, :for - 40m] >> 2.5dt + ); + + platform(:removed, + mf[:for - 150m, :for + 30m] + -- mf[:for + 30m, :for - 150m] << 0.7dt + ); + + marker(:right :de.bf :removed, mf[:for] >> 2.5dt); + station(:right :removed, mf[:for - 0.2sw] >> 2.7dt >> 1.85sh, + span(:bold, "Fortrose"), "MOF: ??" + ); + } +} + diff --git a/rules/gb/a/d4/r/rsw.map b/rules/gb/a/d4/r/rsw.map new file mode 100644 index 00000000..4bdf980b --- /dev/null +++ b/rules/gb/a/d4/r/rsw.map @@ -0,0 +1,12 @@ +# GB RSW. Welsh’s Bridge Jn - Rose Street Jn +# +let wr = path("d4.gb.rsw"); + +with detail = [4, 5] { + track(:first, + wr[:wel - 0.1dl, :wel] >> 0.5dt + .. wr[:wel + 200m, :wel + 201m] >> 1.2dt + .. wr[:ros + 2dt, :ros + 3dt] + ); +} + diff --git a/rules/gb/a/d4/w/wck.map b/rules/gb/a/d4/w/wck.map index d57d58b8..2383d5b6 100644 --- a/rules/gb/a/d4/w/wck.map +++ b/rules/gb/a/d4/w/wck.map @@ -7,8 +7,27 @@ with detail = [4, 5] { # point.gb.Rose-Street-Jn gb.HL with link = "line.gb.WCK" { - track(:first :pax, iw[:inv.aw, :cla - 1sw]); - line_badge(:pax, iw[:inv.aw + 0.8km], "WCK"); + track(:first :pax, iw[:inv.aw, :can - 0.5sw]); + line_badge(:pax, iw[:inv.aw + 0.6km], "WCK"); + } + + with link = "point.gb.Canal-Branch-Jn" { + track(:first:station :pax, iw[:can - 0.5sw, :can + 0.5sw]); + track(:first:station :removed, + path("d4.gb.imb")[:can, :can + 0.5sw] + ); + marker(:right :de.abzw :removed, iw[:can]); + station(:top :removed, iw[:can] >> 1.2sh, + "Canal Branch Jn.", + hbox(:center:top, + vbox(:right:top, "WCK: ", "IMB: "), + vbox(:right:top, "??", "??") + ) + ); + } + + with link = "line.gb.WCK" { + track(:first :pax, iw[:can + 0.5sw, :cla - 1sw]); } with link = "point.gb.Clachnaharry" { @@ -21,7 +40,7 @@ with detail = [4, 5] { .. iw[:cla.xxf, :cla.xxf + 0.1dl] >> 0.5dt ); marker(:left :de.bf :gone, iw[:cla]); - station(:top :gone, iw[:cla] >> 1.5dt, + station(:left :gone, iw[:cla - 0.4sw] >> 1.5dt, "Clachnaharry", "??" ); } @@ -162,7 +181,10 @@ with detail = [4, 5] { .. iw[:mui - 180m, :mui - 0.7sw] << 2dt ); track(:station :removed, - iw[:mui - 400m, :mui.yf] >> 2dt + iw[:mui - 400m, :mui - 100m] >> 2dt + ); + track(:first:station :removed, + iw[:mui - 100m, :mui.yf] >> 2dt ); track(:station :removed, iw[:mui - 500m] @@ -180,7 +202,11 @@ with detail = [4, 5] { ); platform(:pax, iw[:mui - 100m, :mui + 50m] >> 1.0dt - -- iw[:mui + 50m, :mui - 100m] << 1.55dt + -- iw[:mui + 50m, :mui - 100m] << 1.5dt + ); + platform(:removed, + iw[:mui - 100m, :mui + 50m] >> 2.0dt + -- iw[:mui + 50m, :mui - 100m] << 1.5dt ); marker(:left :de.bf :pax, iw[:mui] << 1.0dt); @@ -229,7 +255,7 @@ with detail = [4, 5] { iw[:din - 130m] << 1dt -- iw[:din - 60m] ); - track(:first:station :pax, iw[:din.a, :din.fw]); + track(:first:station :pax, iw[:din.a, :din.yk - 40m]); track(:first:station :pax, iw[:din - 291m, :din - 290m] .. iw[:din - 200m, :din.yk - 150m] >> 1dt @@ -249,9 +275,29 @@ with detail = [4, 5] { station(:right :pax, iw[:din - 0.3sw] >> 3.0dt, span(:bold, "Dingwall"), hbox(:center:top, - vbox(:right:top, "KYL: ", "WCK: "), + vbox(:right:top, "KYL: ", "(WCK: "), vbox(:right:top, "18 ", "0 "), - vbox(:left:top, "58", "00") + vbox(:left:top, "58", "00)") + ) + ); + } + + with link = "point.gb.Dingwall-Jn" { + track(:first:station :pax, + path("d4.gb.kyl")[:din.yk, :din.yk + 150m] + ); + track(:first:station :pax, iw[:din.yk - 40m, :din.fw]); + marker(:right :de.abzw :pax, iw[:din.yk]); + label(:pax, iw[:din.yk - 0.55sw] >> 1.5sh, + hbox(:left:bottom, + vbox(:center:bottom, + hbox(:center:top :xsmall, + vbox(:right:top, "KYL: ", "WCK: "), + vbox(:right:top, "18 ", "0 "), + vbox(:left:top, "79", "20") + ), + span(:medium, "Dingwall Jn.") + ) ) ); } @@ -348,18 +394,12 @@ with detail = [4, 5] { } with link = "point.gb.Invergordon" { - let ing = path("d4.gb.wck.ing"); - track(:first:station :pax, iw[:ing.a, :ing.f]); track(:station :pax, iw[:ing.a + 49m, :ing.a + 50m] .. iw[:ing.a + 160m, :ing.f - 160m] >> 1dt .. iw[:ing.f - 50m, :ing.f - 49m] ); - track(:station :removed, - iw[:ing.a + 159m, :ing.a + 160m] >> 1dt - .. ing[:a, :f] - ); platform(:pax, iw[:ing - 50m, :ing + 140m] @@ -371,7 +411,7 @@ with detail = [4, 5] { ); with layer = 2 marker(:right :de.bf :pax, iw[:ing] >> 1.5dt); with layer = 1 marker(:right :de.bf.casing :pax, iw[:ing] >> 1.5dt); - station(:bottom :pax, iw[:ing] >> 1.5dt >> 1.4sh, + station(:left :pax, iw[:ing] >> 1.5dt >> 2.4sh + (0.5sw, 0dt), "Invergordon", "31 37" ); } @@ -813,8 +853,23 @@ with detail = [4, 5] { -- iw[:mou - 160m] << 1dt ); - marker(:right :de.inbf :removed, iw[:mou]); - station(:left :removed, iw[:mou + 0.3sw] >> 1.2sh + (-2sw, 0dt), + track(:third:station :removed, + iw[:mou - 260m, :mou] >> 1dt + .. path("d4.gb.dnb")[:mou.fd, :mou.fd + 0.1dl] + ); + track(:station :removed, + iw[:mou - 260m, :mou - 210m] >> 2dt + -- iw[:mou - 160m, :mou - 159m] >> 1dt + ); + track(:station :removed, + iw[:mou - 201m, :mou - 200m] + -- iw[:mou - 80m, :mou - 20m] >> 2dt + -- iw[:mou + 40m, :mou + 41m] >> 1dt + ); + + + marker(:right :de.bf :removed, iw[:mou - 0.2sw] >> 2dt); + station(:left :removed, iw[:mou + 0.3sw] >> 1.2sh + (-1.4sw, -1dt), span(:bold, "The Mound"), hbox(:center:top, vbox(:right:top, "WCK: ", "DNB: "), @@ -1318,6 +1373,7 @@ with detail = [4, 5] { with link = "line.gb.WCK" { track(:first :pax, iw[:bil + 190m, :wic - 440m]); + line_badge(:pax, iw[:wic - 2.0km], "WCK"); } with link = "point.gb.Wick" { @@ -1331,6 +1387,9 @@ with detail = [4, 5] { ); track(:first:station :pax, iw[:wic - 440m, :wic]); + track(:third:station :removed, + path("d4.gb.llr")[:wic.yl + 150m, :wic.yl] + ); track(:station :removed, iw[:wic - 410m, :wic - 310m] >> 1dt); track(:station,