default void runMapChanges(final Runnable runnable) {
        // inspired by http://stackoverflow.com/questions/12850143/android-basics-running-code-in-the-ui-thread/25250494#25250494
        // modifications of google map must be run on main (UI) thread
        //new Handler(Looper.getMainLooper()).post(runnable);
        Log.v("AsyncMapWrapper: request Thread for: " + runnable.getClass().getName());

        AndroidRxUtils.runOnUi(runnable);
    }
Provides a function which maps lat-lon-geopoints to actual screen pixel coordinates
main/src/main/java/cgeo/geocaching/unifiedmap/geoitemlayer/IProviderGeoItemLayer.java