[Marble-devel] Review Request: Routing API/Refactoring, step 1
Dennis Nienhüser
earthwings at gentoo.org
Sun May 1 21:22:26 CEST 2011
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/101267/
-----------------------------------------------------------
Review request for Marble.
Summary
-------
This is one major part of the changes I planned to refactor the routing code towards a Qt Mobility similar API. It introduces the classes Maneuver, RouteSegment and Route based on the Qt Mobility 1.2 classes QGeoManeuver, QGeoRouteSegment and QGeoRoute. At some points I changed the API a bit for performance reasons (mostly using references/pointers instead of copying instances and introducing a few additional methods). There's no dependency to Qt Mobility, the classes and methods are just named similar to make it easier for other people to become familiar with the code.
The new classes replace some of the functionality that was previously implemented in RoutingModel (which is a good thing). The code should be easier to read now and runs significantly faster. Last but not least the position on the route is now determined accurately. Previously only the distance to supporting points of the polygon was calculated, leading to inaccurate distance estimations and unnecessary route re-calculations when the supporting points had large distances.
Please speak up if you want to review the patch and need more time, otherwise I take silence as consent and commit in the next days.
Diffs
-----
src/ControlView.cpp c52886b
src/lib/CMakeLists.txt cdc080b
src/lib/DownloadRegionDialog.cpp 72d84f8
src/lib/routing/Maneuver.h PRE-CREATION
src/lib/routing/Maneuver.cpp PRE-CREATION
src/lib/routing/Route.h PRE-CREATION
src/lib/routing/Route.cpp PRE-CREATION
src/lib/routing/RouteSegment.h PRE-CREATION
src/lib/routing/RouteSegment.cpp PRE-CREATION
src/lib/routing/RoutingLayer.h 29867aa
src/lib/routing/RoutingLayer.cpp aba97a3
src/lib/routing/RoutingModel.h 0ce9496
src/lib/routing/RoutingModel.cpp 00d1907
src/lib/routing/RoutingProxyModel.h dbcb9da
src/lib/routing/RoutingProxyModel.cpp 029c0fc
src/lib/routing/RoutingWidget.cpp 376ffb3
src/plugins/render/routing/AudioOutput.h 0e7f5a9
src/plugins/render/routing/AudioOutput.cpp 79dff98
src/plugins/render/routing/NullAudioOutput.cpp 4751695
src/plugins/render/routing/RoutingPlugin.h 6fb9752
src/plugins/render/routing/RoutingPlugin.cpp dcce53e
Diff: http://git.reviewboard.kde.org/r/101267/diff
Testing
-------
Thanks,
Dennis
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.kde.org/pipermail/marble-devel/attachments/20110501/15eff97f/attachment.htm
More information about the Marble-devel
mailing list