Object Rotator for MSTS Route Editor
Version 2
freeware by Michael Vone
Version 2 adds several new functions. Version 2 is independent of my Step
by Step Guide to Route Building (version 1 was bundled with that Guide),
and can be downloaded from the
Avsim.com and
Train-Sim.com libraries.
Object Rotator
is an Excel spreadsheet that allows the precise alignment of bridges and
platforms along tracks or roads, the accurate orientation of objects, the
precise lining up of rows of objects, along a straight or curved line, the
accurate aiming of tracks or roads between distant points, shaping S-curves,
making tracks deviate around a platform, joining non-parallel tracks,
shaping steep and smooth rollercoaster tracks.
The Route Editor by itself does not allow the precise orientation of objects:
Object Rotator, which is aimed at advanced users of the Route Editor,
does this by recalculating an object's QDirection and/or Position in
world tile files (*.w).
The enlarged documentation of version 2 explains the not very obvious
way in which QDirection expresses heading, slope and bank angles for tracks,
roads and other objects.
Object Rotator requires Microsoft Excel (it will not function
with an Excel viewer).
This page illustrates some typical options offered by Object Rotator.
Orienting a bridge parallel to track
The first and simplest task is to make one object lie exactly parallel to another,
for example a railway bridge over which a track passes.
The next screenshot of the MSTS Route Editor shows straight sloping track
that should pass over a bridge section, placed at left in its default orientation:
the challenge is to rotate this bridge section exactly parallel to the track.
It is very difficult to do this manually and visually with the MSTS Route Editor.
To do this with Object Rotator, the route builder must first find the track
section's precise
orientation: it can then be copied over the bridge's default orientation.
This must be done inside the "world tile file" that lists the details of
both the track and the bridge. The next screenshot shows how the tile and
Position of the track within that tile are identified.
With this information, the builder can find the exact track orientation and
copy it over the bridge's orientation. The result, after reloading the route,
is shown next: now the bridge is precisely parallel to the track, including
its slope (if the track were banked, the bridge would also be banked). It
remains to shift the bridge into position under the track: this is easily
done manually and visually in the Route Editor while maintaining the bridge
orientation accurate (you can see the result at bottom right of the
following picture).
Laying objects across
A similar challenge is to turn an object so it lies exactly across a track
or road.
The next view shows several examples: the two large bridge sections are
turned across the same sloping track as before, but are kept non-banked
for a horizontal road to pass overhead (Object Rotator also allows banking
an object so it fits the slope of the track). But the small bridge section and
the fence had to be turned 90 degrees before they would align properly with
the sloping track: they then had to be banked to fit the slope; all
those details are calculated by Object Rotator. (The small bridge should
still be moved under the track.)
Lining up strings of objects
In the Route Editor it is almost impossible to correctly line up long bridges
and platforms. Object Rotator makes all the necessary calculations.
For example, the next view shows two long platforms on both sides of sloping
track. On one side, the platform lies "parallel" to the track, while on the
other side it lies with opposite direction, "antiparallel" to the track.
Curved rows of objects
Hopelessly complex to do manually in the Route Editor is placing objects
precisely along curved tracks. For instance, bridges and platforms are very
difficult to place precisely in a curve, especially with a slope.
The next view shows the result of placing several types of objects along a
sloping curved track, using Object Rotator:
a bridge, a platform (or wall), gantries, fences, and lamps.
Track shapes
Also difficult in the Route Editor can be the shaping of tracks.
One challenge is joining tracks, as shown in the next view. Object Rotator
will calculate how to join the end points G1 and G2 of the gap between
existing tracks, after you specify a desired radius R, so you can easily
shape dynamic tracks sections that will fill the gap.
Another task solved by Object Rotator is aiming a curve so it points
directly at another point, as shown next in two cases.
Knowing the START point and
the orientation of the existing track there, and knowing the target END
point as well as your desired radius, Object Rotator will calculate
the needed turn angle.
As one more example, Object Rotator will calculate for you the turn angle A
needed to make dual track split up around a platform, as shown next.
All you need to provide is the platform width D and the desired turn radius R.
Rollercoasters
It turns out that tracks can be sloped and banked very steeply: this allows
forming rollercoasters, as shown below, although with some limitations.
Such rollercoaster tracks are created with Object Rotator to give dynamic
track sections the required steep slopes and banks through their QDirection data.
As is visible, the trains stay upright (unbanked) on the tracks, and in fact
never run upside down in MSTS, even when the tracks are turned upside down.
Also, if you use dynamic tracks, the rails and the trackbed (transparent here)
stay "level", without a bank (without superelevation).
The scene below is from my MegaCoaster route.