绘制世界地图 - 性能&互动 - iOS

时间:2014-04-24 20:52:19

标签: ios iphone ios7 core-graphics

我想使用Shapefile生成交互式世界地图。我能够导入数据并使用CG路径将地图绘制成一个大视图。

地图需要支持平移,缩放和触摸交互。为此,我创建了一个UIScrollView并将MapView(绘制了所有国家/地区的大视图)放入其中。

我需要改进它的两个方面:

表现/渲染

我绘制的地图比屏幕尺寸大得多,以便在放大时使其看起来合理。这有一些问题。首先,当我缩小时,我需要边框描边/线条更宽,以便它们可见。当我放大时,我希望中风变得更瘦。此外,当我放大时,我仍然可以看到地图是模糊的。我不想过多地增加视图大小。

当我放大时,如何让地图看起来更清晰?我试图在放大时重绘地图,但这需要太长时间。我能以某种方式重新渲染屏幕上的内容吗?

触摸互动

我需要能够为每个不同的国家/地区举办触摸活动。

可能的方法?

我正在考虑将每个国家分开来看待自己的观点。这应该使触摸易于处理。然后我想我可以重新绘制屏幕/缩放的相应视图。

我玩了一个类似的应用程序("世界地图"),我可以看到,当您平移或缩放时,地图会模糊一秒钟然后变得清晰。那里发生了什么?

2 个答案:

答案 0 :(得分:1)

使用mapkit并提供自定义图块。不要重新发明轮子并尝试编写另一个地图框架

答案 1 :(得分:0)

我认为您必须从大地图图像创建不同的缩放区域图像。怎么说...想象谷歌地图,它是如何工作的...我认为为世界的每个区域提供许多不同的缩放因子图像...然后在用户需要显示它时合并显示在屏幕上... < / p>

使用代码实现地图效果在当前的iPhone设备上是不可能的,超出了iOS设备的能力