Editing QTMapWidget

Warning: You are not logged in. Your IP address will be recorded in this page's edit history.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
-
This page is intended to collect thoughts about a Qt map widget.
+
This page is intended to collect thoughts about a QT map widget.
== Why a QTMapWidget? ==
== Why a QTMapWidget? ==
-
Maemo/Meego devices are mobile GPS based devices. A demand for mapping services is thus very obvious. The current situation in [[Open development/Maemo roadmap/Fremantle|Maemo 5]] shows that leaving this task to the individual developers has several disadvantages for the developer as well for the end user.
+
Maemo/Meego devices are mobile GPS based devices. A demand for mapping services is thus very obvious. The current situation in Maemo5 shows that leaving this task to the individual developers has several disadvantages for the developer as well for the end user.
=== Disadvantages of current Maemo5 situation ===
=== Disadvantages of current Maemo5 situation ===
Line 28: Line 28:
* Support for various map sources
* Support for various map sources
-
** Classic tile based sources (openstreetmap [http://www.openstreetmap.org], google [http://maps.google.com], yahoo [http://maps.yahoo.com], virtual earth [http://www.bing.com/maps/])
+
** Classic tile based sources (openstreetmap, google, yahoo, virtual earth)
-
*** Simple/dynamic method to add more sources (also user specific ones like [[Maemo-mapper topomaps]])
+
*** Simple/dynamic method to add more sources (also user specific ones)
-
** WMS data [http://www.ogc-services.net/]
+
** WMS data
** Vector data
** Vector data
-
*** OSM vector data ("planet file" [http://wiki.openstreetmap.org/wiki/Planet.osm])
+
*** OSM vector data ("planet file")
-
*** Map data stored by OVI maps [http://maps.ovi.com/]
+
*** Map data stored by OVI maps
* Plugin concept for map sources
* Plugin concept for map sources
-
* Built-in location support, options:
+
* Built-in GPS support
-
** GPSD: GPS position
+
** Position indicator
-
** Liblocation: position (GPS, network), compass and gyro
+
** Direction indicator
-
** QT mobility location: position (GPS, network), compass and gyro
+
** Precision indicator
-
** Ability to provide location to main application
+
** Ability to provide GPS position to main application
 +
* Built in compass and gyro support, to improve orientation
 +
* Network positioning support
* Overlays
* Overlays
** Static overlays (don't move nor zoom with the map)
** Static overlays (don't move nor zoom with the map)
Line 50: Line 52:
*** Waypoints incl. icons
*** Waypoints incl. icons
*** Tracks incl. a dynamic one built from GPS data
*** Tracks incl. a dynamic one built from GPS data
-
*** Location indicator (position, direction and precision)
 
* Separate maintenance tool
* Separate maintenance tool
** Limit/monitor tile cache size
** Limit/monitor tile cache size
Line 60: Line 61:
== Related resources ==
== Related resources ==
-
Qt mobility location [http://labs.trolltech.com/page/Projects/QtMobility]
+
QT mobility location [http://labs.trolltech.com/page/Projects/QtMobility]
== Existing widgets ==
== Existing widgets ==
-
We are not the first ones to work with maps under Qt. What projects exist? Can they be re-used? What are their advantages and disadvantages?
+
We are not the first ones to work with maps under QT. What projects exist? Can they be re-used? What are their advantages and disadvantages?
=== QMapControl [http://www.medieninf.de/qmapcontrol/] ===
=== QMapControl [http://www.medieninf.de/qmapcontrol/] ===
Line 75: Line 76:
Cons:
Cons:
* Not actively maintained atm
* Not actively maintained atm
-
* Lacks basic functionality (GPS integration, live track capture, ...)
+
* Lacks basic functionality (GPS integration, dynamic track cature, ...)
* Has some rendering problems under Maemo (track display)
* Has some rendering problems under Maemo (track display)
* Google maps integration broken
* Google maps integration broken
Line 81: Line 82:
=== Marble [http://edu.kde.org/marble/] ===
=== Marble [http://edu.kde.org/marble/] ===
-
Pros:
+
Looks pretty complex, do we want the basic map widget to be that complex?
-
* Very active big developer community. Some core developers are involved with the Maemo / MeeGo project already. There are currently 3 GSoC developers working exclusively on Marble.
+
-
* Support for Maemo 5 and MeeGo. Early Maemo 5 packages available.
+
-
* Lightweight for what it does (100000LOC).
+
-
* Used in KDE as a generic map widget already.
+
-
* Supports OpenStreetMap, Google Maps, Yahoo, Custom Server Layouts. Basic WMS support.
+
-
* Online Routing support (via e.g. ORS).
+
-
* Support for position providers as plugins (gpsd, GeoClue, liblocation).
+
-
* Support for KML, GPS (support for OSM in the works).
+
-
* Different projections (sphere, Mercator, Equirectangular).
+
-
* Qt-Style API throughout the Marble Library.
+
-
 
+
-
Cons:
+
-
* Performance improvements for Maemo 5 necessary. However these are in the works.
+
-
* While the overall quality of the code is pretty good there is still some legacy code in a few places.
+
-
* I am very concerned regarding battery usage with this 3d approach as it puts a huge load (currently 100%) on the CPU even at low refresh rates --[[User:harbaum|harbaum]] 18:40, 12 June 2010 (UTC)
+
== Count me in! ==
== Count me in! ==
Line 109: Line 95:
UI-Design, Mockups:
UI-Design, Mockups:
-
 
-
[[Category:Development]]
 
-
[[Category:Qt]]
 

Learn more about Contributing to the wiki.


Please note that all contributions to maemo.org wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see maemo.org wiki:Copyrights for details). Do not submit copyrighted work without permission!


Cancel | Editing help (opens in new window)