私は、MKDirectionsRequestで生成されたパスを表示するマップ上で3Dカメラの動きを生成するために、iOS 7 MapKit APIを使用しています。パスはMKOverlayRendererによって次のようにレンダリングされます。MKPolylineRendererはギザギザで不等なパスを生成します
-(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;
}
1つの問題を除いてうまくいきます。 (私は単にユーザーとしてそうするならば、そしてそれらなし)私はMKMapCamerasとパスを中心にズームやパンすると、このスクリーンショットのように、パスがギザギザである:
私は、スイッチングかどうかを確認するためにテストMKOverlayLevelAboveLabelsには違いはありますが、残念ながら結果は同じでした。
レンダリングの改善方法に関する提案はありますか?測地線パスに切り替えると違いがありますか?もしそうなら、私はこれをどのように実装しますか?
MKGeodesicPolylineに切り替えることで違いはありませんMKGolodesicPolyline上でpolylineWithXXXを呼び出すことを除いてMKPolylineと同じ方法で作成されますが、レンダラーはまだMKPolylineRendererです。 – Anna