Would it be possible to abstract maps and track simulator providers? To make it possible to choose which map to display computed track data on (perhaps using Openlayers). Same with the track simulator provider, having it possible to choose whether to compute tracks with Google or Microsoft webservices.

Comments

hutch’s picture

So far I have developed Getdirections to work with Google maps version 2 and now version 3. I have used this service because the API and documentation is clear, useable and there are good working examples. The geocoding is effective and runs in the browser, not on the server, which is my prefered method, it spreads the load and minimises the possibility of being refused acces for overuse. My server provides hosting for several hundred domains, most of them on the same IP address.

I have tried Openlayers (the Drupal module) and could make little sense of it and it crashed repeatedly, that was in conjunction with Geofield. In the end I removed it altogether.

Bing maps for starters requires that I get an account with them (Google just let me get on with it) and from what other developers have told me effectively assume that I am running Microsoft Windows which I am not and have not done for many years. Judging from the Bing website it is clear that their products are aimed at corporate customers (and their employees) and not freelancers like myself.

However if anyone wants to develop a getdirections-for-bing javascript I will be glad to incorporate it if possible.

cesareaugusto’s picture

Bing maps for starters requires that I get an account with them (Google just let me get on with it) and from what other developers have told me effectively assume that I am running Microsoft Windows which I am not and have not done for many years. Judging from the Bing website it is clear that their products are aimed at corporate customers (and their employees) and not freelancers like myself.

However if anyone wants to develop a getdirections-for-bing javascript I will be glad to incorporate it if possible.

My idea was to create some kind of common routing API other modules may reuse. Some kind of abstraction layer which makes the routing data unaware which is the underlaying routing webservice. So that if anyone would like to develop a Bing routing webservice plugin it would not affect the how routing data within Drupal environment.

I have tried Openlayers (the Drupal module) and could make little sense of it and it crashed repeatedly, that was in conjunction with Geofield. In the end I removed it altogether.

Same with the display thing. It would be cool to have the routing data stored in a standard way, perhaps using Geofield (it seems it is going to be the Drupal standard for storing geographic data). Having routes stored in such a way would make it possible to display them as Openlayers geometries on whatever mapping system we like.

Creating an abstract Routing API would make Drupal totally independant to the underlaying webservices.

Now my personal experience to understand how I got such an idea:

I don't like much the Bing thing nor the way it works. I prefer Google Maps much more. But I started using Bing Maps (with Openlayers) in my last project because of their look (their colors/fonts suite better my theme). Get Directions displays routes on Google Maps. It make the overlook inconsistent to the rest of pages.

hutch’s picture

By all means, write a Routing API, with the admin frontends to provide per-map configuration and the javascript to implement it.
If it works I'll use it.