Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
M
Map data parser
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Iterations
Wiki
Requirements
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Package registry
Container registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
SWP Datenverwaltung Navigation 2023
Map data parser
Commits
ae8672de
Commit
ae8672de
authored
2 years ago
by
lazarog98
Browse files
Options
Downloads
Patches
Plain Diff
Resolve "Add documentation to readme"
parent
8433bbe1
No related branches found
No related tags found
1 merge request
!30
Resolve "Add documentation to readme"
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
README.md
+37
-21
37 additions, 21 deletions
README.md
mapbuilder/src/main/java/map/builder/osm/OSMJsonUtils.java
+0
-1
0 additions, 1 deletion
mapbuilder/src/main/java/map/builder/osm/OSMJsonUtils.java
with
37 additions
and
22 deletions
README.md
+
37
−
21
View file @
ae8672de
# Map data parser
## Basic architecture concept

Legend:
*
oval - data source
*
blue oval - data generated by us
*
rectangle - a service
*
green outline - microservice
## Development
##### To generate classes from proto definition, one has to execute from the root directory
## General description
This application is intended to be ran as a Kron-job in Docker. It should run once every 24 hours and creates a road network,
which is based on OSM. OSM provides three types of element: nodes, ways and relations. Each element has a lot of meta data,
as well as tags that describe different features. The map data parser filters most of this data away.
Ways that represent streets are turned into segments and ways that represent buildings or other
objects are not used. Only the start and end nodes of segments are container within the road network and overlapping segments
are being split. The road type is defined by the
`highway`
tag.
Relations in OSM represent turn restrictions. The map builder considers only some of those, due to the complexity of certain
turn restrictions and the original scope of the project.
## Installation instructions
First, add an access key to the repo in the
`settings.xml`
of your Maven installation.
```
xml
<servers>
<server>
<id>
protos
</id>
<configuration>
<httpHeaders>
<property>
<name>
Private-Token
</name>
<value>
glpat-LUzA2H9fVytwNmmC-6MH
</value>
</property>
</httpHeaders>
</configuration>
</server>
</servers>
```
First install the protobuf compiler with :
Run
`mvn clean install -U`
to get all the dependencies and then run the application as you would in your IDE.
```
sh
sudo
apt
install
protobuf-compiler
```
The application writes a
`roadnetwork.proto`
file when it's done. This can then be used with the routing server or the debug
tool. Check the respective documentations for further information.
If you want to build the protos from source schema, you should use the command :
### Alternatively
```
sh
protoc
-I
=
./mapbuilder/src/main/java/map/builder/protos/
--java_out
=
./mapbuilder/src/main/java/ ./mapbuilder/src/main/java/map/builder/protos/schema/roadnetwork.proto
```
\ No newline at end of file
You can also use the Docker image and set it up the container in Docker.
\ No newline at end of file
This diff is collapsed.
Click to expand it.
mapbuilder/src/main/java/map/builder/osm/OSMJsonUtils.java
+
0
−
1
View file @
ae8672de
package
map.builder.osm
;
import
map.builder.osm.json.model.*
;
import
org.json.JSONObject
;
import
java.util.List
;
import
java.util.Objects
;
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment