我已经用google的android mapview苦苦挣扎了几个星期。
我正在绘制大量具有大量分数的多边形。平均每个15个多边形,大约1000个点。
我遇到的第一个问题是表现......毫不奇怪。在做了一些测试之后,我意识到罪魁祸首就是投影.ToPixel()我成功绕过了当用户通过简单地将所有点在方向上移动x个像素量(差异)来平移时,但是在缩放时我别无选择只能使用toPixel方法。
根据缩放级别,是否有更有效的修改点的方法?经过一些研究后,我发现了如何用圆形和其他形状做到这一点的例子,但我不知道从哪里开始重塑多边形,对此有任何想法?
我遇到的第二个问题是,当我在视图中看到整个多边形时,所有都是盛大的,但是当我在任何一侧平移地图边界(地图有效地再次开始向左和向右)时多边形线似乎伸展并伸展到地图边界,导致整个地方出现疯狂的意大利面条线!我认为发生的事情是path.close()或path.LineTo()方法认为最短的路径在世界的中途飞行到达导致这些线的下一个点。我不知道如何解决这个问题。我根本无法忽略不属于当前lon / lat跨度的点,因为(显然)导致多边形随时间改变形状!
有没有人遇到过这个问题,怎么能解决这个问题呢?我甚至不确定我应该用谷歌搜索什么!?
更新1: 通过阻止mapview循环可以很容易地解决问题。有没有办法阻止mapview循环世界!?!?