0
CLLocationCoordinate2D配列からポリゴンを拡大するために再生しています。 これはコードである:座標が正しくないポリゴン
int coordsLen = [self.coordinatesArray count];
CLLocationCoordinate2D *coords = malloc(sizeof(CLLocationCoordinate2D) * coordsLen);
NSLog(@"count: %d", coordsLen);
for (int i=0; i < coordsLen; i++)
{
coordinates *coordObj = (coordinates *)[self.coordinatesArray objectAtIndex:i];
coords[i] = CLLocationCoordinate2DMake(coordObj.latitude, coordObj.longitude);
}
self.polygon = [MKPolygon polygonWithCoordinates:coords count:coordsLen];
free(coords);
結果は、それが私に砂時計を示す(self.coordatesArrayに座標の順番であるように)代わりに、私矩形を示すことです。これは私がオーバーレイとしてマップにポリゴンを追加する方法です
int coordsLen = [self.coordinatesArray count];
MKMapPoint points[coordsLen];
for (int i=0; i < coordsLen; i++)
{
coordinates *coordObj = (coordinates *)[self.coordinatesArray objectAtIndex:i];
CLLocationCoordinate2D c = {coordObj.latitude,coordObj.longitude};
points[i] = MKMapPointForCoordinate(c);
}
self.polygon = [MKPolygon polygonWithPoints:points count:coordsLen];
:
self.polygonView = nil;
[self.mapView addOverlay:self.polygon];
[self.mapView setVisibleMapRect:[self.polygon boundingMapRect] animated:TRUE];
これらの座標は
は、私がfromPointコンストラクタを使用する場合でも、私は同じ結果を得ました:
coord1 = {
latitude = "45.546112";
longitude = "9.11805";
};
coord2 = {
latitude = "45.545773";
longitude = "9.120568";
};
coord3 = {
latitude = "45.544468";
longitude = "9.120629";
};
coord4 = {
latitude = "45.544544";
longitude = "9.118";
};
何か提案がありますか?事前に
おかげで、 サミュエル