I quietly uploaded another update to the Ride Free Bike Map Creator last week. This update has been in the works for a long time and I’m glad to finally release it.
The biggest change is the complete removal of modes. Now when a waypoint is added to the map the directions are automatically printed below the main map exactly how they were in the print mode. To divide long routes into multiple pages click on the route where you want the division and the map below the main map will automatically split where the division was made. The division is marked on the main map by small white markers. The markers can be dragged to change where the route is divided or they can be clicked to remove them. Just like the waypoint markers.
Another noticable change is the new position of the elevation profile. The profile is now located below the map and spans the full width of the map for better display of the elevation. You can also click on the elevation profile to divide the route.
One of the side effects of the changes seems to be a slower load time for the elevation profile. I’m not sure how it will affect older computers so I’ve you’ve got one of those I’d love to get some feedback.
I’ve got several ideas for minor edits swirling around that I want to work on. On the list is an expanded selection of route stats, including total ascent/descent. I also want to change how the route is displayed when is is divided across multiple pages. I want to show the whole route with start and end markers for the section in focus.
It’s been a long time since I last looked at the site. Recently I got back into the swing of doing some updates and I want to give a quick rundown of the changes.
The most noticeable update can be seen on the Route Index page. I beefed up the index by adding the route description, author, and thumbnail to the index. I think it looks a lot better than it used to. The route author in the index is a link which will take you to a listing of routes by that author. Right now you will notice there are a lot of routes with the author “None.” The method I was using to save the authorship broke when I updated the page theme a while back. I’ve fixed that so routes created in the future will have the correct authorship.
I also fixed a bug dealing with loading routes outside of the countries where bike maps are supported. The bike maps wouldn’t load correctly because they weren’t being plotted with the plain directions. I’ve got that under control now so they should work as expected. If you find problems with the routes not loading try refreshing the page once or twice then contact me if it still doesn’t work.
Lastly, I’ve been doing some server side work as well. You will notice that the URL for the routes have changed from www.ridefreebikemaps.com/map-creator?route_id=59 to . This is a prelude to the next major update I’m working on. A lot of it will be under the hood things which will make sharing the routes on facebook or twitter easier and better. I think now is a good time to get that locked down because the season is approaching and I’d like to be able to share my routes with my friends. I [i]might[/i] even make a facebook or mobile app. I’ve never developed anything for those platforms so right now it’s a long shot.
You may have noticed that the elevation profile wasn’t showing up properly. The path used to calculate the elevation profile was only the last segment of the route. This was a hold over from the last big update where the route length limit was erased. Now the elevation profile is calculated over the course of the entire route.
In itself this update doesn’t really merit a post. I’m making the post because I wanted to point out the limitations of the elevation service. The elevation is calculated from 500 points equally spaced along your route. If the the points are very close and the profile will be very accurate. If the the points will be spread out and the route will be inaccurate.
According to signal detection theory you must sample twice as fast as the signal you are trying to measure. In other words, if you want to find the height of the peak of a hill you will need to take elevations that are separated by only half the width of the peak. So if the peak of the hill is only 50 feet across you will need to take elevation measurements every 25 feet. Given that there are at max 500 elevations taken from a route, that route will be only 2.367 miles long. This example may be a bit extreme but it illustrates how the elevations can be inaccurate.
Keep this in mind when bragging to friends. You can always say the hills were even taller because the app missed the true peak of the hill.
It’s been a long while since I coded something for the site. The other day in Bellingham was pretty cloudy so I started working on getting rid of the waypoint limit. Today I finally updated the site software so there is no longer a limit on the number of waypoints!
I got around the limit by chopping the route into sections and manipulating the sections individually. Prior to this I would recalculate the entire route if anything was changed. This also makes the directions results a bit better. In the prior version the route was calculated all at once and Google’s bike route finding algorithm would sometimes produce weird results. I don’t know why this was happening but I have a feeling that it was some effort to avoid bad streets for riding on and keep a forward direction. Now if you see weird routing going on you can just force the route by adding extra markers.
Even though I got this working really well there is still a couple of big bugs in the program. Most importantly the maps can’t be printed well. It has to do with the way that the map is displayed by the API so I can’t fix the problem. I can convert the printable maps to static images to get around the problem. I may do that, I’m not sure. Secondly adding pages to loop routes is pretty tough. When ever a route crosses out of and back into a page the app has difficulty with that. Especially if the route start and end points are in the page. I’m not sure how I’ll fix that guy but I am aware of the problem.
The weather up here in beautiful Bellingham, WA has turned really nice so I’ve been finding more and more reasons to get out and enjoy it. That means I’ve been working on the site a lot less lately. I did make a small bug fix a while ago that I just got around to posting.
Prior to the update saving routes in outside of the USA using the Members Only Map Creator would result in an error when one tried to load the route. The error had to do with loading biking directions in countries where it isn’t supported.
I also cleaned up the save message. Now the message is displayed with an infowindow on the map. The infowindow includes a success/failure message and a link to the newly created map. In the future I plan to make some sort of sharing happen from that window.
I’m not sure when I’ll get around to working on the site some more. I’ve got a few ideas kicking around but I’m also waiting for Google to fix some bugs on their end too. Specifically the 10 way-point limit and a printing bug. I haven’t mentioned the printing bug before. I just discovered it this weekend when I went to print out a route. The map now shows up as a background picture so most printers default to ignore the map when printing. I’ve read that you can get around this by changing some settings in the print dialog. While it probably works it isn’t a real solution.
I’ve added a bunch of stuff to the site since I last made an announcement. I added facebook integration; an index of all the routes on the site; and a way for registered users to save routes to the site!
The facebook integration came out right after facebook announced their external like button and other features. If you see a route that you like you can click the like button and share it with your friends. You can also link your facebook account with the site which will let you bypass the login/registration process. This is accomplished by adding the Ride Free Bike Maps app to your facebook account. Currently I all I ask is for your email address for registration/account purposes. In the future I’ll add some functions that will post routes that you create on your wall/page.
The Route Index was something that I’ve had running on my box at home. It was a quick and dirty kind of project but I’m happy with the results. I think it looks a bit boring and a bit light on info about the routes. I’ll add some more info like date created and author information in the future, maybe even descriptions.
Most importantly I’ve added a page for registered users to contribute routes! To get there click the Members Only Map Creator link in the sidebar. If you are logged in it will take you to the page shown in the picture on the left. You can then create a route complete with name and description. After clicking Save Route the route will be inserted into the database with the information provided including who created it. Then the route will show up on the route index page. I’ve got a lot of ideas on how to improve this. Right now I feel like it really could use some more features but it works so I wanted to post it.
I’ve also got some bad news. Google changed their directions function so that the max way points you can have is now 10. So I had to add a function that cuts you off if you try to add more than the max. That also caused a lot of the routes on the site to break because they have too many way points. Hopefully I’ll be able to find a solution to fix the problem but it will mean reworking how my app handles directions. It could prove to be difficult.
Anyway stay tuned for some cool new features, I have a feeling that I’ll be able to add some neat stuff soon!
I just made another update to the bike map creator!
Elevation Profile: This is what happens when I don't have any good videos to watch on my computer.
I was thinking about using Google’s elevation service today so after work I checked it out. As it turns out it’s pretty easy to use. So after about 30 min. of tinkering I got elevation routes enabled! They show up when you move to print mode next to the overview of the route. Currently they don’t have a distance scale but I’ll add that in soon.
I’d also like change some of the behavior of the elevation profile as well. Currently you can click on the profile and it will tell you the exact elevation of that point. I’d like that point to also get highlighted on the map as well. I don’t know if this is even possible but if it is I’ll make it happen.
Today Google announced that they added a bike there option when asking for directions in Google Maps. Needless to say many, many people were pleased to hear the news. I’s been covered by nearly all the blogs I read about these subjects, such as:
I won’t go over how cool this feature is except to say that I recreated my entire tour route from Blaine, WA to San Yisidro, CA using Google maps in about 20 min. It’s that good. Go see how awesome are for your self!
This has two big effects on my app. First, finding directions will be worlds better. Currently you have to add a bunch of way points to get a good route that follows bike friendly roads. With the bike there option for the maps nearly all of that will vanish. The directions service by Google will do that for you. Secondly, this will push me into another big round of development. My app uses the 2.0 version of Google maps and the bike there option is only available in version 3. That means I will have to rewrite nearly all of my app to get this to work. While I’m not very excited about the prospect of doing that the end result will definitely be worth it.
Until I get V3 working I’ll occasionally add more featured routes so keep checking back or better yet subscribe to the RSS feed.
I got a route database working!!! I’m super excited about this. Currently I have a grand total of, two, routes in the database. The first was the tester I already posted and the second is a portion of the Oregon Coast Bike Route between the Ft. George Brewery in Astoria and the Rogue Brewery is Newport. Both are excellent breweries and excellent places to start/end a ride.
As for some under the hood specifics, I’ve really only got a basic database functionality working. This update was more to show the progress that has been made than a new ‘version’ of the software. The scripts work by querying the database for a hard coded route id. In the future I want to make something more flexible but this works for now. I have the route published as a wordpress post because that allows comments on the route. I don’t like the idea of adding every single route as a post because that would get overwhelming if I open up the route creation to the public. For now if I open it up or post routes that aren’t super neat I’ll publish them silently without the ability to comment and create some kind of database index page.
Routes that do get their own post and section for comments will be a ‘featured route.’ I’m thinking about putting the US bike route system in as featured routes or ride maps that bike clubs organize. If you are part of a club and want your rides posted on the site give me a holler! I’d love to add your routes.
My next objective is to write a route creation page that will insert routes into the database. Hopefully that should go smoothly. I think figuring out the interface for that will be the hardest part.
I’ve been doing some research on how I want to move the bike map creator app forward. I know that I want to tackle the ‘saved routes’ feature next. I’ve been avoiding doing any real work on the problem because it is new territory for me and I just didn’t know how I should move proceed.
Today I decided to sit down and whip out a rough draft of what is to come. My goal was to code a simple route in a kml file and load it into the the map creator app. After a few hours of tinkering and researching I did it! I’d love to hear your feedback on this so don’t be afraid to blow up the comments on the article page.
Below is the bike map creator app with a custom initialization script that loads a route saved on the server and plots the way points onto the map. The route I chose is one of my favorite local rides, Bellingham, WA to Deception Pass State Park. You can use the bike map creator below just like the official one. The only difference is the preloaded way points. To jump to the route just press the “Route” button and the route will be created and centered in the map.
Click on the map to add way-points. When you are finished click Plot Route.
Plot your route, divide it into pages pages, then print!
Click on the map to create way-points. When finished click ‘Find Route.’
Divide the route into pages by panning and zooming to a viewpoint that provides a good level of detail. Then click ‘+ Panel.’ Repeat until all of the route is represented in a page.
Click the print button to move to print mode. Click the printer icon or user your browser’s print function to print the pages.