table of contents
ECLIPSE(1) | User Commands | ECLIPSE(1) |
NAME¶
Eclipse - Road network generator for the microscopic traffic simulation SUMO
SYNOPSIS¶
netgenerate [OPTION]*
DESCRIPTION¶
Eclipse SUMO netgenerate Version 1.15.0
- Copyright (C) 2001-2022 German Aerospace Center (DLR) and others; https://sumo.dlr.de
Synthetic network generator for the microscopic, multi-modal traffic simulation
- SUMO.
- Either "--grid", "--spider" or "--rand" must be supplied.
- In dependance to these switches other options are used.
Configuration Options:¶
- -c, --configuration-file FILE
- Loads the named config on startup
- -C, --save-configuration FILE
- Saves current configuration into FILE
- --save-configuration.relative
- Enforce relative paths when saving the configuration
- --save-template FILE
- Saves a configuration template (empty) into FILE
- --save-schema FILE
- Saves the configuration schema into FILE
- --save-commented
- Adds comments to saved template, configuration, or schema
Grid Network Options:¶
- -g, --grid
- Forces NETGEN to build a grid-like network
- --grid.number INT
- The number of junctions in both dirs
- --grid.length FLOAT
- The length of streets in both dirs
- --grid.x-number INT
- The number of junctions in x-dir; Overrides --grid-number
- --grid.y-number INT
- The number of junctions in y-dir; Overrides --grid-number
- --grid.x-length FLOAT
- The length of horizontal streets; Overrides --grid-length
- --grid.y-length FLOAT
- The length of vertical streets; Overrides --grid-length
- --grid.attach-length FLOAT
- The length of streets attached at the boundary; 0 means no streets are attached
- --grid.x-attach-length FLOAT
- The length of streets attached at the boundary in x direction; 0 means no streets are attached
- --grid.y-attach-length FLOAT
- The length of streets attached at the boundary in y direction; 0 means no streets are attached
Spider Network Options:¶
- -s, --spider
- Forces NETGEN to build a spider-net-like network
- --spider.arm-number INT
- The number of axes within the net
- --spider.circle-number INT
- The number of circles of the net
- --spider.space-radius FLOAT
- The distances between the circles
- --spider.omit-center
- Omit the central node of the network
Random Network Options:¶
- -r, --rand
- Forces NETGEN to build a random network
- --rand.iterations INT
- Describes how many times an edge shall be added to the net
- --bidi-probability FLOAT
- Defines the probability to build a reverse edge
- --rand.max-distance FLOAT
- The maximum distance for each edge
- --rand.min-distance FLOAT
- The minimum distance for each edge
- --rand.min-angle FLOAT
- The minimum angle for each pair of (bidirectional) roads in DEGREES
- --rand.num-tries INT
- The number of tries for creating each node
- --rand.connectivity FLOAT
- Probability for roads to continue at each node
- --rand.neighbor-dist1 FLOAT
- Probability for a node having exactly 1 neighbor
- --rand.neighbor-dist2 FLOAT
- Probability for a node having exactly 2 neighbors
- --rand.neighbor-dist3 FLOAT
- Probability for a node having exactly 3 neighbors
- --rand.neighbor-dist4 FLOAT
- Probability for a node having exactly 4 neighbors
- --rand.neighbor-dist5 FLOAT
- Probability for a node having exactly 5 neighbors
- --rand.neighbor-dist6 FLOAT
- Probability for a node having exactly 6 neighbors
- --random-lanenumber
- Draw lane numbers randomly from [1,default.lanenumber]
- --random-priority
- Draw edge priority randomly from [1,default.priority]
- --random-type
- Draw edge type randomly from all loaded types
- --rand.grid
- Place nodes on a regular grid with spacing rand.min-distance
Input Options:¶
- -t, --type-files FILE
- Read edge-type defs from FILE
Output Options:¶
- --write-license
- Include license info into every output file
- --output-prefix STR
- Prefix which is applied to all output files. The special string 'TIME' is replaced by the current time.
- --precision INT
- Defines the number of digits after the comma for floating point output
- --precision.geo INT
- Defines the number of digits after the comma for lon,lat output
- -H, --human-readable-time
- Write time values as hour:minute:second or day:hour:minute:second rather than seconds
- --alphanumerical-ids
- The Ids of generated nodes use an alphanumerical code for easier readability when possible
- -o, --output-file FILE
- The generated net will be written to FILE
- -p, --plain-output-prefix FILE
- Prefix of files to write plain xml nodes, edges and connections to
- --junctions.join-output FILE
- Writes information about joined junctions to FILE (can be loaded as additional node-file to reproduce joins
- --prefix STR
- Defines a prefix for edge and junction names
- --amitran-output FILE
- The generated net will be written to FILE using Amitran format
- --matsim-output FILE
- The generated net will be written to FILE using MATsim format
- --opendrive-output FILE
- The generated net will be written to FILE using OpenDRIVE format
- --dlr-navteq-output FILE
- The generated net will be written to dlr-navteq files with the given PREFIX
- --dlr-navteq.precision INT
- The network coordinates are written with the specified level of output precision
- --output.street-names
- Street names will be included in the output (if available)
- --output.original-names
- Writes original names, if given, as parameter
- --street-sign-output FILE
- Writes street signs as POIs to FILE
- --opendrive-output.straight-threshold FLOAT
- Builds parameterized curves whenever the angular change between straight segments exceeds FLOAT degrees
Processing Options:¶
- --turn-lanes INT
- Generate INT left-turn lanes
- --turn-lanes.length FLOAT
- Set the length of generated turning lanes to FLOAT
- --perturb-x STR
- Apply random spatial perturbation in x direction according the the given distribution
- --perturb-y STR
- Apply random spatial perturbation in y direction according the the given distribution
- --perturb-z STR
- Apply random spatial perturbation in z direction according the the given distribution
- --numerical-ids
- Remaps alphanumerical IDs of nodes and edges to ensure that all IDs are integers
- --numerical-ids.node-start INT
- Remaps IDs of nodes to integers starting at INT
- --numerical-ids.edge-start INT
- Remaps IDs of edges to integers starting at INT
- --reserved-ids FILE
- Ensures that generated ids do not included any of the typed IDs from FILE (sumo-gui selection file format)
- --geometry.split
- Splits edges across geometry nodes
- -R, --geometry.remove
- Replace nodes which only define edge geometry by geometry points (joins edges)
- --geometry.remove.keep-edges.explicit STR[]
- Ensure that the given list of edges is not modified
- --geometry.remove.keep-edges.input-file FILE
- Ensure that the edges in FILE are not modified (Each id on a single line. Selection files from sumo-gui are also supported)
- --geometry.remove.min-length FLOAT
- Allow merging edges with differing attributes when their length is below min-length
- --geometry.remove.width-tolerance FLOAT
- Allow merging edges with differing lane widths if the difference is below FLOAT
- --geometry.max-segment-length FLOAT
- splits geometry to restrict segment length
- --geometry.max-grade FLOAT
- Warn about edge geometries with a grade in % above FLOAT.
- --geometry.max-grade.fix
- Smooth edge edge geometries with a grade in above the warning threshold.
- --offset.disable-normalization
- Turn off normalizing node positions
- --offset.x FLOAT
- Adds FLOAT to net x-positions
- --offset.y FLOAT
- Adds FLOAT to net y-positions
- --offset.z FLOAT
- Adds FLOAT to net z-positions
- --flip-y-axis
- Flips the y-coordinate along zero
- --roundabouts.guess
- Enable roundabout-guessing
- --roundabouts.visibility-distance FLOAT
- Default visibility when approaching a roundabout
- --opposites.guess
- Enable guessing of opposite direction lanes usable for overtaking
- --opposites.guess.fix-lengths
- Ensure that opposite edges have the same length
- --fringe.guess
- Enable guessing of network fringe nodes
- --fringe.guess.speed-threshold FLOAT
- Guess disconnected edges above the given speed as outer fringe
- --lefthand
- Assumes left-hand traffic on the network
- --edges.join
- Merges edges which connect the same nodes and are close to each other (recommended for VISSIM import)
Building Defaults Options:¶
- -L, --default.lanenumber INT
- The default number of lanes in an edge
- --default.lanewidth FLOAT
- The default width of lanes
- --default.spreadtype STR
- The default method for computing lane shapes from edge shapes
- -S, --default.speed FLOAT
- The default speed on an edge (in m/s)
- --default.friction FLOAT
- The default friction on an edge
- -P, --default.priority INT
- The default priority of an edge
- --default.type STR
- The default edge type
- --default.sidewalk-width FLOAT
- The default width of added sidewalks
- --default.bikelane-width FLOAT
- The default width of added bike lanes
- --default.crossing-width FLOAT
- The default width of a pedestrian crossing
- --default.allow STR
- The default for allowed vehicle classes
- --default.disallow STR
- The default for disallowed vehicle classes
- --default.junctions.keep-clear
- Whether junctions should be kept clear by default
- --default.junctions.radius FLOAT
- The default turning radius of intersections
- --default.connection-length FLOAT
- The default length when overriding connection lengths
- --default.right-of-way STR
- The default algorithm for computing right of way rules ('default', 'edgePriority')
- -j, --default-junction-type STR
- [traffic_light|priority|right_before_left|left_before_right|traffic_light_right_on_red|priority_stop|allway_stop|...] Determines junction type (see wiki/Networks/PlainXML#Node_types)
TLS Building Options:¶
- --tls.set STR[]
- Interprets STR[] as list of junctions to be controlled by TLS
- --tls.unset STR[]
- Interprets STR[] as list of junctions to be not controlled by TLS
- --tls.guess
- Turns on TLS guessing
- --tls.guess.threshold FLOAT
- Sets minimum value for the sum of all incoming lane speeds when guessing TLS
- --tls.guess.joining
- Includes node clusters into guess
- --tls.join
- Tries to cluster tls-controlled nodes
- --tls.join-dist FLOAT
- Determines the maximal distance for joining traffic lights (defaults to 20)
- --tls.uncontrolled-within
- Do not control edges that lie fully within a joined traffic light. This may cause collisions but allows old traffic light plans to be used
- --tls.ignore-internal-junction-jam
- Do not build mutually conflicting response matrix, potentially ignoring vehicles that are stuck at an internal junction when their phase has ended
- --tls.cycle.time INT
- Use INT as cycle duration
- --tls.green.time INT
- Use INT as green phase duration
- -D, --tls.yellow.min-decel FLOAT
- Defines smallest vehicle deceleration
- --tls.yellow.patch-small
- Given yellow times are patched even if being too short
- --tls.yellow.time INT
- Set INT as fixed time for yellow phase durations
- --tls.red.time INT
- Set INT as fixed time for red phase duration at traffic lights that do not have a conflicting flow
- --tls.allred.time INT
- Set INT as fixed time for intermediate red phase after every switch
- --tls.minor-left.max-speed FLOAT
- Use FLOAT as threshold for allowing left-turning vehicles to move in the same phase as oncoming straight-going vehicles
- --tls.left-green.time INT
- Use INT as green phase duration for left turns (s). Setting this value to 0 disables additional left-turning phases
- --tls.nema.vehExt INT
- Set INT as fixed time for intermediate vehext phase after every switch
- --tls.nema.yellow INT
- Set INT as fixed time for intermediate NEMA yelow phase after every switch
- --tls.nema.red INT
- Set INT as fixed time for intermediate NEMA red phase after every switch
- --tls.crossing-min.time INT
- Use INT as minimum green duration for pedestrian crossings (s).
- --tls.crossing-clearance.time INT
- Use INT as clearance time for pedestrian crossings (s).
- --tls.scramble.time INT
- Use INT as green phase duration for pedestrian scramble phase (s).
- --tls.half-offset STR[]
- TLSs in STR[] will be shifted by half-phase
- --tls.quarter-offset STR[]
- TLSs in STR[] will be shifted by quarter-phase
- --tls.default-type STR
- TLSs with unspecified type will use STR as their algorithm
- --tls.layout STR
- Set phase layout four grouping opposite directions or grouping all movements for one incoming edge ['opposites', 'incoming']
- --tls.no-mixed
- Avoid phases with green and red signals for different connections from the same lane
- --tls.min-dur INT
- Default minimum phase duration for traffic lights with variable phase length
- --tls.max-dur INT
- Default maximum phase duration for traffic lights with variable phase length
- --tls.group-signals
- Assign the same tls link index to connections that share the same states
- --tls.ungroup-signals
- Assign a distinct tls link index to every connection
- --tls.discard-simple
- Does not instatiate traffic lights at geometry-like nodes
Edge Removal Options:¶
- --keep-edges.min-speed FLOAT
- Only keep edges with speed in meters/second > FLOAT
- --remove-edges.explicit STR[]
- Remove edges in STR[]
- --keep-edges.explicit STR[]
- Only keep edges in STR[] or those which are kept due to other keep-edges or remove-edges options
- --keep-edges.input-file FILE
- Only keep edges in FILE (Each id on a single line. Selection files from sumo-gui are also supported) or those which are kept due to other keep-edges or remove-edges options
- --remove-edges.input-file FILE
- Remove edges in FILE. (Each id on a single line. Selection files from sumo-gui are also supported)
- --keep-edges.in-boundary STR[]
- Only keep edges which are located within the given boundary (given either as CARTESIAN corner coordinates <xmin,ymin,xmax,ymax> or as polygon <x0,y0,x1,y1,...>)
- --keep-edges.in-geo-boundary STR[]
- Only keep edges which are located within the given boundary (given either as GEODETIC corner coordinates <lon-min,lat-min,lon-max,lat-max> or as polygon <lon0,lat0,lon1,lat1,...>)
Unregulated Nodes Options:¶
- --keep-nodes-unregulated
- All nodes will be unregulated
- --keep-nodes-unregulated.explicit STR[]
- Do not regulate nodes in STR[]
- --keep-nodes-unregulated.district-nodes
- Do not regulate district nodes
Junctions Options:¶
- --junctions.right-before-left.speed-threshold FLOAT
- Allow building right-before-left junctions when the incoming edge speeds are below FLOAT (m/s)
- --junctions.left-before-right
- Build left-before-right junctions instead of right-before-left junctions
- --no-internal-links
- Omits internal links
- --no-turnarounds
- Disables building turnarounds
- --no-turnarounds.tls
- Disables building turnarounds at tls-controlled junctions
- --no-turnarounds.geometry
- Disables building turnarounds at geometry-like junctions
- --no-turnarounds.except-deadend
- Disables building turnarounds except at dead end junctions
- --no-turnarounds.except-turnlane
- Disables building turnarounds except at at junctions with a dedicated turning lane
- --no-turnarounds.fringe
- Disables building turnarounds at fringe junctions
- --no-left-connections
- Disables building connections to left
- --junctions.join
- Joins junctions that are close to each other (recommended for OSM import)
- --junctions.join-dist FLOAT
- Determines the maximal distance for joining junctions (defaults to 10)
- --junctions.join-same
- Joins junctions that have the same coordinates even if not connected
- --max-join-ids INT
- Abbreviate junction or TLS id if it joins more than INT junctions
- --junctions.corner-detail INT
- Generate INT intermediate points to smooth out intersection corners
- --junctions.internal-link-detail INT
- Generate INT intermediate points to smooth out lanes within the intersection
- --junctions.scurve-stretch FLOAT
- Generate longer intersections to allow for smooth s-curves when the number of lanes changes
- --junctions.join-turns
- Builds common edges for turning connections with common from- and to-edge. This causes discrepancies between geometrical length and assigned length due to averaging but enables lane-changing while turning
- --junctions.limit-turn-speed FLOAT
- Limits speed on junctions to an average lateral acceleration of at most FLOAT m/s^2)
- --junctions.limit-turn-speed.min-angle FLOAT
- Do not limit turn speed for angular changes below FLOAT (degrees). The value is subtracted from the geometric angle before computing the turning radius.
- --junctions.limit-turn-speed.min-angle.railway FLOAT
- Do not limit turn speed for angular changes below FLOAT (degrees) on railway edges. The value is subtracted from the geometric angle before computing the turning radius.
- --junctions.limit-turn-speed.warn.straight FLOAT
- Warn about turn speed limits that reduce the speed of straight connections by more than FLOAT
- --junctions.limit-turn-speed.warn.turn FLOAT
- Warn about turn speed limits that reduce the speed of turning connections (no u-turns) by more than FLOAT
- --junctions.small-radius FLOAT
- Default radius for junctions that do not require wide vehicle turns
- --junctions.higher-speed
- Use maximum value of incoming and outgoing edge speed on junction instead of average
- --internal-junctions.vehicle-width FLOAT
- Assumed vehicle width for computing internal junction positions
- --rectangular-lane-cut
- Forces rectangular cuts between lanes and intersections
- --check-lane-foes.roundabout
- Allow driving onto a multi-lane road if there are foes on other lanes (at roundabouts)
- --check-lane-foes.all
- Allow driving onto a multi-lane road if there are foes on other lanes (everywhere)
Pedestrian Options:¶
- --sidewalks.guess
- Guess pedestrian sidewalks based on edge speed
- --sidewalks.guess.max-speed FLOAT
- Add sidewalks for edges with a speed equal or below the given limit
- --sidewalks.guess.min-speed FLOAT
- Add sidewalks for edges with a speed above the given limit
- --sidewalks.guess.from-permissions
- Add sidewalks for edges that allow pedestrians on any of their lanes regardless of speed
- --sidewalks.guess.exclude STR[]
- Do not guess sidewalks for the given list of edges
- --crossings.guess
- Guess pedestrian crossings based on the presence of sidewalks
- --crossings.guess.speed-threshold FLOAT
- At uncontrolled nodes, do not build crossings across edges with a speed above the threshold
- --walkingareas
- Always build walking areas even if there are no crossings
- --walkingareas.join-dist FLOAT
- Do not create a walkingarea between sidewalks that are connected by a pedestrian junction within FLOAT
Bicycle Options:¶
- --bikelanes.guess
- Guess bike lanes based on edge speed
- --bikelanes.guess.max-speed FLOAT
- Add bike lanes for edges with a speed equal or below the given limit
- --bikelanes.guess.min-speed FLOAT
- Add bike lanes for edges with a speed above the given limit
- --bikelanes.guess.from-permissions
- Add bike lanes for edges that allow bicycles on any of their lanes regardless of speed
- --bikelanes.guess.exclude STR[]
- Do not guess bikelanes for the given list of edges
Report Options:¶
- -v, --verbose
- Switches to verbose output
- --print-options
- Prints option values before processing
- -?, --help
- Prints this screen or selected topics
- -V, --version
- Prints the current version
- -X, --xml-validation STR
- Set schema validation scheme of XML inputs ("never", "local", "auto" or "always")
- -W, --no-warnings
- Disables output of warnings
- --aggregate-warnings INT
- Aggregate warnings of the same type whenever more than INT occur
- -l, --log FILE
- Writes all messages to FILE (implies verbose)
- --message-log FILE
- Writes all non-error messages to FILE (implies verbose)
- --error-log FILE
- Writes all warnings and errors to FILE
Random Number Options:¶
- --random
- Initialises the random number generator with the current system time
- --seed INT
- Initialises the random number generator with the given value
EXAMPLES¶
- netgenerate -c <CONFIGURATION>
- create net from given configuration
- netgenerate --grid [grid-network options] -o <OUTPUTFILE>
- create grid net
- netgenerate --spider [spider-network options] -o <OUTPUTFILE>
- create spider net
- netgenerate --rand [random-network options] -o <OUTPUTFILE>
- create random net
REPORTING BUGS¶
Report bugs at <https://github.com/eclipse/sumo/issues>.
Get in contact via <sumo@dlr.de>.
-
Build features: Linux-5.10.0-20-amd64 x86_64 GNU 12.2.0 None FMI Proj GUI Intl SWIG GDAL FFmpeg OSG GL2PS Eigen
Copyright (C) 2001-2022 German Aerospace Center (DLR) and others; https://sumo.dlr.de
Eclipse SUMO netgenerate Version 1.15.0 is part of SUMO.
This program and the accompanying materials are made available under the terms
of the Eclipse Public License v2.0 which accompanies this distribution, and
is available at http://www.eclipse.org/legal/epl-v20.html
This program may also be made available under the following Secondary
Licenses when the conditions for such availability set forth in the Eclipse
Public License 2.0 are satisfied: GNU General Public License, version 2 or
later which is available at
https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
January 2023 | Eclipse SUMO netgenerate Version 1.15.0 |