Sto utilizzando le API MapKit di iOS 7 per produrre movimenti di telecamere 3D su una mappa che visualizza un percorso di MKDirectionsRequest. Il percorso è reso da MKOverlayRenderer in questo modo:MKPolylineRenderer produce percorsi irregolari e frastagliati
-(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;
}
Si sta lavorando bene tranne per un problema. Quando a ingrandire o pan intorno al percorso con MKMapCameras (e senza di loro, se faccio semplicemente così come l'utente), il percorso è frastagliato come mostrato in questa schermata:
Ho testato per vedere se commutazione a MKOverlayLevelAboveLabels fa la differenza ma purtroppo il risultato è stato lo stesso.
Qualcuno ha suggerimenti su come migliorare il rendering? Il passaggio a un percorso geodetico fa la differenza e, in caso affermativo, come potrei implementarlo qui?
commutazione a MKGeodesicPolyline non fa differiscono ENCE ma è creato nello stesso modo come MKPolyline eccezione si chiama polylineWithXXX sul MKGeodesicPolyline tuttavia il renderer è ancora MKPolylineRenderer. – Anna