2014-10-09 3 views
-1

мне нужно получить массив CLLocation только с координатами, например:CLLocation получить только координаты

var locations = [CLLocation(latitude: 38.5, longitude: -120.2), 
     CLLocation(latitude: 40.7000, longitude: -120.95000), 
     CLLocation(latitude: 43.25200, longitude: -126.453000)] 

я в настоящее время экономить каждое место так:

var locationArray: [CLLocation] = [] 

В didUpdateLocations:

locationArray.append(locations[0] as CLLocation) 

Но я всегда получаю что-то вроде этого:

[< -122,02684687 + +37,32956209> +/- 0.00m (скорость -1.00/MPS курс -1,00) @ 10/9/14, 2:12:49 PM Central European Summer Time, < -122,02685248, +37.32959580> +/- 0.00m (скорость -1.00 mps/course -1.00) @ 10/9/14, 2:12:49 PM Центральноевропейское летнее время, < -122.02685221, + 37.32963096> +/- 0.00m (скорость -1.00 mps/course -1.00) @ 10/9/14, 2:12:49 PM Центральноевропейское летнее время, < -122.02685460, + 37.32966692> +/- 0.00m (скорость -1.00 mps/course -1.00) @ 10/9/14, 2:12:49 PM Центральноевропейское летнее время

Я попытался преобразовать его в CLLocationCoordinate2D, но я всегда получаю полный и никогда не приводить пример выше. Я также пробовал что-то вроде этого:

for (index,element) in enumerate(locationArray) { 

     var cllocation = CLLocation(latitude: element.coordinate.longitude, longitude: element.coordinate.latitude) 

     coordinatesArray.append(cllocation) 

    } 

Но это также возвращает полный массив местоположений. Что я делаю неправильно? Как я могу создать массив CLLocation с только координатами? Если вы можете указать мне в правильном направлении, это было бы фантастически.

ответ

1

Как насчет:

var locationArray: [CLLocationCoordinate2D] = [] 
locationArray.append(CLLocationCoordinate2D(latitude: ..., longitude: ...)) 

CLLocation содержит все другие вещи, как course, altitude, точность ...

CLLocationCoordinate2D содержит только широту и долготу.

Смежные вопросы