railOscope by trafIT solutions

Microscopic TopoEditor

Topo Editor


The TopoEditor is used to edit one micro-infrastructure model. The model consists of tracks, switches, crossings, stations (also called OperationControlPoint, OCP) and many track elements such as signals, balises etc. The model is displayed with schematic screen coordinates. Typically track lengths are shortened and distances between tracks are widened for clarity.

There are a range of use cases for editing models, from just sketching an infrastructure to building a model, which can be used to simulate train traffic. railOscope tries to support all these use cases.

In order to achieve a nice, clean look, the elements are placed on a grid.

When starting a new model, we suggest the following sequence:

  • Start in TOPO-mode and enter track (edges) connected by switches and crossings.
  • If precise placement is needed, add kilometration to important points.
  • Continue by adding elements to tracks and edit their attributes.
  • Finally, fine-tune the model.

While we suggest to enter a model in the sequence edges, kilometration, elements, we know that this order cannot always be followed in practice. railOscope tries to give as much flexibility for model refactorings and changes as possible while maintaining internal consistency:

  • Tracks can be connected to other switches or crossings.
  • Switches can be inserted on tracks.
  • Subsequent tracks can be merged.
  • Entire stations can be copied as templates for new ones.


  • Dragging the surface changes the viewport.
  • Double-clicking the surface zooms to that location.
  • Double-clicking with shift pressed zooms out.
  • Use the mouse-wheel to zoom in or out at a certain location.
  • Press to show all elements.
  • Press alt++ to zoom in, alt+- to zoom out and alt+0 to show all.
Undo / Redo / Save
  • Press ctrl+z to undo the last change.
  • Press ctrl+y to redo a previously undone change.
  • Press ctrl+s to save the current state to the server.
  • An asterisk symbol next to the model title shows that there are unsaved modifications.
  • Saving is allowed only for the latest version and if the user has enough access rights.
  • When trying to leave the page with unsaved changes, a warning is shown.
  • The cloud in the upper right corner shows the connection status: ☁︎ connected, ☁︎ offline.
  • If disconnected, the application tries to reconnect automatically.
  • If disconnected, work can continue normally. However changes can only be saved again when a connection is re-established.
  • If connected, changes by other users to the same model are reflected immediately.
  • However, concurrent work can be dangerous (e.g. one user deletes an element the other user just built upon). Please use concurrency with care.
Renderers, Layers
  • The internal railOscope renderer is optimised for editing the model.
  • The NRV renderer displays the situation according to the Norwegian drawing rules. Restricted editing is possible in this mode.
  • Elements are placed on different layers. Layers can be hidden.
  • When inserting an element, the corresponding layer is made visible.
Grid, Viewport
  • The drawing has no bounds, it can be extended on either side.
  • All elements with screen coordinates (OCP, EdgePoint) are rounded to the grid (10 internal units)
  • Other elements are interpolated.
  • If the data was imported from another tool, it can be rounded to the grid with
  • We recommend a distance of 30 internal units (3 grid points) between parallel tracks for good results.
Drawing Topology
  • To enter edges, switch to the Topo-Mode ( or press F11)
  • Clicking at an empty location starts a new edge. Move the mouse to the intended end and click again to finish the edge.
  • While moving the mouse, the current coordinates and the pos value (on an edge) are displayed.
  • Edges are directly appended at the end.
  • Alternatively use the cursor keys to move the insertion point and hit x to insert.
  • Hit Escape to end the edge sequence.
  • A new edge can be started on an existing edge creating a switch.
  • EdgePoints (starting, middle, end) can be created on existing edges. This creates switches and crossings.
  • Crossings can have as many edges as desired.
  • Drivability is determined by the angle between the two edges.
  • To create indirect connections, select both topoPoints that you want to connect, and connect them in the inspector
  • To delete indirect connections, select it and change the indirect value to false. It will then become a direct (ordinary) connection.
Selecting and Moving
  • To switch to selection mode, hit or press F10.
  • Elements are selected by clicking them.
  • Clicking in an empty area clears the selection.
  • Clicking with ctrl adds to / removes from the selection (toggle).
  • When clicking with ctrl in an empty area, a capture rectangle is opened for selecting edges and OCPs within.
  • Hitting delete deletes the selected elements.
  • Press ctrl+a to select all elements.
  • If one or more edges are selected, hitting toggles selection of elements on the edge(s).
  • The selection (also several elements) can be dragged by mouse to a new location.
  • Selected track elements can be moved along the edge using the cursor-up and cursor-down key.
  • Selected edges and OCPs can be moved using the cursor-up, cursor-down, cursor-left and cursor-right keys. The step is 1 grid unit.
  • Additionally, hit shift, ctrl or alt key for small, large, huge steps.
  • If two elements are selected, the shortest path between them is highlighted in orange. Average speed(s) and gradient is calculated and indicated in the Inspector.
  • EdgePoints can be dragged away from their TopoElement or dragged onto other elements.
  • TopoElements can be dragged, moving all of their EdgePoints with them.
  • TopoElements can only be deleted if they have at most two edges. Remove EdgePoints first in order to delete the TopoElement.
  • If a TopoElement with two edges is deleted, the edges are merged. This may cause the elements to jump if the scales on the edges have not been the same.
Copy and paste
  • Press ctrl+c to copy the selection to the clipboard.
  • Press ctrl+x to cut the selection to the clipboard.
  • Press ctrl+v to paste the clipboard.
    • If an edge is selected during paste: paste all track elements of that edge
    • Otherwise all OCPs and Edges (with their elements) are pasted on the surface
    • The kilometration is not copied to allow an easy relocation
  • Press ctrl+Insert to paste the last copied clipboard of any other model in another browser window.
  • Then, references to objects outside the clipboard are removed.
  • During cut or copy, the mouse location is stored as reference point.
  • Place the mouse cursor to where the elements should be inserted. They are inserted relative to the mouse location.
  • EdgePoints' colors show whether they have kilometration (white) or not (orange, "kinks").
  • TopoElements are colored according to the kilometration of the EdgePoints: none, one, partial, multiple.
  • Edges for which the length does not correspond to the kilometration of their EdgePoints, are colored in orange.
  • Select an EdgePoint of an inconsistent edge and hit km → len or len → km to make the edge consistent again.
  • Pos-values have one position after decimal point, km-values have none (they are defined in meters).
  • Kinks can be created by inserting an edgePoint onto an edge.
  • If a new edge is drawn from a kink, it is converted to a switch.
  • Kinks have no attributes, as their only purpose is to fix the drawn course of a track.
  • An edgePoint can be manually converted to a kink (and vice-versa) by clicking the TK-button in the Inspector.
Layers and Views
  • Hitting T displays the topology and kilometration info.
  • Hitting L shows the lengths layer.
  • Hitting M shows the mileage layer.
  • The Layers-Menu allows hiding and showing of all types of TopoElements and additional info.
  • An option to hide or show all layers is available.
  • Using the Views-Menu, predefined sets of layers (and rendering-configurations) can be selected for a specific use-case.
  • Clicking the Standard (current layers)-Item will switch to the standard-view (rendering) without changing the activated layers.
  • The area of all selected stations is shown with a yellow background.
  • The model is validated after each change.
  • Validation results in errors, warnings, and infos, which are indicated next to the model name.
  • Clicking on a validation category shows all entries for that category.
  • Clicking on a validation entry zooms to the cause of the entry.
  • Using the checkbox next to the validation results, the markers in the topology area can be hidden.
  • If one or more elements are selected, the inspector is opened.
  • The common attributes of the selection can be edited at once.
  • If one track element is selected, the gradient and speed at that location in direction of the element are shown.
  • If two track elements are selected, the distance, average gradient and average speed between them is shown.
  • If several elements are selected, the elements are listed in the inspector. Clicking on a x removes an object from the selection. Clicking on an object selects this object only.
  • Press OK to save the changes, or Cancel to discard the changes.
  • The Expert Mode shows additional information and attributes. It can be toggled on/off with the Expert Button.
Further topics