9

私は 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;
}

1つの問題を除いて、うまく機能しています。MKMapCameras を使用してパスをズームまたはパンすると (ユーザーとして単純にそうする場合はそれらを使用せずに)、このスクリーンショットに示すようにパスがギザギザになります。

スクリーンショット

MKOverlayLevelAboveLabels に切り替えると違いが生じるかどうかをテストしましたが、残念ながら結果は同じでした。

レンダリングを改善する方法について提案がある人はいますか? 測地線パスへの切り替えは違いを生みますか?もしそうなら、ここでこれをどのように実装しますか?

4

6 に答える 6