• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java TileCache类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.mapsforge.map.layer.cache.TileCache的典型用法代码示例。如果您正苦于以下问题:Java TileCache类的具体用法?Java TileCache怎么用?Java TileCache使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



TileCache类属于org.mapsforge.map.layer.cache包,在下文中一共展示了TileCache类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: createLayers

import org.mapsforge.map.layer.cache.TileCache; //导入依赖的package包/类
@AfterPermissionGranted(PERMISSIONS_REQUEST_READ_STORAGE)
private void createLayers() {
    if (EasyPermissions.hasPermissions(getContext(), Manifest.permission.READ_EXTERNAL_STORAGE)) {
        TileCache tileCache = AndroidUtil.createTileCache(getContext(),
                "mapFragment",
                this.mapView.getModel().displayModel.getTileSize(),
                1.0f,
                this.mapView.getModel().frameBufferModel.getOverdrawFactor());

        final Layers layers = this.mapView.getLayerManager().getLayers();
        final MapViewPosition mapViewPosition = this.mapView.getModel().mapViewPosition;

        initializePosition(mapViewPosition);

        TileRendererLayer tileRendererLayer = createTileRendererLayer(tileCache, mapViewPosition,
                getMapFile(), getRenderTheme());
        layers.add(tileRendererLayer);

        LabelLayer labelLayer = new LabelLayer(AndroidGraphicFactory.INSTANCE, tileRendererLayer.getLabelStore());
        mapView.getLayerManager().getLayers().add(labelLayer);

        // overlay with a marker to show the goal position
        this.goalLocationOverlay = new Marker(null, null, 0, 0);
        layers.add(this.goalLocationOverlay);

        createLocationLayer();
    } else {
        EasyPermissions.requestPermissions(
                this,
                "",
                PERMISSIONS_REQUEST_READ_STORAGE,
                Manifest.permission.READ_EXTERNAL_STORAGE);
    }
}
 
开发者ID:marunjar,项目名称:anewjkuapp,代码行数:35,代码来源:MapFragment.java


示例2: MapsforgeOSMTileSource

import org.mapsforge.map.layer.cache.TileCache; //导入依赖的package包/类
public MapsforgeOSMTileSource(@NonNull Context context,
                              @NonNull String name,
                              @NonNull String mapFile,
                              @NonNull TileCache cache) {
    this.context = context;
    this.name = name;
    this.mapFile = mapFile;
    //this.tileCache = cache;
    //this.tileWeakCache = new WeakHashMap<>();

    MapDatabase mapDatabase = new MapDatabase();
    mapGenerator = new DatabaseRenderer(mapDatabase, AndroidGraphicFactory.INSTANCE);
    xmlRenderTheme = new RenderTheme();
    displayModel = new Model().displayModel;

    mapDatabase.closeFile();
    mapDatabase.openFile(new File(mapFile));
    mapBounds = mapDatabase.getMapFileInfo().boundingBox;
    zoomBounds = -1;
}
 
开发者ID:yuviii,项目名称:OfflineMap,代码行数:21,代码来源:MapsforgeOSMTileSource.java


示例3: createExternalStorageTileCache

import org.mapsforge.map.layer.cache.TileCache; //导入依赖的package包/类
static TileCache createExternalStorageTileCache(Context c, String id, int firstLevelSize, int tileSize) {
	Log.d(TAG, "createExternalStorageTileCache firstLevelSize=" + firstLevelSize);
	TileCache firstLevelTileCache = new InMemoryTileCache(firstLevelSize);
	if (storage != null) { // storage will be null if full
		String cacheDirectoryName = storage.getAbsolutePath() + File.separator + id;
		File cacheDirectory = new File(cacheDirectoryName);
		if (cacheDirectory.exists() || cacheDirectory.mkdirs()) {
			int tileCacheFiles = estimateSizeOfFileSystemCache(cacheDirectoryName, firstLevelSize, tileSize);
			if (cacheDirectory.canWrite() && tileCacheFiles > 0) {
				try {
					Log.d(TAG, "createExternalStorageTileCache tileCacheFiles=" + tileCacheFiles);
					TileCache secondLevelTileCache = new FileSystemTileCache(tileCacheFiles,
						cacheDirectory, AndroidGraphicFactory.INSTANCE, true, 25, true);
					return new TwoLevelTileCache(firstLevelTileCache, secondLevelTileCache);
				} catch (IllegalArgumentException e) {
					Log.w(TAG, "createExternalStorageTileCache e=" + e);
				}
			}
		}
		else {
			Log.w(TAG, "createExternalStorageTileCache can't");
		}
	}
	return firstLevelTileCache;
}
 
开发者ID:emdete,项目名称:Simplicissimus,代码行数:26,代码来源:Map.java


示例4: onSharedPreferenceChanged

import org.mapsforge.map.layer.cache.TileCache; //导入依赖的package包/类
@Override
public void onSharedPreferenceChanged(SharedPreferences preferences, String key) {
	super.onSharedPreferenceChanged(preferences, key);
	// difficult to know which render theme options have changed since we
	// do not know all the keys, so we just purge the caches and redraw
	// the map whenever there is a change in the settings.
	// TODO: for real applications it is essential to know when the style menu has
	// changed. It would be good to find a way of identifying when a key is
	// for the style menu.
	Log.i(SamplesApplication.TAG, "Purging tile caches");

	for (TileCache tileCache : tileCaches) {
		tileCache.purge();
	}
	AndroidUtil.restartActivity(this);
}
 
开发者ID:emdete,项目名称:Simplicissimus,代码行数:17,代码来源:RenderTheme4.java


示例5: addLayers

import org.mapsforge.map.layer.cache.TileCache; //导入依赖的package包/类
protected void addLayers(TileCache tileCache, MapViewPosition mapViewPosition) {
    if (isNetworkAvailable()) {
        downloadLayer = new TileDownloadLayer(this.tileCache,
                mapViewPosition, OpenStreetMapMapnik.INSTANCE,
                AndroidGraphicFactory.INSTANCE);
        layerManager.getLayers().add(downloadLayer);
    } else {
        Layer layer = Utils.createTileRendererLayer(tileCache, mapViewPosition, getMapFile());
        layerManager.getLayers().add(layer);
    }

    // a marker to show at the position
    Drawable drawable = getResources().getDrawable(R.drawable.pin);
    Bitmap bitmap = AndroidGraphicFactory.convertToBitmap(drawable);

    // create the overlay and tell it to follow the location
    myLocationOverlay = new MyLocationOverlay(this,
            mapViewPosition, bitmap, Utils.createPaint(AndroidGraphicFactory.INSTANCE.createColor(90, 15, 20, 25), 0,
            Style.FILL), null, user);
    myLocationOverlay.setSnapToLocationEnabled(false);

    layerManager.getLayers().add(this.myLocationOverlay);
}
 
开发者ID:monossido,项目名称:CoopTDMOrienteering,代码行数:24,代码来源:MapsActivity.java


示例6: getTileCache

import org.mapsforge.map.layer.cache.TileCache; //导入依赖的package包/类
private synchronized TileCache getTileCache(String themeName) {
		if (TILE_CACHE_TABLE.containsKey(themeName)) {
			return TILE_CACHE_TABLE.get(themeName);
		} else {
			File cacheDir = new File(SAVE_PATH, themeName);
			TileCache tileCache = new FileSystemTileCache(CACHE_CAPACITY, cacheDir, GRAPHIC_FACTORY, false);
			TILE_CACHE_TABLE.put(themeName, tileCache);
	    		return tileCache;
		}
}
 
开发者ID:virus-warnning,项目名称:mapsforge-web,代码行数:11,代码来源:HttpServerHandler.java


示例7: getTile

import org.mapsforge.map.layer.cache.TileCache; //导入依赖的package包/类
private ByteBuf getTile(String themeName, byte zoom, int tx, int ty) throws Exception {
  		long begin = System.currentTimeMillis();

  		String action;
  		RenderThemeFuture rtf = getRenderThemeFuture(themeName);
  		TileCache tileCache = getTileCache(themeName);
  		RendererJob theJob = createJob(MAPDS, rtf, zoom, tx, ty);
  		
  		if (!tileCache.containsKey(theJob)) {
  			action = "Draw tile";
  			TileBasedLabelStore tileBasedLabelStore = new TileBasedLabelStore(tileCache.getCapacityFirstLevel());
  			DatabaseRenderer renderer = new DatabaseRenderer(MAPDS, GRAPHIC_FACTORY, tileCache, tileBasedLabelStore, true, true, null);
  			TileBitmap tb = renderer.executeJob(theJob);
  			tileCache.put(theJob, tb);
  		} else {
  			action = "Use cached tile";
  		}

// Load tile as a Netty buffer.
String tilePath = String.format("%s/%s/%d/%d/%d.tile", SAVE_PATH, themeName, zoom, tx, ty);
InputStream tile = new FileInputStream(tilePath);
ByteBuf buffer = Unpooled.buffer();
buffer.writeBytes(tile, tile.available());

double elapsed = (System.currentTimeMillis() - begin) / 1000.0;

// TODO: Use logger.
System.out.printf("%s %s/%d/%d/%d. (%.3f seconds used)\n", action, themeName, zoom, tx, ty, elapsed);

return buffer;
  }
 
开发者ID:virus-warnning,项目名称:mapsforge-web,代码行数:32,代码来源:HttpServerHandler.java


示例8: MapsforgeMapView

import org.mapsforge.map.layer.cache.TileCache; //导入依赖的package包/类
public MapsforgeMapView(@NonNull Context context,
                        @NonNull TileCache tileCache,
                        @NonNull String offlineMapFilePath) {
    super(context, MapsConfig.TILE_SIZE, new DefaultResourceProxyImpl(context), new MapsforgeTileProvider(context, tileCache, offlineMapFilePath), null);
}
 
开发者ID:yuviii,项目名称:OfflineMap,代码行数:6,代码来源:MapsforgeMapView.java


示例9: MapsforgeTileProvider

import org.mapsforge.map.layer.cache.TileCache; //导入依赖的package包/类
private MapsforgeTileProvider(@NonNull Context context,
                              @NonNull TileCache tileCache,
                              @NonNull String offlineMapFilePath) {
    super(TileSourceFactory.getTileSource("MapquestOSM"), new SimpleRegisterReceiver(context));
    final MapsforgeOSMDroidTileProviderBase mapsforgeProvider = new MapsforgeOSMDroidTileProviderBase();
    final MapsforgeOSMTileSource tileSourceMf = new MapsforgeOSMTileSource(context, "mapsforge", offlineMapFilePath, tileCache);
    mapsforgeProvider.setTileSource(tileSourceMf);
    mTileProviderList.add(mapsforgeProvider);
}
 
开发者ID:yuviii,项目名称:OfflineMap,代码行数:10,代码来源:MapsforgeMapView.java


示例10: addLayers

import org.mapsforge.map.layer.cache.TileCache; //导入依赖的package包/类
private static void addLayers(MapView mapView, String MapPath) {
    LayerManager layerManager = mapView.getLayerManager();
    Layers layers = layerManager.getLayers();
    TileCache tileCache = createTileCache();
    layers.clear();
    layers.add(createTileRendererLayer(tileCache, mapView.getModel().mapViewPosition, layerManager, MapPath));
}
 
开发者ID:Longri,项目名称:cachebox3.0,代码行数:8,代码来源:MapPanel.java


示例11: createExternalStorageTileCache

import org.mapsforge.map.layer.cache.TileCache; //导入依赖的package包/类
/**
 * @param c
 *            the Android context
 * @param id
 *            name for the directory
 * @return a new cache created on the external storage
 */
@Deprecated
public static TileCache createExternalStorageTileCache(final Context c, final String id) {
	final TileCache firstLevelTileCache = new InMemoryTileCache(32);
	final String cacheDirectoryName = c.getExternalCacheDir().getAbsolutePath() + File.separator + id;
	final File cacheDirectory = new File(cacheDirectoryName);
	if (!cacheDirectory.exists()) {
		cacheDirectory.mkdir();
	}
	final TileCache secondLevelTileCache = new FileSystemTileCache(1024, cacheDirectory, AndroidGraphicFactory.INSTANCE);
	return new TwoLevelTileCache(firstLevelTileCache, secondLevelTileCache);
}
 
开发者ID:saintbyte,项目名称:openbmap,代码行数:19,代码来源:MapUtils.java


示例12: createTileCache

import org.mapsforge.map.layer.cache.TileCache; //导入依赖的package包/类
private TileCache createTileCache(int index) {
	TileCache firstLevelTileCache = new InMemoryTileCache(128);
	File cacheDirectory = new File(System.getProperty("java.io.tmpdir"),
			"mapsforge" + index);
	TileCache secondLevelTileCache = new FileSystemTileCache(1024,
			cacheDirectory, GRAPHIC_FACTORY);
	return new TwoLevelTileCache(firstLevelTileCache, secondLevelTileCache);
}
 
开发者ID:ianmalcolm,项目名称:DeadReckoning,代码行数:9,代码来源:MainFrame.java


示例13: createTileDownloadLayer

import org.mapsforge.map.layer.cache.TileCache; //导入依赖的package包/类
@SuppressWarnings("unused")
private Layer createTileDownloadLayer(TileCache tileCache,
		MapViewPosition mapViewPosition) {
	TileSource tileSource = OpenStreetMapMapnik.INSTANCE;
	TileDownloadLayer tileDownloadLayer = new TileDownloadLayer(tileCache,
			mapViewPosition, tileSource, GRAPHIC_FACTORY);
	tileDownloadLayer.start();
	return tileDownloadLayer;
}
 
开发者ID:ianmalcolm,项目名称:DeadReckoning,代码行数:10,代码来源:MainFrame.java


示例14: createTileRendererLayer

import org.mapsforge.map.layer.cache.TileCache; //导入依赖的package包/类
private TileRendererLayer createTileRendererLayer(TileCache tileCache,
		MapViewPosition mapViewPosition, boolean isTransparent,
		boolean renderLabels, File mapFile) {
	TileRendererLayer tileRendererLayer = new TileRendererLayer(tileCache,
			new MapFile(mapFile), mapViewPosition, isTransparent,
			renderLabels, GRAPHIC_FACTORY);
	tileRendererLayer.setXmlRenderTheme(InternalRenderTheme.OSMARENDER);
	return tileRendererLayer;
}
 
开发者ID:ianmalcolm,项目名称:DeadReckoning,代码行数:10,代码来源:MainFrame.java


示例15: initialize

import org.mapsforge.map.layer.cache.TileCache; //导入依赖的package包/类
public static boolean initialize(String locationOfMapFile,String renderThemeAddr, Context _context) {
		Log.i(TAG, "Initilizing started");
		mapFilePath = locationOfMapFile;
		androidGraphicFactory = AndroidGraphicFactory.INSTANCE;
		
		mapFile = new File(mapFilePath);
		
		displayModel = new DisplayModel();

		
		mapViewPosition = new MapViewPosition(displayModel);
		
		mapDataStore = new MapFile(mapFile);

		displayModel.setFixedTileSize(256);
		
		TileCache tileCache = AndroidUtil.createTileCache(context, "111", 256, 1.0f, 1d);
//		TileCache tileCache = null;

		databaseRenderer = new DatabaseRenderer(mapDataStore, androidGraphicFactory, tileCache);
		context = _context;
		
		try {
			xmlRenderTheme = new ExternalRenderTheme(new File(renderThemeAddr	));
			Log.i(TAG, "xmlRenderTheme initialized successfully");
		}
		catch(Throwable e)
		{
			Log.i(TAG, "xmlRenderTheme error initializing ");
			e.printStackTrace();
		}

		renderThemeFuture = new RenderThemeFuture(AndroidGraphicFactory.INSTANCE, xmlRenderTheme, displayModel);
		new Thread(renderThemeFuture).run();

		Log.i(TAG, "Mapsforge Initializing Ended");
		
		return true;
	}
 
开发者ID:Arman92,项目名称:Mapsforge-OsmDroid-GraphHopper,代码行数:40,代码来源:MFTileSource.java


示例16: createTileRendererLayer

import org.mapsforge.map.layer.cache.TileCache; //导入依赖的package包/类
/**
 * Creates a tile layer, which optionally supports long press actions and custom render themes
 * @param tileCache
 * @param mapViewPosition
 * @param mapFile
 * @param renderTheme
 * @return
 */
public static Layer createTileRendererLayer(final TileCache tileCache, final MapViewPosition mapViewPosition,
		final MapFile mapFile, final XmlRenderTheme renderTheme, final onLongPressHandler handler) {

	if (mapFile == null) {
		return null;
	}

	final TileRendererLayer tileRendererLayer = new TileRendererLayer(tileCache, mapFile, mapViewPosition, AndroidGraphicFactory.INSTANCE) {
		@Override
		public boolean onLongPress(LatLong tapLatLong, Point thisXY, Point tapXY) {
               if (handler != null) {
                   ((onLongPressHandler)handler).onLongPress(tapLatLong, thisXY, tapXY);
                   return true;
               } else {
                   return false;
               }
		}
	};

       if (renderTheme == null) {
           Log.i(TAG, "Using default render theme");
           tileRendererLayer.setXmlRenderTheme(InternalRenderTheme.OSMARENDER);
       } else {
           Log.i(TAG, "Using custom theme");
           tileRendererLayer.setXmlRenderTheme(renderTheme);
       }

       tileRendererLayer.setTextScale(1.5f);
       return tileRendererLayer;
}
 
开发者ID:openbmap,项目名称:radiocells-scanner-android,代码行数:39,代码来源:MapUtils.java


示例17: createTileCache

import org.mapsforge.map.layer.cache.TileCache; //导入依赖的package包/类
/**
 * Creates a tile cache for the baselayer
 *
 * @return
 */
protected final TileCache createTileCache() {
    if (mMapView == null) {
        return null;
    }
    return AndroidUtil.createTileCache(
            getActivity().getApplicationContext(),
            "mapcache",
            mMapView.getModel().displayModel.getTileSize(),
            1f,
            mMapView.getModel().frameBufferModel.getOverdrawFactor());
}
 
开发者ID:openbmap,项目名称:radiocells-scanner-android,代码行数:17,代码来源:MapViewActivity.java


示例18: RasterWorkerThread

import org.mapsforge.map.layer.cache.TileCache; //导入依赖的package包/类
public RasterWorkerThread(TileCache tileCache, JobQueue<RasterJob> jobQueue, RasterRenderer pRasterRenderer, Layer layer, IWorkStatus status) {

		this.layer = layer;
		this.tileCache = tileCache;
		this.rasterRenderer = pRasterRenderer;
		this.jobQueue = jobQueue;
		this.mStatus = status;
	}
 
开发者ID:RoProducts,项目名称:rastertheque,代码行数:9,代码来源:RasterWorkerThread.java


示例19: createTileRendererLayer

import org.mapsforge.map.layer.cache.TileCache; //导入依赖的package包/类
private TileRendererLayer createTileRendererLayer(TileCache tileCache,
                                                  MapViewPosition mapViewPosition, File mapFile,
                                                  XmlRenderTheme renderTheme) {
    MapDataStore mapDataStore = new MapFile(mapFile);

    TileRendererLayer tileRendererLayer = AndroidUtil.createTileRendererLayer(tileCache,
            mapViewPosition, mapDataStore, renderTheme, false, false, true);
    tileRendererLayer.setTextScale(1.5f);

    return tileRendererLayer;
}
 
开发者ID:marunjar,项目名称:anewjkuapp,代码行数:12,代码来源:MapFragment.java


示例20: onDestroy

import org.mapsforge.map.layer.cache.TileCache; //导入依赖的package包/类
@Override public void onDestroy() {
	super.onDestroy();
	if (DEBUG) { Log.d(TAG, "Map.onDestroy"); }
	for (TileLayer tileLayer: tileLayers)
		tileLayer.onDestroy();
	for (TileCache tileCache: tileCaches)
		tileCache.destroy();
	mapView.getModel().mapViewPosition.destroy();
	mapView.destroy();
	AndroidGraphicFactory.clearResourceMemoryCache();
}
 
开发者ID:emdete,项目名称:Simplicissimus,代码行数:12,代码来源:Map.java



注:本文中的org.mapsforge.map.layer.cache.TileCache类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java SubnodeConfiguration类代码示例发布时间:2022-05-21
下一篇:
Java DomElement类代码示例发布时间:2022-05-21
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap