Commit Graph

45 Commits (master)

Author SHA1 Message Date
Markus Koch f1868aba04 Implement net_meta info for nodes
This fixes #6.
2021-06-20 14:48:38 +02:00
Markus Koch ff214722a8 Also check if the new path intersects for path_b 2021-06-20 14:46:07 +02:00
Markus Koch 7753ce8477 Only iterate from path_b to path_new when intersecting 2021-06-20 14:44:09 +02:00
Markus Koch 6ffee116c7 Print cost in search result 2021-03-13 13:07:33 +01:00
Markus Koch e01245cb98 Do not use z-coordinate for speed on TRAINLINE or ACCESS
Using the z-coordinate as is is a bad idea. When intersecting, a
new node will be generated. What z-coord should it be? This node
can now be part of two distinct types with different meanings for
it. So we need to implement weight as a path argument.

This commit hardcodes the speed for trains and access pathways as
a temporary workaround.
2021-03-13 13:02:19 +01:00
Markus Koch b12da0e421 Handle possible NULL-pointers for paths when rehashing the route 2021-03-13 12:08:43 +01:00
Markus Koch 50c39a52bb Never intersect trainlines 2021-03-13 11:27:50 +01:00
Markus Koch 9ce5765192 Set ACCESS speed to 99 until all problems with this are resolved 2021-03-04 22:02:31 +01:00
Markus Koch f37ec6d03f Also check access for dijkstra_net_meta_new_to_list 2021-03-04 22:01:13 +01:00
Markus Koch 12d5bdc738 Strdup access 2021-03-04 22:00:54 +01:00
Markus Koch faa5d7ca4b Introduce a penalty for entering / leaving the train
Done by upping the cost for walking on an access layer.
2021-02-26 19:33:21 +01:00
Markus Koch aa7256c12e Only allow to start on streets 2021-02-26 19:27:26 +01:00
Markus Koch a87ca8a949 Add example GeoJson for testing 2021-02-26 19:18:10 +01:00
Markus Koch 6ee084472a Implement trainline support 2021-02-26 19:15:48 +01:00
Markus Koch 6d252d7755 Increase iteration limit to 5000
I should really make this a command line argument, but I'm to tired
right now... ZZzzzz...
2021-02-04 23:51:55 +01:00
Markus Koch 36f4f48287 Fix path intersection algorithm
I forgot that, when splitting a path, I need to also check the newly
generated ("right") segment against all (following) existing path
segments because the original segment is now shrunk to the size of
the new "left" one, and will therefore not intersect every possible
line. (But you still need to keep checking with it because there is
not guarantee that the line we just intersected with was the physi-
cally closest to the starting point, it was just the first in memory.)
2021-02-04 23:36:37 +01:00
Markus Koch 5db3ad8759 Add height support
Optional third coordinate in position field. Streets will only
intersect when all 4 coordinates are on the same height.
2021-02-04 20:49:45 +01:00
Markus Koch 5e1ef8b340 Add systemd service file 2020-05-08 11:54:04 +02:00
Markus Koch aea4f3e799 Fix walking direction heading for real this time 2020-05-06 14:52:13 +02:00
Markus Koch fff25e0a24 Remove dots at end of walking directions 2020-05-06 14:14:30 +02:00
Markus Koch 601e617fe0 Add starting road to description 2020-05-06 14:14:05 +02:00
Markus Koch 0fbbd374a7 Fix walking direction heading 2020-05-06 14:13:04 +02:00
Markus Koch d219007e71 Remove pre-alpha warning 2020-05-05 20:49:33 +02:00
Markus Koch d7d59322c5 Add lighttpd conf file for https proxying 2020-05-05 19:41:12 +02:00
Markus Koch 15945c08f7 Set request limit to 40 characters 2020-05-05 19:40:42 +02:00
Markus Koch c0de012044 Clean up 2020-05-03 20:13:25 +02:00
Markus Koch 6e5b86c076 Implement HTTP server for requests 2020-05-03 19:59:12 +02:00
Markus Koch fe1547b37d Implement preliminary GeoJson route output 2020-05-03 13:38:39 +02:00
Markus Koch adb94f8be8 Add README.MD 2020-05-03 12:36:44 +02:00
Markus Koch 0b755401b8 Fix Dijkstra implementation, add debug prints 2020-05-03 12:09:29 +02:00
Markus Koch d060afea0d Adjust weight after split 2020-05-03 12:08:24 +02:00
Markus Koch 25a80f7fa9 Allow NULL as search destination to generate the entire tree 2020-05-03 00:13:46 +02:00
Markus Koch 7d6082ed68 Fix bugs and implement bugged version of Dijkstra 2020-05-03 00:00:41 +02:00
Markus Koch 7d41c1cdf7 Start implementing actual search 2020-05-02 17:31:26 +02:00
Markus Koch 127e0d23ca Remove stray unused variable 2020-05-02 17:13:45 +02:00
Markus Koch 6a546f6138 Automatically calculate weight from distance 2020-05-02 17:13:27 +02:00
Markus Koch 788ff7af02 Add libm to CMakeLists 2020-05-02 17:13:06 +02:00
Markus Koch 087cefb13a Rename dijkstrasearch to dijkstragraph 2020-05-02 17:02:26 +02:00
Markus Koch f3e5582af0 Implement (automatic) node IDs 2020-05-02 17:02:03 +02:00
Markus Koch 0d2945d76f Clean up code 2020-05-02 16:51:12 +02:00
Markus Koch 25ccfc5df5 Implement GeoJson loader 2020-05-02 16:27:44 +02:00
Markus Koch f9e9726974 Implement intersection algorithm 2020-05-01 20:48:36 +02:00
Markus Koch ce4295f674 Fix CMakeLists 2020-05-01 20:48:16 +02:00
Markus Koch fa36deba03 Configure CMake 2020-05-01 16:36:57 +02:00
Markus Koch 946eb4cc07 Create project 2020-05-01 16:33:48 +02:00