Path: blob/main/tests/netgen/meta/write_template_commented_full/cfg.netgen
194322 views
<?xml version="1.0" encoding="UTF-8"?>
<!-- generated on 2025-11-14T15:07:08.893061+01:00 by Eclipse SUMO netgenerate v1_25_0+0045-28a3daf62ee
-->
<netgenerateConfiguration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://sumo.dlr.de/xsd/netgenerateConfiguration.xsd">
<configuration>
<!-- Loads the named config on startup -->
<configuration-file value="" synonymes="c configuration" type="FILE"/>
<!-- Saves current configuration into FILE -->
<save-configuration value="" synonymes="C save-config" type="FILE"/>
<!-- Enforce relative paths when saving the configuration -->
<save-configuration.relative value="false" synonymes="save-config.relative" type="BOOL"/>
<!-- Saves a configuration template (empty) into FILE -->
<save-template value="" type="FILE"/>
<!-- Saves the configuration schema into FILE -->
<save-schema value="" type="FILE"/>
<!-- Adds comments to saved template, configuration, or schema -->
<save-commented value="" synonymes="save-template.commented" type="BOOL"/>
</configuration>
<grid_network>
<!-- Forces NETGEN to build a grid-like network -->
<grid value="false" synonymes="g grid-net" deprecated="grid-net" type="BOOL"/>
<!-- The number of junctions in both dirs -->
<grid.number value="5" synonymes="grid-number number" deprecated="grid-number" type="INT"/>
<!-- The length of streets in both dirs -->
<grid.length value="100" synonymes="grid-length length" deprecated="grid-length" type="FLOAT"/>
<!-- The number of junctions in x-dir; Overrides --grid-number -->
<grid.x-number value="5" synonymes="grid-x-number x-no" deprecated="grid-x-number" type="INT"/>
<!-- The number of junctions in y-dir; Overrides --grid-number -->
<grid.y-number value="5" synonymes="grid-y-number y-no" deprecated="grid-y-number" type="INT"/>
<!-- The length of horizontal streets; Overrides --grid-length -->
<grid.x-length value="100" synonymes="grid-x-length x-length" deprecated="grid-x-length" type="FLOAT"/>
<!-- The length of vertical streets; Overrides --grid-length -->
<grid.y-length value="100" synonymes="grid-y-length y-length" deprecated="grid-y-length" type="FLOAT"/>
<!-- The length of streets attached at the boundary; 0 means no streets are attached -->
<grid.attach-length value="0" synonymes="attach-length" deprecated="attach-length" type="FLOAT"/>
<!-- The length of streets attached at the boundary in x direction; 0 means no streets are attached -->
<grid.x-attach-length value="0" type="FLOAT"/>
<!-- The length of streets attached at the boundary in y direction; 0 means no streets are attached -->
<grid.y-attach-length value="0" type="FLOAT"/>
</grid_network>
<spider_network>
<!-- Forces NETGEN to build a spider-net-like network -->
<spider value="false" synonymes="s spider-net" deprecated="spider-net" type="BOOL"/>
<!-- The number of axes within the net -->
<spider.arm-number value="7" synonymes="arms spider-arm-number" deprecated="spider-arm-number" type="INT"/>
<!-- The number of circles of the net -->
<spider.circle-number value="5" synonymes="circles spider-circle-number" deprecated="spider-circle-number" type="INT"/>
<!-- The distances between the circles -->
<spider.space-radius value="100" synonymes="radius spider-space-rad" deprecated="spider-space-rad" type="FLOAT"/>
<!-- Omit the central node of the network -->
<spider.omit-center value="false" synonymes="nocenter spider-omit-center" deprecated="spider-omit-center" type="BOOL"/>
<!-- The length of streets attached at the boundary; 0 means no streets are attached -->
<spider.attach-length value="0" type="FLOAT"/>
</spider_network>
<random_network>
<!-- Forces NETGEN to build a random network -->
<rand value="false" synonymes="r random-net" deprecated="random-net" type="BOOL"/>
<!-- Describes how many times an edge shall be added to the net -->
<rand.iterations value="100" synonymes="iterations rand-iterations" deprecated="rand-iterations" type="INT"/>
<!-- The maximum distance for each edge -->
<rand.max-distance value="250" synonymes="max-dist rand-max-distance" deprecated="rand-max-distance" type="FLOAT"/>
<!-- The minimum distance for each edge -->
<rand.min-distance value="100" synonymes="min-dist rand-min-distance" deprecated="rand-min-distance" type="FLOAT"/>
<!-- The minimum angle for each pair of (bidirectional) roads in DEGREES -->
<rand.min-angle value="45" synonymes="min-angle rand-min-anglee" deprecated="rand-min-anglee" type="FLOAT"/>
<!-- The number of tries for creating each node -->
<rand.num-tries value="50" synonymes="num-tries rand-num-tries" deprecated="rand-num-tries" type="INT"/>
<!-- Probability for roads to continue at each node -->
<rand.connectivity value="0.95" synonymes="connectivity rand-connectivity" deprecated="rand-connectivity" type="FLOAT"/>
<!-- Probability for a node having at most 1 neighbor -->
<rand.neighbor-dist1 value="0" synonymes="dist1 rand-neighbor-dist1" deprecated="rand-neighbor-dist1" type="FLOAT"/>
<!-- Probability for a node having at most 2 neighbors -->
<rand.neighbor-dist2 value="0" synonymes="dist2 rand-neighbor-dist2" deprecated="rand-neighbor-dist2" type="FLOAT"/>
<!-- Probability for a node having at most 3 neighbors -->
<rand.neighbor-dist3 value="10" synonymes="dist3 rand-neighbor-dist3" deprecated="rand-neighbor-dist3" type="FLOAT"/>
<!-- Probability for a node having at most 4 neighbors -->
<rand.neighbor-dist4 value="10" synonymes="dist4 rand-neighbor-dist4" deprecated="rand-neighbor-dist4" type="FLOAT"/>
<!-- Probability for a node having at most 5 neighbors -->
<rand.neighbor-dist5 value="2" synonymes="dist5 rand-neighbor-dist5" deprecated="rand-neighbor-dist5" type="FLOAT"/>
<!-- Probability for a node having at most 6 neighbors -->
<rand.neighbor-dist6 value="1" synonymes="dist6 rand-neighbor-dist6" deprecated="rand-neighbor-dist6" type="FLOAT"/>
<!-- Place nodes on a regular grid with spacing rand.min-distance -->
<rand.grid value="false" type="BOOL"/>
</random_network>
<input>
<!-- Read edge-type defs from FILE -->
<type-files value="" synonymes="t" type="FILE"/>
</input>
<output>
<!-- Include license info into every output file -->
<write-license value="false" type="BOOL"/>
<!-- Write parsable metadata (configuration etc.) instead of comments -->
<write-metadata value="false" type="BOOL"/>
<!-- Prefix which is applied to all output files. The special string 'TIME' is replaced by the current time. -->
<output-prefix value="" type="STR"/>
<!-- Suffix which is applied to all output files. The special string 'TIME' is replaced by the current time. -->
<output-suffix value="" type="STR"/>
<!-- Defines the number of digits after the comma for floating point output -->
<precision value="2" type="INT"/>
<!-- Defines the number of digits after the comma for lon,lat output -->
<precision.geo value="6" type="INT"/>
<!-- Defines the standard compression algorithm (currently only for parquet output) -->
<output.compression value="" type="STR"/>
<!-- Defines the standard output format if not derivable from the file name ('xml', 'csv', 'parquet') -->
<output.format value="xml" type="STR"/>
<!-- How to derive column headers from attribute names ('none', 'tag', 'auto', 'plain') -->
<output.column-header value="tag" type="STR"/>
<!-- Separator in CSV output -->
<output.column-separator value=";" type="STR"/>
<!-- Write time values as hour:minute:second or day:hour:minute:second rather than seconds -->
<human-readable-time value="false" synonymes="H" type="BOOL"/>
<!-- The Ids of generated nodes use an alphanumerical code for easier readability when possible -->
<alphanumerical-ids value="true" type="BOOL"/>
<!-- The generated net will be written to FILE -->
<output-file value="" synonymes="o output sumo-output" type="FILE"/>
<!-- Prefix of files to write plain xml nodes, edges and connections to -->
<plain-output-prefix value="" synonymes="p plain plain-output" type="FILE"/>
<!-- Write all lanes and their attributes even when they are not customized -->
<plain-output.lanes value="false" type="BOOL"/>
<!-- Writes information about joined junctions to FILE (can be loaded as additional node-file to reproduce joins -->
<junctions.join-output value="" type="FILE"/>
<!-- Defines a prefix for edge and junction IDs -->
<prefix value="" type="STR"/>
<!-- Defines a prefix for junction IDs -->
<prefix.junction value="" type="STR"/>
<!-- Defines a prefix for edge IDs -->
<prefix.edge value="" type="STR"/>
<!-- The generated net will be written to FILE using Amitran format -->
<amitran-output value="" type="FILE"/>
<!-- The generated net will be written to FILE using MATSim format -->
<matsim-output value="" type="FILE"/>
<!-- The generated net will be written to FILE using OpenDRIVE format -->
<opendrive-output value="" type="FILE"/>
<!-- The generated net will be written to dlr-navteq files with the given PREFIX -->
<dlr-navteq-output value="" type="FILE"/>
<!-- The dlr-navteq output format version to write -->
<dlr-navteq.version value="6.5" type="STR"/>
<!-- The network coordinates are written with the specified level of output precision -->
<dlr-navteq.precision value="2" type="INT"/>
<!-- Street names will be included in the output (if available) -->
<output.street-names value="false" type="BOOL"/>
<!-- Writes original names, if given, as parameter -->
<output.original-names value="false" type="BOOL"/>
<!-- Writes IDs of nodes remove with --geometry.remove into edge param -->
<output.removed-nodes value="false" type="BOOL"/>
<!-- Writes street signs as POIs to FILE -->
<street-sign-output value="" type="FILE"/>
<!-- Builds parameterized curves whenever the angular change between straight segments exceeds FLOAT degrees -->
<opendrive-output.straight-threshold value="1e-08" type="FLOAT"/>
</output>
<processing>
<!-- Generate INT left-turn lanes -->
<turn-lanes value="0" type="INT"/>
<!-- Set the length of generated turning lanes to FLOAT -->
<turn-lanes.length value="20" type="FLOAT"/>
<!-- Apply random spatial perturbation in x direction according to the given distribution -->
<perturb-x value="0" type="STR"/>
<!-- Apply random spatial perturbation in y direction according to the given distribution -->
<perturb-y value="0" type="STR"/>
<!-- Apply random spatial perturbation in z direction according to the given distribution -->
<perturb-z value="0" type="STR"/>
<!-- Defines the probability to build a reverse edge -->
<bidi-probability value="1" synonymes="bidi rand-bidi-probability rand.bidi-probability" deprecated="rand-bidi-probability" type="FLOAT"/>
<!-- Draw lane numbers randomly from [1,default.lanenumber] -->
<random-lanenumber value="false" synonymes="rand.random-lanenumber" type="BOOL"/>
<!-- Draw edge priority randomly from [1,default.priority] -->
<random-priority value="false" synonymes="rand.random-priority" type="BOOL"/>
<!-- Draw edge type randomly from all loaded types -->
<random-type value="false" type="BOOL"/>
<!-- Remaps alphanumerical IDs of nodes and edges to ensure that all IDs are integers -->
<numerical-ids value="false" type="BOOL"/>
<!-- Remaps IDs of nodes to integers starting at INT -->
<numerical-ids.node-start value="2147483647" type="INT"/>
<!-- Remaps IDs of edges to integers starting at INT -->
<numerical-ids.edge-start value="2147483647" type="INT"/>
<!-- Ensures that generated ids do not included any of the typed IDs from FILE (sumo-gui selection file format) -->
<reserved-ids value="" type="FILE"/>
<!-- Ensures that objects with typed IDs from FILE (sumo-gui selection file format) are not renamed -->
<kept-ids value="" type="FILE"/>
<!-- Splits edges across geometry nodes -->
<geometry.split value="false" synonymes="split-geometry" deprecated="split-geometry" type="BOOL"/>
<!-- Replace nodes which only define edge geometry by geometry points (joins edges) -->
<geometry.remove value="false" synonymes="R remove-geometry" deprecated="remove-geometry" type="BOOL"/>
<!-- Ensure that the given list of edges is not modified -->
<geometry.remove.keep-edges.explicit value="" type="STR[]"/>
<!-- 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.keep-edges.input-file value="" type="FILE"/>
<!-- Allow merging edges with differing attributes when their length is below min-length -->
<geometry.remove.min-length value="0" type="FLOAT"/>
<!-- Allow merging edges with differing lane widths if the difference is below FLOAT -->
<geometry.remove.width-tolerance value="0" type="FLOAT"/>
<!-- Prevent removal of junctions with a size above FLOAT as defined by custom edge endpoints -->
<geometry.remove.max-junction-size value="-1" type="FLOAT"/>
<!-- splits geometry to restrict segment length -->
<geometry.max-segment-length value="0" type="FLOAT"/>
<!-- Warn about edge geometries with a grade in % above FLOAT. -->
<geometry.max-grade value="10" type="FLOAT"/>
<!-- Smooth edge geometries with a grade above the warning threshold. -->
<geometry.max-grade.fix value="true" type="BOOL"/>
<!-- Turn off normalizing node positions -->
<offset.disable-normalization value="false" synonymes="disable-normalize-node-positions" deprecated="disable-normalize-node-positions" type="BOOL"/>
<!-- Adds FLOAT to net x-positions -->
<offset.x value="0" synonymes="x-offset-to-apply" deprecated="x-offset-to-apply" type="FLOAT"/>
<!-- Adds FLOAT to net y-positions -->
<offset.y value="0" synonymes="y-offset-to-apply" deprecated="y-offset-to-apply" type="FLOAT"/>
<!-- Adds FLOAT to net z-positions -->
<offset.z value="0" type="FLOAT"/>
<!-- Flips the y-coordinate along zero -->
<flip-y-axis value="false" synonymes="flip-y" type="BOOL"/>
<!-- Enable roundabout-guessing -->
<roundabouts.guess value="true" synonymes="guess-roundabouts" deprecated="guess-roundabouts" type="BOOL"/>
<!-- Structures with a circumference above FLOAT threshold are not classified as roundabout -->
<roundabouts.guess.max-length value="3500" type="FLOAT"/>
<!-- Default visibility when approaching a roundabout -->
<roundabouts.visibility-distance value="9" type="FLOAT"/>
<!-- Enable guessing of opposite direction lanes usable for overtaking -->
<opposites.guess value="false" type="BOOL"/>
<!-- Ensure that opposite edges have the same length -->
<opposites.guess.fix-lengths value="true" type="BOOL"/>
<!-- Enable guessing of network fringe nodes -->
<fringe.guess value="false" type="BOOL"/>
<!-- Guess disconnected edges above the given speed as outer fringe -->
<fringe.guess.speed-threshold value="13.8889" type="FLOAT"/>
<!-- Assumes left-hand traffic on the network -->
<lefthand value="false" type="BOOL"/>
<!-- Merges edges which connect the same nodes and are close to each other (recommended for VISSIM import) -->
<edges.join value="false" type="BOOL"/>
</processing>
<building_defaults>
<!-- The default number of lanes in an edge -->
<default.lanenumber value="1" synonymes="L lanenumber" deprecated="lanenumber" type="INT"/>
<!-- The default width of lanes -->
<default.lanewidth value="-1" synonymes="lanewidth" deprecated="lanewidth" type="FLOAT"/>
<!-- The default method for computing lane shapes from edge shapes -->
<default.spreadtype value="right" type="STR"/>
<!-- The default speed on an edge (in m/s) -->
<default.speed value="13.89" synonymes="S speed" deprecated="speed" type="FLOAT"/>
<!-- The default friction on an edge -->
<default.friction value="1" synonymes="friction" deprecated="friction" type="FLOAT"/>
<!-- The default priority of an edge -->
<default.priority value="-1" synonymes="P priority" deprecated="priority" type="INT"/>
<!-- The default edge type -->
<default.type value="" type="STR"/>
<!-- The default width of added sidewalks -->
<default.sidewalk-width value="2" type="FLOAT"/>
<!-- The default width of added bike lanes -->
<default.bikelane-width value="1" type="FLOAT"/>
<!-- The default width of a pedestrian crossing -->
<default.crossing-width value="4" type="FLOAT"/>
<!-- The default speed 'limit' on a pedestrian crossing (in m/s) -->
<default.crossing-speed value="2.78" type="FLOAT"/>
<!-- The default speed 'limit' on a pedestrian walkingarea (in m/s) -->
<default.walkingarea-speed value="2.78" type="FLOAT"/>
<!-- The default for allowed vehicle classes -->
<default.allow value="" type="STR"/>
<!-- The default for disallowed vehicle classes -->
<default.disallow value="" type="STR"/>
<!-- Whether junctions should be kept clear by default -->
<default.junctions.keep-clear value="true" type="BOOL"/>
<!-- The default turning radius of intersections -->
<default.junctions.radius value="4" type="FLOAT"/>
<!-- The default length when overriding connection lengths -->
<default.connection-length value="-1" type="FLOAT"/>
<!-- Whether/where connections should have an internal junction -->
<default.connection.cont-pos value="-1" type="FLOAT"/>
<!-- The default algorithm for computing right of way rules ('default', 'edgePriority') -->
<default.right-of-way value="default" 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) -->
<default-junction-type value="" synonymes="j junctions" type="STR"/>
</building_defaults>
<tls_building>
<!-- Interprets STR[] as list of junctions to be controlled by TLS -->
<tls.set value="" synonymes="explicite-tls" deprecated="explicite-tls" type="STR[]"/>
<!-- Interprets STR[] as list of junctions to be not controlled by TLS -->
<tls.unset value="" synonymes="explicite-no-tls" deprecated="explicite-no-tls" type="STR[]"/>
<!-- Turns on TLS guessing -->
<tls.guess value="false" synonymes="guess-tls" deprecated="guess-tls" type="BOOL"/>
<!-- Sets minimum value for the sum of all incoming lane speeds when guessing TLS -->
<tls.guess.threshold value="69.4444" type="FLOAT"/>
<!-- Includes node clusters into guess -->
<tls.guess.joining value="false" synonymes="tls-guess.joining" deprecated="tls-guess.joining" type="BOOL"/>
<!-- Tries to cluster tls-controlled nodes -->
<tls.join value="false" synonymes="try-join-tls" deprecated="try-join-tls" type="BOOL"/>
<!-- Determines the maximal distance for joining traffic lights (defaults to 20) -->
<tls.join-dist value="20" type="FLOAT"/>
<!-- Interprets STR[] as list of tls ids to exclude from joining -->
<tls.join-exclude value="" type="STR[]"/>
<!-- 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.uncontrolled-within value="false" type="BOOL"/>
<!-- Do not build mutually conflicting response matrix, potentially ignoring vehicles that are stuck at an internal junction when their phase has ended -->
<tls.ignore-internal-junction-jam value="false" type="BOOL"/>
<!-- Use INT as cycle duration -->
<tls.cycle.time value="90" type="INT"/>
<!-- Use INT as green phase duration -->
<tls.green.time value="31" synonymes="traffic-light-green" deprecated="traffic-light-green" type="INT"/>
<!-- Defines smallest vehicle deceleration -->
<tls.yellow.min-decel value="3" synonymes="D min-decel" deprecated="min-decel" type="FLOAT"/>
<!-- Given yellow times are patched even if being too short -->
<tls.yellow.patch-small value="false" synonymes="patch-small-tyellow" deprecated="patch-small-tyellow" type="BOOL"/>
<!-- Set INT as fixed time for yellow phase durations -->
<tls.yellow.time value="-1" synonymes="traffic-light-yellow" deprecated="traffic-light-yellow" type="INT"/>
<!-- Set INT as fixed time for red phase duration at traffic lights that do not have a conflicting flow -->
<tls.red.time value="5" type="INT"/>
<!-- Set INT as fixed time for intermediate red phase after every switch -->
<tls.allred.time value="0" type="INT"/>
<!-- Use FLOAT as threshold for allowing left-turning vehicles to move in the same phase as oncoming straight-going vehicles -->
<tls.minor-left.max-speed value="19.44" type="FLOAT"/>
<!-- Use INT as green phase duration for left turns (s). Setting this value to 0 disables additional left-turning phases -->
<tls.left-green.time value="6" type="INT"/>
<!-- Set INT as fixed time for intermediate vehext phase after every switch -->
<tls.nema.vehExt value="2" type="INT"/>
<!-- Set INT as fixed time for intermediate NEMA yellow phase after every switch -->
<tls.nema.yellow value="3" type="INT"/>
<!-- Set INT as fixed time for intermediate NEMA red phase after every switch -->
<tls.nema.red value="2" type="INT"/>
<!-- Use INT as minimum green duration for pedestrian crossings (s). -->
<tls.crossing-min.time value="4" type="INT"/>
<!-- Use INT as clearance time for pedestrian crossings (s). -->
<tls.crossing-clearance.time value="5" type="INT"/>
<!-- Use INT as green phase duration for pedestrian scramble phase (s). -->
<tls.scramble.time value="5" type="INT"/>
<!-- TLSs in STR[] will be shifted by half-phase -->
<tls.half-offset value="" synonymes="tl-logics.half-offset" deprecated="tl-logics.half-offset" type="STR[]"/>
<!-- TLSs in STR[] will be shifted by quarter-phase -->
<tls.quarter-offset value="" synonymes="tl-logics.quarter-offset" deprecated="tl-logics.quarter-offset" type="STR[]"/>
<!-- TLSs with unspecified type will use STR as their algorithm -->
<tls.default-type value="static" type="STR"/>
<!-- Set phase layout four grouping opposite directions or grouping all movements for one incoming edge ['opposites', 'incoming'] -->
<tls.layout value="opposites" type="STR"/>
<!-- Avoid phases with green and red signals for different connections from the same lane -->
<tls.no-mixed value="false" type="BOOL"/>
<!-- Default minimum phase duration for traffic lights with variable phase length -->
<tls.min-dur value="5" type="INT"/>
<!-- Default maximum phase duration for traffic lights with variable phase length -->
<tls.max-dur value="50" type="INT"/>
<!-- Assign the same tls link index to connections that share the same states -->
<tls.group-signals value="false" type="BOOL"/>
<!-- Assign a distinct tls link index to every connection -->
<tls.ungroup-signals value="false" type="BOOL"/>
<!-- rebuild all traffic light plans in the network -->
<tls.rebuild value="false" type="BOOL"/>
<!-- Does not instantiate traffic lights at geometry-like nodes -->
<tls.discard-simple value="false" type="BOOL"/>
<!-- List rail classes that may run without rail signals -->
<railway.signal.permit-unsignalized value="tram,cable_car" type="STR[]"/>
</tls_building>
<edge_removal>
<!-- Only keep edges with speed in meters/second > FLOAT -->
<keep-edges.min-speed value="-1" synonymes="edges-min-speed" deprecated="edges-min-speed" type="FLOAT"/>
<!-- Remove edges in STR[] -->
<remove-edges.explicit value="" synonymes="remove-edges" type="STR[]"/>
<!-- Only keep edges in STR[] or those which are kept due to other keep-edges or remove-edges options -->
<keep-edges.explicit value="" synonymes="keep-edges" type="STR[]"/>
<!-- 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 -->
<keep-edges.input-file value="" type="FILE"/>
<!-- Remove edges in FILE. (Each id on a single line. Selection files from sumo-gui are also supported) -->
<remove-edges.input-file value="" type="FILE"/>
<!-- 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-boundary value="" type="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,...>) -->
<keep-edges.in-geo-boundary value="" type="STR[]"/>
<!-- Only keep lanes with width in meters > FLOAT -->
<keep-lanes.min-width value="0.01" type="FLOAT"/>
</edge_removal>
<unregulated_nodes>
<!-- All nodes will be unregulated -->
<keep-nodes-unregulated value="false" synonymes="keep-unregulated" type="BOOL"/>
<!-- Do not regulate nodes in STR[] -->
<keep-nodes-unregulated.explicit value="" synonymes="keep-unregulated.explicit keep-unregulated.nodes" deprecated="keep-unregulated.nodes" type="STR[]"/>
<!-- Do not regulate district nodes -->
<keep-nodes-unregulated.district-nodes value="false" synonymes="keep-unregulated.district-nodes" type="BOOL"/>
</unregulated_nodes>
<junctions>
<!-- Allow building right-before-left junctions when the incoming edge speeds are below FLOAT (m/s) -->
<junctions.right-before-left.speed-threshold value="13.6111" type="FLOAT"/>
<!-- Build left-before-right junctions instead of right-before-left junctions -->
<junctions.left-before-right value="false" type="BOOL"/>
<!-- Omits internal links -->
<no-internal-links value="false" type="BOOL"/>
<!-- Disables building turnarounds -->
<no-turnarounds value="false" type="BOOL"/>
<!-- Disables building turnarounds at tls-controlled junctions -->
<no-turnarounds.tls value="false" synonymes="no-tls-turnarounds" deprecated="no-tls-turnarounds" type="BOOL"/>
<!-- Disables building turnarounds at geometry-like junctions -->
<no-turnarounds.geometry value="true" type="BOOL"/>
<!-- Disables building turnarounds except at dead end junctions -->
<no-turnarounds.except-deadend value="false" type="BOOL"/>
<!-- Disables building turnarounds except at at junctions with a dedicated turning lane -->
<no-turnarounds.except-turnlane value="false" type="BOOL"/>
<!-- Disables building turnarounds at fringe junctions -->
<no-turnarounds.fringe value="false" type="BOOL"/>
<!-- Disables building connections to left -->
<no-left-connections value="false" type="BOOL"/>
<!-- Joins junctions that are close to each other (recommended for OSM import) -->
<junctions.join value="false" type="BOOL"/>
<!-- Determines the maximal distance for joining junctions (defaults to 10) -->
<junctions.join-dist value="10" type="FLOAT"/>
<!-- The angular threshold in degress for rejection of parallel edges when joining junctions -->
<junctions.join.parallel-threshold value="30" type="FLOAT"/>
<!-- Joins junctions that have similar coordinates even if not connected -->
<junctions.join-same value="-1" type="FLOAT"/>
<!-- Abbreviate junction or TLS id if it joins more than INT junctions -->
<max-join-ids value="4" type="INT"/>
<!-- Generate INT intermediate points to smooth out intersection corners -->
<junctions.corner-detail value="5" type="INT"/>
<!-- Generate INT intermediate points to smooth out lanes within the intersection -->
<junctions.internal-link-detail value="5" type="INT"/>
<!-- Generate longer intersections to allow for smooth s-curves when the number of lanes changes -->
<junctions.scurve-stretch value="0" type="FLOAT"/>
<!-- 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.join-turns value="false" type="BOOL"/>
<!-- Limits speed on junctions to an average lateral acceleration of at most FLOAT (m/s^2) -->
<junctions.limit-turn-speed value="5.5" type="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 value="15" type="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.min-angle.railway value="35" type="FLOAT"/>
<!-- Warn about turn speed limits that reduce the speed of straight connections by more than FLOAT -->
<junctions.limit-turn-speed.warn.straight value="5" type="FLOAT"/>
<!-- Warn about turn speed limits that reduce the speed of turning connections (no u-turns) by more than FLOAT -->
<junctions.limit-turn-speed.warn.turn value="22" type="FLOAT"/>
<!-- Default radius for junctions that do not require wide vehicle turns -->
<junctions.small-radius value="1.5" type="FLOAT"/>
<!-- Use maximum value of incoming and outgoing edge speed on junction instead of average -->
<junctions.higher-speed value="false" type="BOOL"/>
<!-- Build junctions with minimal shapes (ignoring edge overlap) -->
<junctions.minimal-shape value="false" type="BOOL"/>
<!-- Build junction shapes based on edge endpoints (ignoring edge overlap) -->
<junctions.endpoint-shape value="false" type="BOOL"/>
<!-- Assumed vehicle width for computing internal junction positions -->
<internal-junctions.vehicle-width value="1.8" type="FLOAT"/>
<!-- Forces rectangular cuts between lanes and intersections -->
<rectangular-lane-cut value="false" type="BOOL"/>
<!-- Allow driving onto a multi-lane road if there are foes on other lanes (at roundabouts) -->
<check-lane-foes.roundabout value="true" type="BOOL"/>
<!-- Allow driving onto a multi-lane road if there are foes on other lanes (everywhere) -->
<check-lane-foes.all value="false" type="BOOL"/>
</junctions>
<pedestrian>
<!-- Guess pedestrian sidewalks based on edge speed -->
<sidewalks.guess value="false" type="BOOL"/>
<!-- Add sidewalks for edges with a speed equal or below the given limit -->
<sidewalks.guess.max-speed value="13.89" type="FLOAT"/>
<!-- Add sidewalks for edges with a speed above the given limit -->
<sidewalks.guess.min-speed value="5.8" type="FLOAT"/>
<!-- Add sidewalks for edges that allow pedestrians on any of their lanes regardless of speed -->
<sidewalks.guess.from-permissions value="false" type="BOOL"/>
<!-- Do not guess sidewalks for the given list of edges -->
<sidewalks.guess.exclude value="" type="STR[]"/>
<!-- Guess pedestrian crossings based on the presence of sidewalks -->
<crossings.guess value="false" type="BOOL"/>
<!-- At uncontrolled nodes, do not build crossings across edges with a speed above the threshold -->
<crossings.guess.speed-threshold value="13.89" type="FLOAT"/>
<!-- Give priority to guessed crossings at roundabouts -->
<crossings.guess.roundabout-priority value="true" type="BOOL"/>
<!-- Always build walking areas even if there are no crossings -->
<walkingareas value="false" type="BOOL"/>
<!-- Do not create a walkingarea between sidewalks that are connected by a pedestrian junction within FLOAT -->
<walkingareas.join-dist value="15" type="FLOAT"/>
</pedestrian>
<bicycle>
<!-- Guess bike lanes based on edge speed -->
<bikelanes.guess value="false" type="BOOL"/>
<!-- Add bike lanes for edges with a speed equal or below the given limit -->
<bikelanes.guess.max-speed value="22.22" type="FLOAT"/>
<!-- Add bike lanes for edges with a speed above the given limit -->
<bikelanes.guess.min-speed value="5.8" type="FLOAT"/>
<!-- Add bike lanes for edges that allow bicycles on any of their lanes regardless of speed -->
<bikelanes.guess.from-permissions value="false" type="BOOL"/>
<!-- Do not guess bikelanes for the given list of edges -->
<bikelanes.guess.exclude value="" type="STR[]"/>
</bicycle>
<report>
<!-- Switches to verbose output -->
<verbose value="false" synonymes="v" type="BOOL"/>
<!-- Prints option values before processing -->
<print-options value="false" type="BOOL"/>
<!-- Prints this screen or selected topics -->
<help value="false" synonymes="?" type="BOOL"/>
<!-- Prints the current version -->
<version value="false" synonymes="V" type="BOOL"/>
<!-- Set schema validation scheme of XML inputs ("never", "local", "auto" or "always") -->
<xml-validation value="local" synonymes="X" type="STR"/>
<!-- Disables output of warnings -->
<no-warnings value="false" synonymes="W suppress-warnings" deprecated="suppress-warnings" type="BOOL"/>
<!-- Aggregate warnings of the same type whenever more than INT occur -->
<aggregate-warnings value="-1" type="INT"/>
<!-- Writes all messages to FILE (implies verbose) -->
<log value="" synonymes="l log-file" type="FILE"/>
<!-- Writes all non-error messages to FILE (implies verbose) -->
<message-log value="" type="FILE"/>
<!-- Writes all warnings and errors to FILE -->
<error-log value="" type="FILE"/>
<!-- Writes timestamps in front of all messages -->
<log.timestamps value="false" type="BOOL"/>
<!-- Writes process ID in front of all messages -->
<log.processid value="false" type="BOOL"/>
<!-- Language to use in messages -->
<language value="C" type="STR"/>
</report>
<random_number>
<!-- Initialises the random number generator with the current system time -->
<random value="false" synonymes="abs-rand" deprecated="abs-rand" type="BOOL"/>
<!-- Initialises the random number generator with the given value -->
<seed value="23423" synonymes="srand" deprecated="srand" type="INT"/>
</random_number>
</netgenerateConfiguration>