Object positioning in the network: Difference between revisions

From railTOPOMODEL® Wiki
Jump to navigation Jump to search
[checked revision][checked revision]
(2nd try to edit this page by Regina Klimmek)
m (2nd try to edit this page by Regina Klimmek)
Line 57: Line 57:


[[File:SpotLocationLU.png|thumbnail|SpotLocation (Language Unit)]]
[[File:SpotLocationLU.png|thumbnail|SpotLocation (Language Unit)]]
In terms of RTM, a SpotLocation is related to exactly one PositioningNetElement, which could be either nonlinear or linear. This means that the NetEntity in question is located on this NetElement and its applicationDirection refers to the NetElement’s orientation. In case the NetElement is linear, the exact place of the SpotLocation remains is specified depending the SpotLocations type:
In terms of RTM, a SpotLocation is related to exactly one PositioningNetElement, which could be either nonlinear or linear. This means that the NetEntity in question is located on this NetElement and its applicationDirection refers to the NetElement’s orientation. The exact localization of the SpotLocation is given depending which of two types its belongs to:


===== SpotLocationCoordinate =====
===== SpotLocationCoordinate =====
Line 66: Line 66:
<br/>
<br/>
In the example spot location on the image above, we see a SpotLocation for a SpotEntity (signal), on netElement A, which is a linear element. The applicationDirection in this case is “reverse”, since the signal is valid in direction 1 to 0 on A.  
In the example spot location on the image above, we see a SpotLocation for a SpotEntity (signal), on netElement A, which is a linear element. The applicationDirection in this case is “reverse”, since the signal is valid in direction 1 to 0 on A.  
<br/><br/>The NetEntity "happens" at a certain distance left from A. As a SpotLocationIntrinsic, its intrinsicCoord is 0.5. As a SpotLocationCoordinate, its external coordinate is X.
<br/><br/>The NetEntity "happens" at a certain distance left from A. As a SpotLocationIntrinsic, its intrinsicCoord is 0.5. As a SpotLocationCoordinate, its external coordinate is X in some PositioningSystem.
<br/><br/>
<br/><br/>
=== LinearLocation ===
=== LinearLocation ===

Revision as of 19:39, 13 September 2016

Overview
The RailTopoModel allows for all railway-related physical or logical objects an exact and unique positioning on the network. The generic class EntityLocation holds the necessary positioning information and serves as a connection to the network.


The RailTopoModel data structure is organized around the network. The Network is used as the main reference system for positioning of arbitrary information objects. This layer allows the user to project objects and entities on the topology, by referencing topology elements.

  • The network is built of NetElements
  • Objects can be located on the network as NetEntities


Net Entities and Entity Locations

To define all types of entity, a generic class is defined: NetEntity. This class defines a general relation with a shared location to define the position on the network. The location of each entity on the network is defined using the intrinsic reference of NetElement. NetEntities, specialised as LocatedNetEntities, are located by assigning EntityLocations to them. An EntityLocation connects an Entity to the Network via one or more PositioningNetElements.

Locations (Language Unit)

Each “NetEntity” instance possesses an unspecified number of “EntityLocation” instances. Each EntityLocation instance is specialised as one of three types used to locate different types of NetEntities on the network:

  1. SpotLocation: used for information objects happening at a point (e.g.: signals, buffer stops, ETCS balise, etc.)
  2. LinearLocation: used for information objects happening along a path (e.g.: platform, speed limit, ballast renewal, etc.)
  3. AreaLocation: used for information objects happening on a sub network (e.g.: catenary cases, track circuits zones, switches, stations, tunnels, bridges, etc.)



A NetEntity can have more than one EntityLocation in the Network, For example:

  • An object can be located by some positioning system, and additionally by intrinsic positioning. See later explanations
  • A level crossing of two tracks is located on each of those tracks by (at least) one SpotLocation.
  • A switch has an AreaLocation (see picture), but can as well be located at its branching point by a SpotLocation
  • A station on the micro level of the network is represented by an ArealLocation. On the macro level it is condensed as operational point to a single topological node (NonLinear NetElement) and therefore is assigned a SpotLocation

The last two examples show that a stringent classification of NetEntities into three types, Spot Entity, Linear Entity and Areal Entity is not always possible.

Relating EntityLocations to the Network

The three types of EntityLocations are related in different ways to the network. Using an “AreaLocation” instance for connecting to network means that the “NetEntity” in question is related to a subset of “NetElement” instances which together resemble an area or a sub-network.
A connection based on a “LinearLocation” instance means that the “NetEntity” in question is a path related to a linear segment of the “Network”.
A connection based on a “SpotLocation” means that the “NetEntity” in question is either related to a “nonLinear" NetElement” building block of the “Network” or it is related to a specified position on a "linear" NetElement

Note that - with reference to NetElements - the terms linear or nonlinear are used for illustration only. In the RTM network, there are only NetElements and Relations. You can imagine a nonlinear NetElement as a "node" and a linear NetElement as an "edge" to get a better understanding, but it will make no difference in the topology or the positioning of NetEntities.

SpotLocation

A spot entity can be located either at a nonlinear element or along a section of rail/section of line (linear net element) at a certain distance.
If it is located at a nonlinear element, it could be that happens “in” the element (regardless to orientation). In this case, it encompasses the whole nonlinear element. Otherwise it happens with respect to some relation of the nonlinear element (exit or entry via another net element, for example from an adjacent track edge X). It should then be described as track edge X at 0 (or 100%), meaning it happens at the nonlinear elements centroid, but only on this particular track edge.

If it happens along a track edge at a certain distance from the start, it is necessary to define whether this entity happens directly on the track edge, or alongside the track edge; and if the entity occurs in both directions or only in one. These types of entities are located on the network by the type of class: SpotLocation. It is possible to have more than one location for a punctual entity:

  1. Multiple location (on multi-track) on the network for the same level (micro,…).
  2. Multiple location because the entity is located on different levels.
SpotLocation (Language Unit)

In terms of RTM, a SpotLocation is related to exactly one PositioningNetElement, which could be either nonlinear or linear. This means that the NetEntity in question is located on this NetElement and its applicationDirection refers to the NetElement’s orientation. The exact localization of the SpotLocation is given depending which of two types its belongs to:

SpotLocationCoordinate

A SpotLocation of this type is related to a PositioningSystemCoordinate which refers to a specific PositioningSystem. This is either a LinearPositioningSystem or a GeometricPositioningSystem. The PositioningSystemCoordinate provides the exact localization of the SpotLocation

SpotLocationIntrinsic

A SpotLocationIntrinsic carries the intrinsicCoordinate in reference to the chosen PositioningNetElement, as a value between 0 and 1.
In the example spot location on the image above, we see a SpotLocation for a SpotEntity (signal), on netElement A, which is a linear element. The applicationDirection in this case is “reverse”, since the signal is valid in direction 1 to 0 on A.

The NetEntity "happens" at a certain distance left from A. As a SpotLocationIntrinsic, its intrinsicCoord is 0.5. As a SpotLocationCoordinate, its external coordinate is X in some PositioningSystem.

LinearLocation

LinearLocation (Language unit)

Many “NetEntity” instances can be seen as paths.

To describe a path or linear location, a start point, an end point and an ordered list of every encompassed element, is needed.

The start and end points are point locations, thus either a nonlinear element or a point along a linear element (track edge). The path should be a topological path, meaning that at each nonlinear element only one exit direction can be taken. If the start- or end point is a nonlinear element, this element is fully encompassed within the path.

The correct ordering of the list should be checked against the topology definition of the network. This could be the task of a validator. The orientation of the path on each track edge can be deduced from the order of the crossed nonlinear elements. Path locations in RTM are located by the type of class: LinearLocation.

class diagram OrderedAssociatedNetElement



A LinearLocation is defined by an ordered sequence of AssociatedNetElements. Each AssociatedNetElement refers to a linear or nonlinear PositionedNetElement. It either encompasses the whole NetElement or a section at the beginning or end of the linear NetElement (or an arbitrary section in case there is only one AssociatedNetElement)

The beginning and end of the sections of AssociatedNetElements are given in intrinsic coordinates (between 0 and 1) with respect to the related PositioningNetElement. The parameter keepsOrientation defines if the AssociatedNetElement is oriented along the direction of the NetElement or in reverse direction.

The AssociatedNetElements have to be oriented all in the same direction, from the start to the end of the sequence. They form a connected path in the network without gaps or branches.

The position of the LinearLocation within the network itself is now complete. Additionally, more positioning systems can be used for the respective entity. If the LinearLocation is a LinearLocationCoordinate, it can be assigned a position with respect to an external – linear or geometric – PositioningSystem.

The example shows the LinearLocation and its AssociateNetElements with respect to the underlying NetElements. The sequence looks as follows:

Nr AssociatedNetElement netElement intrinsicCoordBegin intrinsicCoordEnd keepsOrientation
1 A' A 0.7 1 true
2 B' B n/a (nonlinear) n/a n/a (nonlinear)
3 C' C 0 1 true
4 D' D n/a n/a n/a
5 E' E 0 0.8 true

Remark: In this example, all the underlying linear NetElements are oriented in the same direction, as can be seen by the positions of their intrinsic coordinates 0 and 1. In case that a linear NetElement, say E, were oriented in the other direction, the AssociatedNetElement E’ would have to be defined by intrinsicCoordBegin = 0.2, intrinsicCoordEnd = 1 and keepsOrientation = false.

AreaLocation (SubNetwork)

AreaLocation (Language Unit)

An areal object is an object represented by a subgraph (a continuous fraction of the network), that is comprehended as an object. The name areal object was chosen because most practical examples resemble an area. The respective AreaLocation is this subgraph or sub-network. Example: the track network belonging to an organisational unit such as a station.
It is defined analogously to spot- and linear entities, by listing the AssociatedNetElements of the location, with a pair of positions (beginning and end in intrinsic reference on the respective PositionedNetElement) for all AssociatedNetElements

The difference to LinearLocation is that the set of AssociatedNetElements does not have to be ordered and can have different orientations. Further there can be branches within the subgraph



As in the case of LinearLocations, if a nonlinear element is included in the collection of AssociatedNetElements, then the whole element is included. The collection can include sections of linear elements, defined by their intrinsic begin and end coordinate. It must be checked that the objects included in the areal location form a connected subgraph (no independent parts) and that no object is listed twice.

The AreaLocation in the example contains 8 AssociatedNetElements. Note that element E is fully included in E’, but not the adjacent nonlinear NetElement (node) in the network. The track edges A and G are oriented reverse to each other, which does not matter in an AreaLocation.

What you should have learned

You should be able to

  • identify spot-, linear and areal objects in your network and chose the appropriate EntityLocation type (s) for them
  • understand the connection of EntityLocations to the network
  • ...at last answer the question "where is...?" for every object related to your railway network


Back To Previous Chapter Next Chapter
RTM Modelling Concepts Positioning -