🍃 Organic Maps is a free Android & iOS offline maps app for travelers, tourists, hikers, and cyclists. It uses crowd-sourced OpenStreetMap data and is developed with love by the community. No ads, no tracking, no data collection, no crapware. Please donate to support the development!
Find a file
Vladimir Byko-Ianko cef145f355 Calling ExtrapolatedLocationUpdate() on background thread immediately after OnLocationUpdate() was called.
extrapolation_benchmark result:

LOG TID(1) INFO   3.5842e-05 extrapolation_benchmark/extrapolation_benchmark.cpp:227 main() General tracks statistics.
  Number of tracks: 886
  Number of track points: 567362
  Average points per track: 640
  Average track length: 15325.8 meters
LOG TID(1) INFO       91.914 extrapolation_benchmark/extrapolation_benchmark.cpp:318 main()
  Processed 153443 points.
    767215 extrapolations is calculated.
   Projection is calculated for 767215 extrapolations.
LOG TID(1) INFO       91.914 extrapolation_benchmark/extrapolation_benchmark.cpp:320 main() Expected value for each extrapolation:
LOG TID(1) INFO       91.914 extrapolation_benchmark/extrapolation_benchmark.cpp:326 main() Extrapolation 1 , 200 seconds after point two. Expected value = 0.705745 meters. Variance = 1.29414 . Standard deviation = 1.1376
LOG TID(1) INFO      91.9141 extrapolation_benchmark/extrapolation_benchmark.cpp:326 main() Extrapolation 2 , 400 seconds after point two. Expected value = 1.39173 meters. Variance = 4.76746 . Standard deviation = 2.18345
LOG TID(1) INFO      91.9141 extrapolation_benchmark/extrapolation_benchmark.cpp:326 main() Extrapolation 3 , 600 seconds after point two. Expected value = 2.04523 meters. Variance = 9.80405 . Standard deviation = 3.13114
LOG TID(1) INFO      91.9141 extrapolation_benchmark/extrapolation_benchmark.cpp:326 main() Extrapolation 4 , 800 seconds after point two. Expected value = 2.63355 meters. Variance = 15.9907 . Standard deviation = 3.99883
LOG TID(1) INFO      91.9141 extrapolation_benchmark/extrapolation_benchmark.cpp:326 main() Extrapolation 5 , 1000 seconds after point two. Expected value = 3.13071 meters. Variance = 22.8244 . Standard deviation = 4.77749
2018-06-19 19:11:12 +03:00
3party [android] Fixed review notes 2018-06-09 18:28:50 +03:00
android Added offline id for local ads statistics 2018-06-19 18:27:05 +03:00
api [linux] Fixed project build with g++ 4.8. 2015-10-21 14:23:51 -07:00
base [cmake] Add precompiled headers support 2018-06-15 13:14:00 +03:00
cmake [cmake] Add precompiled headers support 2018-06-15 13:14:00 +03:00
coding Adding command for saving unmatched tracks in csv in track analyzer. 2018-06-19 19:11:12 +03:00
data Generated styles 2018-06-19 11:19:44 +03:00
debian Updated desktop EULA. 2015-09-22 17:04:41 -07:00
docs [docs] Fix minimal clang version 2018-05-30 18:56:14 +03:00
drape [cmake] Add precompiled headers support 2018-06-15 13:14:00 +03:00
drape_frontend [cmake] Add precompiled headers support 2018-06-15 13:14:00 +03:00
editor [cmake] Add precompiled headers support 2018-06-15 13:14:00 +03:00
feature_list [indexer][editor] Move some code from indexer to editor 2018-06-01 16:17:52 +03:00
generator [index][search] Get rid of feature visibility duplication: we have TypeAlwaysExists() and do not need IsInvisibleIndexedChecker. Move all RequireGeometryInIndex and TypeAlwaysExists checks to feature_visibility.cpp 2018-06-19 19:02:26 +03:00
geometry [cmake] Add precompiled headers support 2018-06-15 13:14:00 +03:00
indexer [index][search] Get rid of feature visibility duplication: we have TypeAlwaysExists() and do not need IsInvisibleIndexedChecker. Move all RequireGeometryInIndex and TypeAlwaysExists checks to feature_visibility.cpp 2018-06-19 19:02:26 +03:00
installer/win [fonts] Replace WenQuanYi MicroHei with Droid Sans Fallback 2015-09-22 16:59:06 -07:00
iphone Regenerated localizations 2018-06-19 15:51:09 +03:00
kml [cmake] Add precompiled headers support 2018-06-15 13:14:00 +03:00
local_ads Added offline id for local ads statistics 2018-06-19 18:27:05 +03:00
map Calling ExtrapolatedLocationUpdate() on background thread immediately after OnLocationUpdate() was called. 2018-06-19 19:11:12 +03:00
mapshot Save to bookmark data persistent feature types based on index. 2018-05-10 16:15:11 +03:00
openlr Delete old tools and qmake files 2018-06-15 20:31:09 +03:00
partners_api Added Megafon banner URL method 2018-06-19 15:10:59 +03:00
platform Review fixes. 2018-06-19 19:11:12 +03:00
pyhelpers Updated the spec in accordance with what Victor said. 2017-09-13 14:11:31 +03:00
qt [cmake] Add precompiled headers support 2018-06-15 13:14:00 +03:00
qt_tstfrm [cmake] Add precompiled headers support 2018-06-15 13:14:00 +03:00
routing Review fixes. 2018-06-19 19:11:12 +03:00
routing_common [cmake] Add precompiled headers support 2018-06-15 13:14:00 +03:00
search [index][search] Get rid of feature visibility duplication: we have TypeAlwaysExists() and do not need IsInvisibleIndexedChecker. Move all RequireGeometryInIndex and TypeAlwaysExists checks to feature_visibility.cpp 2018-06-19 19:02:26 +03:00
skin_generator Added pricing badges 2018-04-09 14:28:51 +03:00
software_renderer [cmake] Add precompiled headers support 2018-06-15 13:14:00 +03:00
stats [cmake] Add precompiled headers support 2018-06-15 13:14:00 +03:00
std Review fixes. 2018-04-24 13:44:37 +03:00
storage [cmake] Add precompiled headers support 2018-06-15 13:14:00 +03:00
testing [partners_api][android] safe callbacks 2017-08-14 18:40:03 +03:00
tizen Added new booking search visualization 2018-04-09 14:28:51 +03:00
tools Delete old tools and qmake files 2018-06-15 20:31:09 +03:00
track_analyzing Review fixes. 2018-06-19 19:11:12 +03:00
tracking [cmake] Add precompiled headers support 2018-06-15 13:14:00 +03:00
traffic [cmake] Add precompiled headers support 2018-06-15 13:14:00 +03:00
transit [cmake] Add precompiled headers support 2018-06-15 13:14:00 +03:00
ugc [cmake] Add precompiled headers support 2018-06-15 13:14:00 +03:00
xcode Adding a test on LinearExtrapolation() method. 2018-06-19 19:11:12 +03:00
.clang-format [clang-format] Updated clang-format rules for ObjC. 2017-10-04 11:09:34 +03:00
.gitattributes [mopub] [ios] Added Mopub framework. 2017-04-13 17:08:16 +03:00
.gitignore Update .gitignore 2018-06-01 16:17:52 +03:00
.gitmodules [twine] Make twine a submodule, and update it to 1.0.3 2018-03-30 15:43:36 +03:00
CMakeLists.txt [cmake] Add precompiled headers support 2018-06-15 13:14:00 +03:00
configure.sh Added API for bookmarks catalog URLs 2018-05-23 11:02:28 +03:00
CONTRIBUTORS Update CONTRIBUTORS 2015-11-20 15:27:42 +03:00
defines.hpp [generator] added possibility to exclude some booking hotels 2018-04-27 16:24:42 +03:00
LICENSE [docs] Updated license and texts 2015-09-29 19:30:37 +03:00
NOTICE Fixed NOTICE and README. 2015-09-30 01:58:20 -07:00
precompiled_headers.hpp [cmake] Add precompiled headers support 2018-06-15 13:14:00 +03:00
README.md Replace http with https for openstreetmap.org links 2018-03-16 13:11:54 +03:00
strings.txt Fixed Android compilation 2018-06-19 15:51:09 +03:00

MAPS.ME

MAPS.ME is an open source cross-platform offline maps application, built on top of crowd-sourced OpenStreetMap data. It was publicly released for iOS and Android.

Submodules

This repository contains submodules. Clone it with git clone --recursive. If you forgot, run git submodule update --init --recursive.

Translations

If you want to improve app translations or add more search synonyms, please check our wiki.

Compilation

To compile the project, you would need to initialize private key files. Run configure.sh and press Enter to create empty files, good enough to build desktop and Android debug packages.

For detailed installation instructions and Android/iOS building process, see INSTALL.md.

Nightly builds for Android are published to osmz.ru and Dropbox: release, debug.

Building maps

To create one or many map files, first build the project, then use generate_mwm.sh script from tools/unix to create a single mwm file from pbf/o5m/bz2 source, or generate_planet.sh to generate multiple countries at once from a planet o5m file. See detailed instructions in MAPS.md.

Map styles

MAPS.ME uses its own binary format for map styles, drules_proto.bin, which is compiled from MapCSS using modified Kothic library. Feature set in MWM files depends on a compiled style, so make sure to rebuild maps after releasing a style.

For development, use MAPS.ME Designer app along with its generator tool: these allow for quick rebuilding of a style and symbols, and for producing a zoom-independent feature set in MWM files.

See STYLES.md for the format description, instructions on building a style and some links.

Development

You would need Qt 5 for development, most other libraries are included into the repository: see 3party directory. The team uses mostly XCode and Qt Creator, though these are not mandatory. We have an established coding style.

See CONTRIBUTING.md for the repository initialization process, the description of all the directories of this repository and other development-related information.

All contributors must sign a Contributor Agreement, so both our and their rights are protected.

Feedback

Please report bugs and suggestions to the issue tracker, or by mail to bugs@maps.me.

Authors and License

This source code is Copyright (C) 2015 My.com B.V. (Mail.Ru Group), published under Apache Public License 2.0, except third-party libraries. See NOTICE and data/copyright.html files for more information.