【发布时间】:2011-09-04 19:39:05
【问题描述】:
今天我们在 MKMapView 上绘制多边形。我们使用下面的伪代码来绘制多边形。
CGContextMoveToPoint
CGContextAddLineToPoint
CGContextAddLineToPoint
CGContextAddLineToPoint
CGContextClosePath
CGContextFillPath
结果可能如下所示:
我们一次获取一行数据,根据我们收到的数据为单元格分配颜色。有没有一种方法或多边形减少算法可以将所有相同颜色的多边形组合在一起(假设它们相交)给我一个大多边形?所以在这个例子中,所有的红色都是一个大多边形。
【问题讨论】:
-
你见过HazardMap 示例应用程序,它做类似的事情(虽然不是“多边形缩减”)?此外,如果所有路径都是矩形,使用 CGContextFillRect 代替当前代码可能会更快。
-
我查看了危险地图。上面的例子有误导性,它们不是完美的 Rect,所以我需要使用上面的代码。如果我们单独执行每个缩放级别 18 的应用程序,则可能会渲染数百万个多边形,因此我们需要减少该数量以使其执行一半体面。
标签: objective-c polygon cgpath