example: add geojson tiles

This commit is contained in:
Hannes Janetzek 2014-03-22 21:35:55 +01:00
parent b39f9ca003
commit fb46f73eb0
4 changed files with 92 additions and 2 deletions

View File

@ -67,6 +67,11 @@
android:name="org.oscim.android.test.JeoIndoorMapActivity"
android:label="@string/title_activity_map" >
</activity>
<activity
android:name="org.oscim.android.test.OsmJsonMapActivity"
android:label="@string/title_activity_map" >
</activity>
</application>
</manifest>

View File

@ -12,6 +12,7 @@ apply plugin: 'android'
dependencies {
compile project(':vtm-android')
compile project(':vtm-jeo')
compile project(':vtm-extras')
compile project(':vtm-themes')
}
@ -31,9 +32,15 @@ android {
debug.setRoot('build-types/debug')
release.setRoot('build-types/release')
}
// remove duplicates
packagingOptions {
exclude 'META-INF/services/org.jeo.data.Driver'
exclude 'META-INF/LICENSE'
exclude 'META-INF/NOTICE'
}
// ignore deprecated
lintOptions.abortOnError false
}
// Including configurations into Eclipse

View File

@ -0,0 +1,77 @@
/*
* Copyright 2014 Hannes Janetzek
*
* This program is free software: you can redistribute it and/or modify it under the
* terms of the GNU Lesser General Public License as published by the Free Software
* Foundation, either version 3 of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
* PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License along with
* this program. If not, see <http://www.gnu.org/licenses/>.
*/
package org.oscim.android.test;
import org.oscim.android.MapActivity;
import org.oscim.android.MapView;
import org.oscim.layers.TileGridLayer;
import org.oscim.layers.tile.bitmap.BitmapTileLayer;
import org.oscim.layers.tile.vector.BuildingLayer;
import org.oscim.layers.tile.vector.VectorTileLayer;
import org.oscim.renderer.MapRenderer;
import org.oscim.theme.IRenderTheme;
import org.oscim.theme.ThemeLoader;
import org.oscim.theme.VtmThemes;
import org.oscim.tiling.TileSource;
import org.oscim.tiling.source.bitmap.DefaultSources.StamenToner;
import org.oscim.tiling.source.geojson.HighroadJsonTileSource;
import org.oscim.tiling.source.geojson.OsmBuildingJsonTileSource;
import org.oscim.tiling.source.geojson.OsmLanduseJsonTileSource;
import org.oscim.tiling.source.geojson.OsmWaterJsonTileSource;
import android.os.Bundle;
public class OsmJsonMapActivity extends MapActivity {
MapView mMapView;
VectorTileLayer mBaseLayer;
TileSource mTileSource;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_map);
mMapView = (MapView) findViewById(R.id.mapView);
registerMapView(mMapView);
mTileSource = new OsmWaterJsonTileSource();
mMap.setBackgroundMap(new BitmapTileLayer(mMap, new StamenToner()));
mMap.layers().add(new TileGridLayer(mMap));
IRenderTheme theme = ThemeLoader.load(VtmThemes.OSMARENDER);
MapRenderer.setBackgroundColor(theme.getMapBackground());
VectorTileLayer l;
l = new VectorTileLayer(mMap, new OsmLanduseJsonTileSource());
l.setRenderTheme(theme);
l.tileRenderer().setOverdrawColor(0);
mMap.layers().add(l);
l = new VectorTileLayer(mMap, new HighroadJsonTileSource());
l.setRenderTheme(theme);
l.tileRenderer().setOverdrawColor(0);
mMap.layers().add(l);
l = new VectorTileLayer(mMap, new OsmBuildingJsonTileSource());
l.setRenderTheme(theme);
l.tileRenderer().setOverdrawColor(0);
mMap.layers().add(l);
mMap.layers().add(new BuildingLayer(mMap, l));
mMap.setMapPosition(53.08, 8.83, Math.pow(2, 16));
}
}

View File

@ -48,6 +48,7 @@ public class Samples extends Activity {
linearLayout.addView(createButton(ThemeStylerActivity.class));
linearLayout.addView(createButton(S3DBMapActivity.class));
linearLayout.addView(createButton(JeoIndoorMapActivity.class));
linearLayout.addView(createButton(OsmJsonMapActivity.class));
}
private Button createButton(final Class<?> clazz) {