AnsweredAssumed Answered

Geodesic offset not returning expected results

Question asked by mikedmanak on Oct 27, 2014
Latest reply on Oct 28, 2014 by mikedmanak

I'm using geodesicMovePoints to record locations of marine mammals using a bearing and distance provided by the user.

 

So far everything is working smoothly using something like this

 

//create point for platform location

AGSPoint* vesselPoint = [AGSPoint pointWithX:[platX doubleValue] y:[platY doubleValue] spatialReference:[AGSSpatialReference wgs84SpatialReference]];

//drop it in an arrray for move

NSArray *pointArray = [NSArray arrayWithObject:vesselPoint];

//move points

AGSGeometryEngine *pointEngine = [[AGSGeometryEngine alloc]init];

NSArray *movedPoints = [pointEngine geodesicMovePoints:pointArray byDistance:distance inUnit:AGSSRUnitMeter azimuth:bearing];

AGSPoint* updatedPoint = [movedPoints firstObject];

 

However it doesn't seem like the point are being moved far enough... for instance I have collected a couple test points using a base TPK with some buffered distances baked in from some test points:

testpic.png

The first point was collected with an offset of 10 meters at bearing 180.

The second point was collected with an offset of 50 meters, also at 180.

 

The actual measurements from the test point are 7.7 and 45.8 meters.

 

Can someone explain a bit about what is going on in the geodesicMovePoints function?  Any ideas what might be accounting for the discrepancy in distance?

 

Matt Cooper

Outcomes