Задать вопрос
@Dmtm
Android

Почему mapsforge не рендерит тайлы?

>сами тайлы рендерятся, кеш на карте памяти создается, на самом MapView на белом фоне виден серый слой и видно >что это карта, она подгружается по квадратам, но сами тайлы не показываются, зум и линейку тоже вижу
посмотрел на сами тайлы - как файлы они генерируются, но не рендерятся, все одного размера с серой заливкой,
т.е. MapView все показывает правильно

сами карты отсюда ftp-stud.hs-esslingen.de/pub/Mirrors/download.maps...
прбовал v3 и v5 (кстати - в чем разница?)

implementation 'org.mapsforge:mapsforge-core:0.11.0'
    implementation 'org.mapsforge:mapsforge-map:0.11.0'
    implementation 'org.mapsforge:mapsforge-map-reader:0.11.0'
    implementation 'org.mapsforge:mapsforge-themes:0.11.0'
    implementation 'net.sf.kxml:kxml2:2.3.0'
    implementation 'org.mapsforge:mapsforge-map-android:0.11.0'
    implementation 'com.caverock:androidsvg:1.3'


AndroidGraphicFactory.createInstance(this); //Appplication.onCreate

private fun createMapViews(root: View) {
        mapView = root.findViewById(R.id.mapView)
        mapView.model.init(preferencesFacade)
        mapView.isClickable = true
        mapView.mapScaleBar.isVisible = true
        mapView.setBuiltInZoomControls(true)
        mapView.mapZoomControls.isAutoHide = true
        mapView.mapZoomControls.zoomLevelMin = 0
        mapView.mapZoomControls.zoomLevelMax = 15
    }
...
  private fun createLayers() {
        val tileCache = AndroidUtil.createTileCache(
            activity, TILES_FOLDER,
            mapView.model.displayModel.tileSize,
            1.0f,
            1.5
        )
        mapView.layerManager.layers.add(
            AndroidUtil.createTileRendererLayer(
                tileCache,
                mapView.model.mapViewPosition,
                getMapFile(),
                getRenderTheme()
            )
        )
        //this.mapView.setCenter(this.dummyItem.location);
        this.mapView.setZoomLevel(16)
    }

   private fun getRenderTheme(): XmlRenderTheme {
        return InternalRenderTheme.OSMARENDER
    }
  • Вопрос задан
  • 184 просмотра
Подписаться 3 Средний Комментировать
Решения вопроса 1
@Dmtm Автор вопроса
Android
все работает, серые тайлы - просто области для которых нет данных,
нужно просто правильно спозиционироваться в центр карты и выбрать правильный зум
(ручной скроллинг и зум не помогли увидеть карту маленького острова)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы