4
MapKitのマップにリングオーバーレイを追加しようとしています。2つのMKCircleを減算するか、MapKitでマップにどのようにリングを描くことができますか?
別のMKCircleViewから1つのMKCircleViewを差し引くことができますか、自分のカスタムオーバーレイをコーディングする必要がありますか?写真のリングのようなもののために
MapKitのマップにリングオーバーレイを追加しようとしています。2つのMKCircleを減算するか、MapKitでマップにどのようにリングを描くことができますか?
別のMKCircleViewから1つのMKCircleViewを差し引くことができますか、自分のカスタムオーバーレイをコーディングする必要がありますか?写真のリングのようなもののために
、カスタムオーバーレイを作成する必要はありません。
基本的なリングを描くには、MKCircle
を1つ追加し、MKCircleView
の場合は、希望するリングの太さに基づいてlineWidth
を設定します。
//Create the MKCircle (could be in viewDidLoad)...
MKCircle *c = [MKCircle circleWithCenterCoordinate:
CLLocationCoordinate2DMake(someLat, someLong)
radius:2000];
[myMapView addOverlay:c];
//In viewForOverlay delegate method, return a MKCircleView...
-(MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id<MKOverlay>)overlay
{
if ([overlay isKindOfClass:[MKCircle class]])
{
MKCircleView *cv = [[MKCircleView alloc] initWithCircle:overlay];
cv.lineWidth = 15; // <-- controls thickness of ring
cv.strokeColor = [UIColor greenColor];
cv.alpha = 0.75;
return cv;
}
return nil;
}
ピクセルでの線幅は? – TimoP
私はそれがポイントだと思うが、本質的にはそうだ。ズームレベルに基づいて自動的に拡大/縮小されます。 – Anna
よろしくお願いいたします。私はマップ上のポイントまで30mの距離で10m幅の領域を必要とします。私はこれを試してみる。 – TimoP