Update 20/01/2010 CormacB has released a new version with html5 support (so that it does not require any servers for sound production). See this post for the html file: Index.html and this post for the direction on how to install: Install directions -=Original Post=- Greetings forum, I bring to you today, to the few that still use it or care, a couple of features for OVI maps Some of us would remember when OVI maps had that tilt control which allowed the rotation of the map, add this with 3D buildings feature, and you had something pretty to look at, though with the introduction of Pr1.2 they removed that, but today ladies and gentlemen I bring it back! But wait, thats not all! I with the new Ovi Maps version we have, it has a nice feature to allow maneuvers to be shown when you select one of those little dots on the route. This I thought was an excellent idea as we can see the upcoming turn, sadly it wasn't the case as it just showed one at a time and only when you select it, kinda useless when driving really. So I added another button under the route calculation button to show them all! While looking around at the code, I did notice a feature for guidance including the possibility of voice guidance. However it does not seem to be finished or we are missing a plugin to make it work (little snippet below). I might play around with it, but I doubt it'll work, but on the bright side it could be coming in the future Code: stopNavigation: function () { this._guidance.stop(); this.fireEvent(new nokia.aduno.utils.Event(GuidanceModel.EVENT_GUIDANCE_STOPPED)); if (this._positionChangeSimulator) { this._positionModel._setPositionProvider(null); this._positionChangeSimulator.deactivate() } }, pauseNavigation: function (aPause) { if (aPause === true || aPause === undefined) { this._guidance.pause() } else { this._guidance.resume() } }, repeatLastVoiceCommand: function () { this._guidance.repeat() }, isNavigationRunning: function () { if (this._guidance) { return this._guidance.isRunning() } return false }, getNextManeuver: function () { if (this._guidance.className !== "GuidanceMockup") { return this._guidance.nextManeuver } else { return new Maneuver(this._guidance.getNextManeuver()) } }, Lastly some proof http://www.youtube.com/watch?v=sKcRFteeJOg If you feel brave enough and wish to experiment with this version, please back up the old ovi maps index.html file found in "/usr/share/nokia-maps/html" (rename it to something else) then copy the new "index.html" file into the folder. For the maneuver images, you'll need to put the new image I made into the "/usr/share/nokia-maps/html/pfw/images/spices/newroutesigns" folder (you'll need to make it, the zip file contains the full path for assistance). Feedback is welcome Update 25/12/2010 Added a new feature as requested by elie-7. The file is attached below. Be warned though, it shows ALL of the POI, so the screen might be a bit messy sometimes, especially in the city (as you can see in the picture ). Also fixed a slight error (figured out firebug can do track the errors for me ). A new image was created for this (which is looking terrible ) so remember to copy that in too. In the future I will try make the POI more configurable, but I have a feeling it'll be a fair bit of work Attachment 16526 p.s. If I shouldn't share Nokia's code, please delete this thread
stopNavigation: function () { this._guidance.stop(); this.fireEvent(new nokia.aduno.utils.Event(GuidanceModel.EVENT_GUIDANCE_STOPPED)); if (this._positionChangeSimulator) { this._positionModel._setPositionProvider(null); this._positionChangeSimulator.deactivate() } }, pauseNavigation: function (aPause) { if (aPause === true || aPause === undefined) { this._guidance.pause() } else { this._guidance.resume() } }, repeatLastVoiceCommand: function () { this._guidance.repeat() }, isNavigationRunning: function () { if (this._guidance) { return this._guidance.isRunning() } return false }, getNextManeuver: function () { if (this._guidance.className !== "GuidanceMockup") { return this._guidance.nextManeuver } else { return new Maneuver(this._guidance.getNextManeuver()) } },