All trailforks data is now topologically correct, which means we can have full routing abilities. Check out the video demo showing how easy it is to create routes that span multiple trails, get full route elevation profile, distance, etc. A great planning tool for creating and sharing your favorite route, rides, and planning race courses.
Trailforks has a new tool called the
Ride Planner, this came about while developing the upcoming "routes" feature. I wanted to create an easy method to create a route, point and click to add trails to the route. But then came the problem of how to do this, thus started the road towards routing of the Trailforks database.
I needed to create a routing topology of the trails to be used in a routing engine and then write my own routing functions. First problem is the trails on Trailforks are not a topology, they don't connect or share points, they are all just separate gps tracks. Some might visually connect, but they aren't really. So I created a system to snap start and end points of trails nearby other trails together, all automated in the backend, which saves a ton of work doing it manually. Of course its not perfect so some manual edits will be required over time. Now that I have all the trails connected, they then need to be sliced into segments at each intersection and the topology generated.
The routing function takes into consideration a couple factors when choosing the best route. It assigns a "cost" to traverse a segment of a trail. This cost is initially set by the distance of that segment, I then can use the trails direction to modify that cost. Trails are marked as downhill, downhill only, uphill only and so on. So to route up a downhill trail will cost significantly more than going up an uphill trail, even it it's a lot longer distance. For trails that are uphill only, they will never allow routing down them, because I set the cost SUPER high. I will continue to modify factors that adjust the routing cost. Such as the avg grade, desired difficulty rating and so on.
In the Postgres database there are currently over 94,000 trail segments & 46,000 intersections that are used.
Now I needed an interface to create the routes, a point and click A to B type thing. Thus the
Ride Planner was born, it was a way for me to test and develop the trail routing. But the ride planner itself turned out to be a super useful tool, so I spent some time adding features to it.
RIDE PLANNER FEATURESThe ride planner does what it says, helps plan a ride. Click to add points and let the routing engine find the best path, add & edit points until you get your desired output. Planning a ride will give you stats on how long the route will be, which trails, turn-by-turn directions and elevation chart. It will also show you the current conditions of trails along the ride and inform you of any recent trail reports that flag potential issues or closures on trails. You can then share your ride plan with friends by passing along the URL it generates, or download the GPX file and transfer to your GPS device. In the future there will be an option to view ride plans on the Trailforks mobile app.
Another great use-case is if you want to visually explain something to a friend about a trail route. You know the story... you turn right by that rock by the tree! Now with a couple clicks you can cut through the trail talk obscurity and show what you mean. Its also super useful for planning race courses, not having to think of a route and then go ride it, only to find out that route was too long or short.
The routing is not going to be perfect and a lot of areas won't route properly. It first relies on all the trails for an area being added to Trailforks! This includes connectors and access roads used for mtn biking. So you can help by adding any missing trails. Also some existing trails might be too far away from an intersection for the automated snapping function that runs in the background to work. If you come across a trail that should connect to another one and allow routing, you can fix the problem by editing the trail and moving the start or end point closer.
When new trails are added or edited they don't get added to the routing topology instantly. It takes some time to re-generate, so this only happens once a day.
If you have any suggestions, let me know! Otherwise start playing around with it and here is a demo video.
ALTERNATIVE RIDE PLANNER METHODSometimes you want more control when planning a ride or demonstrating a route to someone. So there is an alternative ride planner method you can toggle that allows you to manually select each trail segment in sequence to build a route.
The ride planner will let you know if a segment doesn't connect to the previous segment. But you can continue creating a plan even if segments don't connect, the gps track will just draw a straight line between the 2 points.
Hopefully features like this are going to inspire more folks to contribute!
Just promise to say no when Strava comes looking to hire you and/or buy out Trailforks.
I do the same thing, but with Trailforks! if I find a new trail I wanna ride, goto the "Ridelogs" tab on that trails page, to see others rides that included that trail. Its better than looking at a trail segment because you see all the other trail names and the trail map.
www.trailforks.com/trails/entrails-929/ridelogs
We do do a bunch of background stuff with OSM data, and trails can be exported in OSM format by regional admins. One can also bulk import trails using an OSM file. One of the trail data fields is also the osm-way ID, which I might do some syncing with in the future.
We just haven't made them public, we are trying to filter out heatmap data around illegal trails. This relies on locals adding illegal trails into the database and marking them hidden. So definitely in the future I can overlay our heatmap on the ride planner.
We are slowly working on the mobile map app, it will have integration with this ride planner. But in the meantime, I can certainly make saved ride plans available on the mobile website, good idea. I should be able to wipe that up tonight.
It would also be cool if you could mark or indicate the timed sections, climbing sections etc on the elevation profile, and the trail names would pop up as you scroll along the course.
www.trailforks.com/routes
Routes are for adding suggested rides & race courses to riding areas.
It shows up as "Vail Lake" which is another trail system one city over. How can I add trail systems to your data base? I'm dismayed that Riverside County shows so few trails when I know many exist. Help?
p.s. I met a very cool Trail Forks / Pinkbike guy on the Zen Trail in Saint George. Think his name was Jason? He was visiting after attending Interbike back in September. Anyway, I'm amazed at all the capability of the Trail Forks app. Thank you for your efforts!!
Not trying to be negative as I think its a fantastic idea, but I think it will need some refining before it will replace regular maps + strava/trailforks info for me.
You can add route markers after you've pressed ESC, click and drag anywhere along the blue route to create a new marker.
www.trailforks.com/ridelog/planner/?lat=49.3134&lng=-122.8287&z=16&edges=82723,73838,92159,4859,43836,43835,79321,43840,43841,43845,86251,-4866,4864,4863,4862,4861,86697,4849
One idea/suggestion I have is to provide a means for users to hold friendly races, where any number of designated stages can be aggregated, within a given date range, and other filters (like gender, age, etc) so that a report/view could be run with results. Obviously with GPS, accuracy is pretty bad, but still, it could be fun to throw a casual enduro, dh, or xc event using tools on this site. I've thought about this a bit and would be glad to expand on the idea if you want to explore it...
This looks great, nice work
I am always looking for something to help me find my way..
Can I ask how far away an app is not looking for a commitment, just an anticipated timeline
No activity feed item is created, nor any PB dashboard notice.
"Routes" are separate from the ride planner and are listed on the site, you would create a permanent route page after you've decided on a route that you may have experimented with using the ride planner tool. A route is like a trail or any other normal content type on the site, it contains many fields and is attached to the region hierarchy. Ride plans are just for personal use.
When you goto add a "route" it uses the same sort of interface as the ride planner. I will add the option to convert a ride plan to a route.
Example: http://www.trailforks.com/route/2014-nsmba-toonie-7/map/
It has nothing to do with "TopoGRAPHY" which is like contour lines, shape & surface of the earth. Maybe the term "topologically correct" isn't the right phrasing to use, what its meant to convey is that the trails are now a network topology.
Thanks for the hard work! This is a great tool!
You should have a look at the CDED data from Canada Naturals Resources:
geogratis.cgdi.gc.ca/geogratis/DownloadDirectory?lang=en
they have a better accuracy then SRTM, free of charge and under the Open Government Licence (you can Copy, modify, publish, translate, adapt, distribute or otherwise use the Information in any medium, mode or format for any lawful purpose.)
open.canada.ca/en/open-government-licence-canada
cheers
sick topology brotendo!
We are working on our own custom Trailforks basemap, specific for mountain biking. That will use some government sources for data.
I'm excited to see the new basmap
Thx!
www.trailforks.com/contribute/trail