1

我有一个应用程序(WinForms C#),它允许用户绘制一条线(自由绘制)以突出显示从谷歌地图获取的位图上感兴趣的道路。

我正在使用 Mouse Down/Move/Up 事件将点添加到 GraphicsPath 对象。这适用于仅由两点表示的直线路段。但是当鼠标画轮长时间按住按钮时,会产生大量的点数据。

这不仅效率低下,而且绘制曲线的方式也很笨拙(特别是当缩放级别太低时)。

问题:

  • 路径完成后,我如何以编程方式减少点数而不损失准确性。
  • 有没有更好的方法来使用某种形式的几何构造来捕获点信息?
4

1 回答 1

2

减少多边形曲线中点数的常用方法是Ramer-Douglas-Peucker 算法。它非常适合减少地图绘制中的点数,例如路线。

于 2013-01-27T19:01:37.350 回答