2014-12-22 3 views
1

У меня есть формат возвращения службы ArcGIS JSon, я хочу, чтобы преобразовать эту геометрию точек на долготе и широте КСН пример:Как конвертировать ИОС ESRI ArcGis точки в широту и долготу

"geometryType": "esriGeometryPoint", 
    "geometry": { 
    "x": 445340.99496, 
    "y": 2423705.6300004, 
    "spatialReference": { 
    "wkid": 32637, 
    "latestWkid": 32637 
    } 
    } 

я преобразовать точку

AGSGraphic *testGraphic = [[AGSGraphic alloc] initWithJSON:jsonData] ; 

, как я могу получить от AGSGraphic долготы и широты

+0

ли у выяснить что-то о вашем запросе? Мне тоже нужно ответить на этот вопрос :) – Dinakar

+0

да я нашел решение – mohamed

ответ

2

это решило проблему, просто отправить XPOINT и yPoint, и он будет RET Урна CLLocation Объект содержит LNG и latit

-(CLLocation *) convertToLongAndLat:(double) xPoint andYPoint :(double) yPoint { 

     double originShift = 2 * M_PI * 6378137/2.0; 

     double lon = (xPoint/originShift) * 180.0; 
     double lat = (yPoint/originShift) * 180.0; 

     lat = 180/M_PI * (2 * atan(exp(lat * M_PI/180.0)) - M_PI/2.0); 

     return [[CLLocation alloc] initWithLatitude:lat longitude:lon]; 
    } 
1

Я думаю, что вы хотите изменить пространственную привязку на основе того, что вы хотите.

Ex:

//AA : Get the clicked point 
    let gpsPoint = clickedMapPoint 
    let engine = AGSGeometryEngine.defaultGeometryEngine() 

    //AA : Change the spatial ref to get real lon and lat 
    let mapPoint = engine.projectGeometry(gpsPoint, toSpatialReference: AGSSpatialReference.wgs84SpatialReference()) as! AGSPoint 
Смежные вопросы