views:

496

answers:

1

Say I have a CoreData entity "Point" with two properties x and y (both NSNumber).

How would a NSPredicate need to look like to let me find the closest Point to say a,b? for distance = sqrt((x-a)(x-a)+(y-b)(y-b))

While I could define a transient property that calculates a distance to a predefined point I can't see how I could programmatically change that point when launching a fetchrequest.

Any help would be greatly appreciated.

+3  A: 

Sorry, but doing arithmetic in an NSPredicate isn't supported. Only comparison operators can be used. And the news gets worse. You can't use a transient property in an NSFetchRequest. Only persistent properties can be used. If you really need this level of control in fetching your objects, Core Data may not be able to accommodate you.

Alex
Thanks again Alex. This saved me some time trying to find a way when there is none. I will fetch a set of points around the point and then find the closest based on that subset (with a wide enough margin, that should yield the desired result)
Felix