generated on 2016-10-26 01:17:46.550280 from the wiki page for NETEDIT for SUMO svn

From 30.000 feet

NETEDIT is a graphical network editor for SUMO.

Purpose: create and modify SUMO networks
System: portable (Linux/Windows is tested); opens a window
Input (optional): road network definitions to import
Output: A generated SUMO-road network; optionally also other outputs
Programming Language: c++

Usage Description

NETEDIT is a visual network editor. It can be used to create networks from scratch and to modify all aspects of existing networks. With a powerful selection and highlighting interface it can also be used to debug network attributes. NETEDIT is built on top of NETCONVERT. As a general rule of thumb, anything NETCONVERT can do, NETEDIT can do as well. NETEDIT has unlimited undo/redo capabilities and thus allows editing mistakes to be quickly corrected. Editing commands are generally issued with a left-click (according to the current edit mode. The user interface closely follows that of SUMO-GUI. Additional keyboard hotkeys are documented in the Help menu.


NETEDIT is a GUI-Application and inputs are chosen via menus. The following input formats are supported:

  • SUMO-net files
  • OSM-files
  • NETCONVERT-configuration files


  • SUMO-net files
  • plain-xml files


  • <Button-Left>: Execute mode specific action
  • <Button-Right>: Open context-menu
  • <Button-Right-Drag>: Change zoom
  • <Button-Left-Drag>: Move the view around (panning)
    • in 'Move'-mode pointing at an edge: move or create geometry points
    • in 'Move'-mode pointing at a node: move node
    • in 'Move'-mode pointing at a selected object: move all selected nodes and edges including geometry. If both nodes of an edge are selected, move the whole geometry. Otherwise, move only the geometry near the cursor
  • <ESC>
    • in 'Create Edge'-mode: clear the currently selected source junction
    • in 'Select'-mode: clear the currently selection; cancel rectangle selection
    • in 'Connect'-mode: deselect current lane and cancel all changes
    • in 'Traffic Light'-mode: revert changes to current traffic light
    • when editing a junction shape: abort editing the current junction shape
  • <DELETE>: delete all currently selected items
  • <SHIFT>: in 'Select'-mode: hold <SHIFT> and drag the mouse for rectangle selection
  • <CTRL>: in 'Create Edge'-mode, allow moving the view without defining junctions
  • <Enter>
    • in 'Inspect'-mode: confirm attribute changes
    • in 'Connect'-mode: deselect current lane and save all changes
    • in 'Traffic Light'-mode: save changes to current traffic light
    • when editing a junction shape: save the current junction shape

Every edit mode can be selected with a hotkey. That hotkey is shown in front of the mode name. i.e. (i) Inspect has the hotkey i Pressing the hotkey for a mode when already in that mode toggles back to the previous mode.

In addition to these hotkeys, all hotkeys for moving and zooming in SUMO-GUI are supported.

Hint: Most menu commands are accessible via hotkey. The hotkey is shown right beside the command name.";

Processing Menu Options

  • Compute Junctions: recomputes the geometry and logic of all junctions. This is triggered automatically when entering nodes which require this information (Connect, Traffic Lights).
  • Join Selected Junctions: joins the selected junctions into a single junction (See joining Nodes).
  • Options: inspect and set all options. These are the same options that NETCONVERT accepts on the commandline or in a configuration.

Edit Modes

NETEDIT is controlled via various editing modes. This serves to reduce the number of clicks. For example, in delete mode a click on any object deletes it.


Inspect and modify attributes of edges, lanes and nodes. Modifications have to be confirmed by hitting <Enter>.

When inspecting an element that is selected along with multiple elements of the same type this move behaves differently:

  • Only non-unique attributes are listed (i.e. lane-width but not lane-ID)
  • If the elements differ in their attributes, the whole range of occurring values is shown
  • All selected elements of the same type are modified at the same time when setting a new value

Create Edges

This mode create edges(lanes) and implicitly nodes(junctions)


Delete nodes (and all adjoining edges), single edges or geometry points.


Move nodes by dragging with the left mouse button. Dragging edges creates or moves geometry points. Dragging a node on top of another node joins them into a single node.


Modify lane-to-lane connections. The first click selects the source lane and following clicks toggle the status of target lanes.


Select network objects according to various criteria. Selected objects can be moved or deleted together. It is also possible to set attributes for all selected nodes (or all edges) at the same time using inspect mode. The selection status of objects is toggled by left-clicking. When the select edges check-box is unset, lanes, ratherr than edges will be selected/deselected.

Junctions and lanes can also be selected by <ctrl>+<left click> regardless of editing mode

Modification Mode

The Modification Mode changes how a loaded selection is applied to the current selection. It can either be added, replaced, subtracted or intersected.

Match Attribute

The 'Match Attribute' controls allow to specify a set of objects by matching their attributes agains a given expression. When combining this set with the current selection, the Modificatiton Mode is also applied.

  1. Select an object type from the first input box
  2. Select an attribute from the second input box
  3. Enter a 'match expression' in the third input box and press <return>

Matching rules:

  • The empty expression matches all objects
  • For numerical attributes the match expression must consist of a comparison operator ('<', '>', '=') and a number.
    • the attribute matches if the comparison between its attribute and the given number by the given operator evaluates to 'true'
  • For string attributes the match expression must consist of a comparison operator (, '=', '!', '^') and a string.
    • (no operator) matches if string is a substring of that object'ts attribute.
    • '=' matches if string is an exact match.
    • '!' matches if string is not a substring.
    • '^' matches if string is not an exact match.


Traffic Lights

Set nodes to be controlled or uncontrolled by a traffic light. Edit all aspects of static signal plans. Visualizes a signal phase by coloring the controlled lane-to-lane connections according to the signal state. Editing signal states can be accomplished in either of the following ways:

  • right-clicking one any controlled lane and picking a new state (color).
  • right-clicking on any of the incoming lanes to change all controlled connections from that edge
  • If the lane is currently selected, all connections from selected lanes incoming to the traffic light will be changed as well
  • If the edge is currently selected, all connections from selected edges incoming to the traffic light will be changed as well
  • If the check-box apply change to all phases is activated, all phases of the current plan will be affected

You can also change the state by editing the phase table directly.


Add additional elements to the net. Additionals can be placed over a lane or in a empty place of the map. See section "Additional elements" for more information.

Road Network Elements

This elements comprise the road network and can be created and modified with NETEDIT.


Nodes, usually named "junctions" in SUMO-context, represent intersections. A SUMO node is equivalent to a Vertex in the graph theory.


In the SUMO-context, edges represent roads or streets. Note that edges are unidirectional. It's equivalent to a edge in a graph theory.


Each SUMO edge is composed of a set of lanes (At least one).


Connections describe how a node's incoming and outgoing edges are connected (for example to prohibit left-turns at some junctions).

Traffic Lights

A traffic light program defines the phases of a traffic light.

Additional elements

Additionals are elements which do not belong to the network, but may be used to influence the simulation or generate specific outputs. Additionals are defined in an additional-file and can be loaded in NETEDIT. Additionals are create in the Additionals editing mode (shortcut key: a). Once this mode is selected, the first step is to select in the comboBox "additional elmenet" what kind of additional will be created. Once selected and if required, the parameters of the additional should be changed. Finally, with a click over a Lane/node/edge (If the additional should be set over an element of net), or over an empty area (if the item is independent of the network) additional will be created.

Move and references

Additionals can be moved, but freedom of movement depends of their relation with the net. Additionals that must be located over a lane can only move along the lane, and additionals that are located on map can be move in any direction. The movement also depends if the item is locked or not (symbolized by a lock icon on the item). The movement can be blocked during the creation of the element, or changing the corresponding parameter with the inspector mode. Certain additionals haven a length contingent to the length of the lane. During creation can be selected three types of references for the length. If user want to create in a lane of length 100 a bus stop of lenght 20, and for that clicks over the position 50 of lane:

  • Reference left: new busStop will be created from 30 to 50.
  • Reference right: new busStop will be created from 50 to 70
  • Reference center: new bus stop will be created from 40 to 60

Some additional types cannot be moved, therefore show a different icon:


There are two types of parameters for each additional: Own parameters and Netedit-parameters. Own parameters can be of type int, float, bool string, or list, and each has a default value. In the case of type list, user can add or remove values using the add or remove row buttons. In the case of the characteristic parameters of NETEDIT, these are the option to block the movement of an element, and in the case of the elements having a length, change the length and reference.

Additional sets

Additional sets are additionals that comprise or contain another additionals (Called childs) (For example, detectorE3 contains a list of detEntry and detExit). AdditionalSet are inserted in the same way as a Additional, but insertion of an additional child is different. Before insertion of an additional child in the map the id of the additionalSet parent must be selected in the list of Ids placed on the left frame. In these list appear only the Ids of additional sets which can be parents of the additional child (For example, if the user want to insert a detEntry, in the left list will appear only Ids of detectorE3). AdditionalSets and their childs are graphically connected by a yellow line.

Help dialogs

With the help buttons placed in the left frame users can obtain information about additional and editor parameters (Full name, type and description).

Additional types

This section describes the differnt types of additional objects that are supported

Stopping Places

Stopping places are sections of lanes, in which vehicles can stop during a certain time defined by user.

Bus stop

Bus stops are positions of lane in which vehicles ("busses") stop for a pre-given time. Bus stop haven a unique ID assigned automatically by NETEDIT, and a lenght and list of bus lines defined by user.

Container stops

Container stops are similars to BusStops, but they are oriented towards logistics simulation.

Charging station

Charging stations define a surface over a lane in which the vehicles equipped with a battery are charged. Charging station own an unique-ID generated by NETEDIT, a length, a charging power defined in W, a charging efficiency, a switch for enable or disable charge in transit, and a charge delay.


Detectors are additionals wich save information about vehicles that passed over a certain position of lane.

Induction Loops Detectors (E1)

A E1 detector owns a ID parameter generated by NETEDIT, a position over certain lane, a freq attribute which describes the period over which collected values shall be aggregated and a file attribute which tells the simulation to which file the detector shall write his results into.

Lane Area Detectors (E2)

Most of the E2 detectors'attributes have the same meaning as for E1 induction loops, including automatic ID and position over certain lane. As a real detector has a certain length, "length" must be supplied as a further parameter. It may be a negative number which lets the detector be extended upstream to the given beginning position. The optional parameter "cont" let's the detector continue over the current lane onto this lane's predecessors when the detector's length plus his position is larger than the place available on the lane.

Multi-Entry Multi-Exit Detectors (E3)

A Detector E3 is an AdditionalSet with the same attributes as Induction Loop Detector E1. The difference is that detectors E3 haven as childs the Entry/Exit detectors.


Childs of AdditionalSet Multi-Entry Multi-Exit Detectors E3. These additionals only have the attributes ID of lane in which is placed and position over lane.

Route Probe

RouteProbe detectors are meant to determine the route distribution for all vehicles that passed an edge in a given interval. Their real-world equivalent would be a police stop with questionnaire or a look into the database of navigation providers such as TomTom.


A calibrator generates a Flow of vehicles during certaing time, and allow the dynamic adaption of traffic flows and speeds. They can be used to modify simulation scenario based on induction loop measurements. A calibrator will remove vehicles in excess of the specified flow and it will insert new vehicles if the normal traffic demand of the simulation does not meet the specified number of vehsPerHour. Furthermore, the speed on the edge will be adjusted to the specified speed similar to the workings of a variable speed sign. Calibrators will also remove vehicles if the traffic on their lane is jammend beyond what would be expected given the specified flow and speed. This ensures that invalid jams do not grow upstream past a calibrator. A double click over the calibrator icon opens the values editor.


not yet implemented at 100%

A rerouter changes the route of a vehicle as soon as the vehicle moves onto a specified edge. A double click over the rerouter icon opens the values editor.


vaporizers remove all vehicles as soon as they move onto a specified edge.

Variable Speed Signs

A Variable Speed Signal modifies the speed of a set of lanes during a certain time defined by user. A double click over the Variable Speed Signal icon opens the values editor.

Route elements

Route elements aren't implemented yet

Popup-Menu Functions

Not all menu options have been documented yet

Edge and Lane

  • Split edge here: Split an edge into two differentes edges connected with a junction.
  • Split edge in both directions here: Is similar to Split edge here, but generate splitted edges in both directions.
  • Reverse edge: Reverse the direction of an edge. If the ID of the start and end junctions of edge are respectively A and B, afer this operation start and end junction will be B and A.
  • Add reverse direction: If don't exist, add a revere edge between two junctions
  • Set geometry endpoint here: Create an geometry end point. It's usefull to mark the start and the end of an road
  • Restore geometry endpoint: Restore a geometry endpoint to a normal edge
  • Straighten edge: Allow to restore the visual shape of an edge
  • Duplicate lane: duplicate a lane of an edge

Restricted lanes

Restricted lanes for particulars vehicle class (VClass) can be easily added in inspect mode. Currently netedit supports sidewalks (where only vehicles with VClass="pedestrian" are allowed), bike lanes (where only vehicles with VClass="bike" are allowed), and bus lanes (where only vehicle with VClass="bus" are allowed). Note that only one type of restricted lane is allowed in every edge (For example, an edge can own two restricted lane, one for buses and another for bikes, but not two or more different restricted lanes for buses.

There are two ways to add a restricted lane, either transforming a existent lane or adding a new restricted lane

A restricted lane can be transformed in a normal lane with the option revert transformation, or can be removed with the option Remove restricted lane


  • Set custom shape: Allows drawing a custom junction shape via a #Modifiable Poly (see below).

Modifiable Poly

  • Set custom shape: Apply this shape to the current junction
  • Discard custom shape: Abort editing the current junction shape
  • Simplify shape: Replace the current shape by a rectangle
  • Remove geometry point: Remove the closest geometry point from the shape

The green polygon outline allows adding and moving geometry points by left-clicking anywhere on the outline and dragging.


  • inner/lane position: Additionals that are placed over an edge or lane haven two different mouse position. Inner position is the position of the mouse with respect to the length of the additional, and lane position if the position of the mouse with respect to the length of lane
  • Position in view and number of childs: shows the number of childs that own an Additionals, and their position in view
  • show parameters: show all parameters of additional.

Usage Examples

Reducing the extent of the network

  1. switch to selection mode
  2. enable the auto-select nodes checkbox in the top menu bar
  3. select the portion of the network you wish to keep (i.e. by holding <SHIFT> and performing a rectangle-selection)
  4. invert the selection with the Invert button
  5. delete the inverted selection using the <DELETE> key

Specifying the complete geometry of an edge including endpoints

  1. switch to move mode
  2. create/move geometry points for that edge
  3. create new geometry points where the endpoints of the edge should be
  4. right-click on the new endpoints and select Set geometry endpoint here

Afterwards, you will have to recompute the node shape to see how it looks (F5). If you want to modify the edge and it's reverse edge at once this works almost the same way:

  1. switch to select mode
  2. select both edges
  3. switch to move mode
  4. create/move geometry points for that edge
  5. create new geometry points where the endpoints of the edge should be
  6. switch to select mode
  7. deselect both edges
  8. right-click on the new endpoints and select Set geometry endpoint here twice (once for each edge)

Converting an intersection into a roundabout

  1. For each of the 'legs' of the intersection do a right click and select 'split edges in both directions' at some distance from the intersection (this will be the radius of the roundabout)
  2. Delete the central intersection
  3. Connect the new intersections with one-way roads going in a circle
  4. Tweak the geometry of the roundabout by creating additional geometry points in move mode to make it more rounded
  5. Ensure correct right of way by either
    • Assigning a higher priority value to the roundabout roads (compared to the adjoining roads)
    • or seting the option roundabouts.guess in the Processing menu

Assuming you have a regular intersection

  • Visual example

This page was last modified on 19 October 2016, at 10:52.