我正在使用 iOS 7 MapKit API 在显示 MKDirectionsRequest 生成路径的地图上生成 3D 摄像机运动。路径由 MKOverlayRenderer 渲染,如下所示:
-(void)showRoute:(MKDirectionsResponse *)response
{
for (MKRoute *route in response.routes)
{
[self.map
addOverlay:route.polyline level:MKOverlayLevelAboveRoads];
}
}
- (MKOverlayRenderer *)mapView:(MKMapView *)mapView rendererForOverlay:(id < MKOverlay >)overlay
{
MKPolylineRenderer *renderer =
[[MKPolylineRenderer alloc] initWithOverlay:overlay];
UIColor *mapOverlayColor = [UIColor colorWithRed:((float)22 / 255.0f) green:((float)126 / 255.0f) blue:((float)251 / 255.0f) alpha:0.8];
renderer.strokeColor = mapOverlayColor;
renderer.lineWidth = 13.0;
return renderer;
}
它运行良好,除了一个问题。当我使用 MKMapCameras 缩放或平移路径时(如果没有它们,如果我只是作为用户这样做),路径是锯齿状的,如下面的屏幕截图所示:
我测试了切换到 MKOverlayLevelAboveLabels 是否会有所不同,但遗憾的是结果是一样的。
有没有人有关于如何改进渲染的建议?切换到测地线路径是否会有所不同,如果是这样,我将如何在这里实现?