Foreground stripes in the area of railway tracks



Small bitmaps (stripes which cover the whole width of a landscape drawing) are used to replace those parts of the landscape within the railway track area (the region between the track and the catenary), which lie between the viewer and the passing train but would be overlaid by the insertion of the train. Thus, some parts of the train are overlaid too, so that the train seems to be passing between the foreground and background of the landscape.

A separate stripe is needed for each track which passes through the landscape. It contains only those lanscape objects which are located between the viewer and the passing train.



The width of every bitmap stripe (without additional control columns) is equal to that of the corresponding landscape drawing. Its height depends on the highest location of the (real or fictitious) catenary and the lowest location of the rail track (the above illustration is only a demonstration).

The file names of bitmap stripes belonging to a certain landscape drawing have the same name body as the landscape. The names differ only in the file extension, which is ".BMP" for the landscape bitmap and ".BZ1", ".BZ2", ..., ".BZ9" for the stripes (in spite of differing filename extensions, they are still bitmap files).

Up to 9 tracks can be used in one landscape drawing, where a double-tracked line will be counted twice (different tracks may be overlapped). The numbers 1-9 within the file extensions must be used in sequential ascending order, beginning with "1". The stripe with the lowest extension ".BZ1" identifies the furthest back stripe, i.e. the stripe furthest from the program user. The stripe nearest to the user has the highest file extension.

Information located in righthand side control columns

Each bitmap stripe contains 5 additional columns at the right of the bitmap whose content is used to position the stripe correctly within the lanscape and to control the trains passing on this track. The last 4 columns are optically divided into sections 10 pixel high, alternately colored white or yellow, where the counting from top to bottom begins with 0 within each part. The statements in the following sections always relate to a back colored pixel at the specified position unless an explicit statement is given which differs from this rule.

Background color (0)

So that parts of the train which are not overlaid by landscape objects in the foreground can remain visible, the stripe's bitmap must have a background color which never occurs within objects of this stripe. This color is saved at the top position of the first (leftmost) control column.

Orientation of stripe bitmap (1)

The black pixel indicates a reversed orientation for the stripe's bitmap. This means, that trains travel along this stripe in the opposite direction to the standard direction of travel (tracks with serpentines change their orientation).

Double-tracked lines (2)

A black pixel at this location marks the line section as double-tracked. Such lines are considered by the program as two separate but totally overlapped single-track lines.

Permitted directions for passing trains (3), (4)

If the upper pixel is marked (3), a single-track line will be travelled from right to left (with normal orientation), on a double-tracked line trains run on the right-hand track. If the lower pixel is marked (4), a single-track line will be travelled from left to right (with normal orientation), on a double-tracked line trains run on the left-hand track.

At least one of these both pixels must be set. If both pixels are set, each track of a single-tracked or double-tracked line can be passed in both directions (on a single-tracked line only one train can pass at the same time).

Position of stripe within landscape (5)

Within the upper 10 positions each of the rightmost 4 control columns contains exactly one black pixel. The vertical positions of all 4 pixels (top position=0) specify a four-digit number which represents the vertical top boundary position of the considered stripe within the landscape drawing.

Assigning a section to a track line (6)

The relative position of a black pixel within the marked area with 10 possible positions specifies the assignment of the considered single track section to a specific track line. If the line is double-tracked, two pixels with consecutive positions have to be marked. The corresponding track line may be addressed by selecting this number in the program BAHNLAND. This allows the user to control a train by hand on this line.

Order of a single section within a complete track line (7)

If the selected section is part of a track line with more than one visible section, then the relative position of the black pixel within this block specifies its order within the set of sections which are assigned to the same track line. The sections of a single track line will be counted from right to left when regarding the complete track line.

Restriction of track line to specific train categories (8)

If, for example, the landsacpe contains a normal railway as as well as a tramway, it is recommended to separate the vehicles for the normal railway from the tramway vehicles, so that each type can only run on the appropriate track. To enshure that this selection also functions in automatic mode, every train within the selected train list may be assigned to a specific train category (in BAHNLAND only one train list can be selected at a time).

Within the block which is marked with (8), one or more pixels may be set to black to allow the marked train categories to run on that track. A train which is not assigned to a specific train category is implicitly assigned to the category 0.

If different sections are part of the same track line, the settings (8) must be identical for all affected line sections.

Assignment of train categories to stopping points, horizontal position of the stopped train. (9)

If there is a stopping point defined within the considered track line, specific train categories may be selected for stopping at this point. Until now, the following train categories are defined:

  1. Trains, which are not assigned to a specific train category (-)
  2. Regional trains (N)
  3. Expess trains (F)
  4. Local freight trains (Ü)
  5. Express freight trains (G)
  6. Special trains of all kinds (S)

Different train categories can be selected for stopping at the specified point making the corresponding pixels black.

Normally a train will stop symmetrically to the stopping point. This means that half the train will pass and the remaining part will stay behind the stopping point. If the train should stop completely to the left or to the right of the stopping point (assuming a normal orientation of the considered line section), a black pixel has to be set at relative position 8 or 9 (absolute position 18 or 19) within the control column.

Informations located in control lines

In addition to the control columns described, there are two control lines at the bottom of each stripe bitmap (11). If as section of track is on an incline, black pixels are set within the control lines at the horizontal positions where the vertical rail track level is altered by one pixel: for trains travelling from left to right, a pixel within the upper control line indicates an ascending track level. A descending track level is indicated by a pixel within the lower control line.

The initial track level at the left boundary is set by the vertical location of a black pixel in the leftmost control column (10). Starting with this track level, the program BAHNLAND can determine the whole track profile.

Vertically adjacent pixels set in the upper and the lower control lines (11) define a stopping point at this horizontal position. A train coming to this point will be gradually slowed down. A restarting train will be continuously speeded up until the predefined speed of this train is reached.

Only one stopping point can be defined for a whole track line. If stopping points are defined for different track sections (i.e. within different bitmap stripes) which are part of the same track line, only the stopping point which was found first will be interpreted by the program BAHNLAND.