0

画像でわかるように、mapView の上部には多数のポリゴンがあります。各ポリゴンは、他のポリゴンの上にオーバーレイされます。これにより不透明度の問題が発生し、ユーザーがカラーマップを参照して色を解釈するという誤解を招きます。

ポリゴンを配置する前に、まず新しいポリゴン領域を削除/クリアしてからポリゴンを追加します。

私の質問が明確になることを願っています!そうでない場合は、お知らせください。事前に感謝します。

また、参照として以下のコードの一部を追加しました! ポリゴン データは JSON 形式でサーバーから取得され、このデータから座標を取得し、タイム スタンプごとにポリゴンとして追加します。

for(bb = 0; bb < [polygonArray count]; bb++){
        coords = malloc(sizeof(CLLocationCoordinate2D) * [[polygonArray objectAtIndex:bb] count]);
        for (int a = 0;a < [[polygonArray objectAtIndex:bb] count]; a++){
            coords[a].latitude = [[[[polygonArray objectAtIndex:bb]objectAtIndex:a]objectAtIndex:0]doubleValue];
            coords[a].longitude = [[[[polygonArray objectAtIndex:bb]objectAtIndex:a]objectAtIndex:1]doubleValue];
        }
        polygon = [[MKPolygon alloc]init];
        polygon = [MKPolygon polygonWithCoordinates:coords count:[[polygonArray objectAtIndex:bb]count]];
        [previousPolygons addObject:polygon];
        [mapView addOverlay:polygon];
        }

    }

ここに画像の説明を入力

4

1 に答える 1

0

うーん。私はあなたが何をしたいのか少しわかりません。単にポリゴンを削除したい場合は、削除して実行したいポリゴンを見つける方法が必要になります。

[mapView removeOverlay:polygon]

すべてのポリゴンを削除したい場合は、実行できます

[mapView removeOverlays:mapView.overlays]
于 2012-12-05T03:12:56.480 に答える