UWP MapControl:MapPolyLine失真/格式错误

时间:2016-06-30 11:27:53

标签: uwp openstreetmap bing-maps polyline uwp-maps

我开发了一个UWP-App并使用了MapControl。 我还在MapIcon添加了MapPolyLineMapControl等元素,但我遇到了MapPolyLine的问题:

有时候添加这样的折线时,它看起来完全扭曲/畸形: Malformed PolyLine

当更改MapControl的缩放级别时,它经常会返回到预期的折线,但在使用之前的缩放级别时,它最终会再次出现格式错误。 Wellformed PolyLine

(在截图中,MapControl使用的是OSM-Layer,但它也会使用默认的Bing-Maps-Layer;两个屏幕截图都显示完全相同的MapPolyLine具有不同的视角<) / p>

2 个答案:

答案 0 :(得分:1)

看起来您可能也在存储海拔高度? 我认为缩放时的地图控件会显示3D空间中的点。

试试这个:

// We are not Plotting Alititue to keep map 'flat' [ Also Emulator sets Altitude  = 0 ]

BasicGeoposition _newPlotPos = new BasicGeoposition() { 
    Latitude = position.Latitude, 
    Longitude = position.Longitude, 
    Altitude = 0    
};

答案 1 :(得分:0)

也许我很想念这个问题,就像从屏幕截图中看到的那样,我实际上并没有看到&#39;格式错误的地方。线是? 他们只是屏幕上的人吗?

如果是线路向远处运行,那么它可能与我遇到的问题相同,原因有两个。 首先,如果您使用模拟器,有时第一个GPS位置在启动时离开西雅图的某个地方,这可能是您获得的第一个点,所以如果您正在拉动本地地理位置&#39;例如,关闭数据库的数据,第一点是西雅图,然后下一个点是你的本地数据,你得到一条线到西雅图。 其次,MapPloyLine以列表方式点对点工作,因此每个进入ploy行的条目都来自此处 - &gt;到这里。因此,如果存在“差距”。在您的位置数据中,您可能会看到巨大的线条被绘制到看起来奇怪但正确的位置。 我正在将数据从GPS记录到数据库中,如果记录停止,我会增加一个&#39; RecordingCount&#39;在数据中代表新的&#39;段&#39;。 我还使用FIFO缓冲区绘制我的折线,跳过第一个绘图点(它是新段的开始),然后从这个起点转到下一个......到下一个......到下一个.. < / p>