Sunday, August 1, 2010

GSoC Progress: MarbleToGo(Navigation Mode) code in trunk

Hi Planet

I am very glad to inform that most of the code for my GSoC Project is in the trunk now.
In continuation to my previous blog post about auto centering, the following features are now added to Marble.

  • Auto Zoom: It is an optional feature, if enabled the map adjusts itself to an appropriate zoom level so as to keep an appropriate distance on the way ahead visible to the user respective to the current location of the gps device.
  • Showing current route instruction and a plugin for showing time and distance remaining to reach the destination.

The plugin (bottom right of the map)  shows the time and distance remaining as well as the distance covered(progress bar) during the journey.
The route instructions(For Example: move left, move right etc.) appear few minutes before reaching it. When the user selects a particular instruction now, the portion of the route where the instruction is valid gets highlighted.
  • Downloading of maps on and around the route for offline usage : You may require to use marble for offline use while navigating. So now Marble has the functionality to download the region for route required. And more, you can now specify the offset in metres around the route you would like to download( for people who like exploring while travelling :-) ) as well as the tile level ranges . It not only makes one to be ensured that all relevant portion of the map has been downloaded but also reduces the download size as well as the number of tiles required to be downloaded ( people having limited usage Internet connection or slow connection-take a note :D )
In the coming days (and for some days now) I would be working on Interface for Small Screen devices ( like N900 ) so as to make routing experience more convenient.

Thursday, June 17, 2010

GSoC Progress: Auto Centering implemented in Marble

Hi Planet

In continuation to my introductory post, KDE Marble lacked auto centering feature in Navigation Mode i.e. when the location of the gps device went off the display area, the user had to manually bring the location back to the visual area, which was very inconvenient especially if you are in a car and using Marble for Navigation.

The user now have two options for auto recentering:
1) The gps device location always  remains on the center of the map.
Before Auto Centering ( GPS Device Location Represented by arrow on the map)

After Auto Centering the device location is always on the center of the screen.

2) Second, auto centering is done when the gps device reaches a custom rectangular area defined on the visible map area or viewport (which is currently 65% of the area around the center of the map), so that recentering is not performed over and over again.

Before reaching the rectangular area:

When the device crosses the rectangular area, auto centering is performed.

Plan for coming week: 1) Auto zoom in and zoom out functionality is to be added to Navigation Mode in Marble (it's near completion :) ).
2) Routing Instructions are to be shown on the map while navigating.

Tuesday, May 4, 2010

Introduction: MarbleToGo(Navigation Mode)

Hello KDE Community

I am Siddharth Srivastava, an undergraduate Computer Science Engineering(6th Semester) student from New Delhi, India.

I would be working on the project MarbleToGo(Navigation Mode) during GSoC 2010. The project aims at adding new functionalities to Marble and making interface for Small Screen devices such as Nokia N900 sophisticated and customizable with the help of float items.

Well, I have categorized the project in four parts (or phases as I like them to call):-

1) Smooth re-centring and zoom adjustments of the map based on the location of the GPS Device(user) on the map so that you are not disturbed or lost on the screen while driving .
2) To show the current route instructions consisting of information about the route, landmarks etc. In addition to this the time required and the distance travelled would also be shown to the user.
3) Managing Maps in offline mode: This allows to pre-download the required data that the user would be using during his journey including the possible zoom levels and any additional requirement through a widget. This would be helpful in case, when the user doesn't have constant access to the Internet.
4) Design of interface for Small Screen Devices so as to make use of Marble more convenient and sophisticated by providing users an option on what they want to see on the screen. This would allow marble to take maximum advantage of the available space on the screen.