POLYCONVERT
Contents |
From 30.000 feet
POLYCONVERT imports geometrical shapes (polygons or points of interest) from different sources, converts them to a representation that may be visualized using SUMO-GUI.
- Purpose: Polygon and POI import, conversion, and projection
- System: portable (Linux/Windows is tested); runs on command line
- Input (mandatory): polygons or pois
- Output: SUMO-shape file
- Programming Language: C++
Features
- Imports OSM, VISUM, Elmar, XML, ArcView shape files
- per-type import settings
- projections using a given proj.4-definition or via a matching network
- Writes simulation shape files usable within SUMO-GUI and SUMO
Usage Description
POLYCONVERT is able to import shapes from different file types. Normally, for importing data of a certain type, the type name is used as option name and the value indicates the position of the file. So
polyconvert --visum mynet.net -o converted.poi.xml
imports from a VISUM-net file.
Options
You may use a XML schema definition file for setting up a POLYCONVERT configuration: polyconvertConfiguration.xsd.
Configuration
All applications of the SUMO-suite handle configuration options the same way. These options are discussed at Basics/Using the Command Line Applications#Configuration Files.
| Option | Description |
|---|---|
| -c <FILE> --configuration-file <FILE> | Loads the named config on startup |
| --save-configuration <FILE> | Saves current configuration into FILE |
| --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; default: false |
Input
POLYCONVERT is capable to apply different attributes to the imported shapes in dependence of their "type". Not all imported formats have a type information. When using shape files, for example, all instances of an artifact type are normally stored in a distinct shape file.
| Option | Description |
|---|---|
| -n <FILE> --net-file <FILE> | Loads SUMO-network FILE as reference to offset and projection |
| --dlr-navteq-poly-files <FILE> | Reads polygons from FILE assuming they're coded in DLR-Navteq (Elmar)-format |
| --dlr-navteq-poi-files <FILE> | Reads pois from FILE+ assuming they're coded in DLR-Navteq (Elmar)-format |
| --visum-files <FILE> | Reads polygons from FILE assuming it's a Visum-net |
| --xml-files <FILE> | Reads pois and shapes from FILE assuming they're coded in XML |
| --osm-files <FILE> | Reads pois from FILE+ assuming they're coded in OSM |
| --osm.keep-full-type | The type will be made of the key-value - pair; default: false |
| --osm.use-name | The id will be set from the given 'name' attribute; default: false |
| --shapefile-prefixes <FILE> | Reads shapes from shapefiles FILE+ |
| --shapefile.guess-projection | Guesses the shapefile's projection |
| --shapefile.id-column <ID> | Defines in which column the id can be found |
| --type-file <FILE> | Reads types from FILE |
Output
All imported shapes that have not been discarded are written into a file which has to be defined using --output <FILE>.
| Option | Description |
|---|---|
| -o <FILE> --output-file <FILE> | Write generated polygons/pois to FILE; default: polygons.xml |
Projection
One of the major uses of POLYCONVERT is to apply a projection on the read shapes. Normally, one wants the shapes to be aligned in accordance to a previously imported road network. In this case, the network should be given using --net-file <FILE>. But it is also possible to use a different projection. In any case, if the read coordinates shall be changed, --use-projection must be given.
| Option | Description |
|---|---|
| --simple-projection | Uses a simple method for projection; default: false |
| --proj.scale <INT> | Number of places to shift decimal point to right in geo-coordinates; default: 0 |
| --proj.utm | Determine the UTM zone (for a universal transversal mercator projection based on the WGS84 ellipsoid); default: false |
| --proj.dhdn | Determine the DHDN zone (for a transversal mercator projection based on the bessel ellipsoid); default: false |
| --proj <STRING> | Uses STR as proj.4 definition for projection; default: ! |
| --proj.inverse | Inverses projection; default: false |
Pruning
Sometimes, shapes cover a much larger area than the network. In order to reduce the amount of data, one can force POLYCONVERT to prune the imported data on the network's or a given boundary. Read shapes which are completely outside this boundary are discarded in these cases.
| Option | Description |
|---|---|
| --prune.in-net | Enables pruning on net boundaries; default: false |
| --prune.in-net.offsets <STRING> | Uses STR as offset definition added to the net boundaries; default: 0,0,0,0 |
| --prune.boundary <STRING> | Uses STR as pruning boundary |
| --prune.keep-list <STRING> | Items in STR will be kept though out of boundary |
| --prune.explicit <STRING> | Items with names in STR will be removed |
Processing
| Option | Description |
|---|---|
| --offset.x <FLOAT> | Adds FLOAT to net x-positions; default: 0 |
| --offset.y <FLOAT> | Adds FLOAT to net y-positions; default: 0 |
| --all-attributes <FLOAT> | Imports all attributes as key/value pairs; default: false |
Building Defaults
When importing shapes for which no type-dependent attributes have been given, the following default values are used which can be changed on the command line.
| Option | Description |
|---|---|
| --color <COLOR> | Sets COLOR as default color; default: 0.2,0.5,1 |
| --prefix <STRING> | Sets STR as default prefix |
| --type <STRING> | Sets STR as default type; default: "unknown" |
| --layer <INT> | Sets INT as default layer; default: -1 |
| --discard | Sets default action to discard; default: false |
Report
All applications of the SUMO-suite handle most of the reporting options the same way. These options are discussed at Basics/Using the Command Line Applications#Reporting Options.
| Option | Description |
|---|---|
| -v --verbose | Switches to verbose output; default: false |
| -p --print-options | Prints option values before processing; default: false |
| -? --help | Prints this screen; default: false |
| -V --version | Prints the current version; default: false |
| -W --no-warnings | Disables output of warnings; default: false |
| -l <FILE> --log <FILE> | Writes all messages to FILE |
| --message-log <FILE> | Writes all non-error messages to FILE |
| --error-log <FILE> | Writes all warnings and errors to FILE |