For some reason I'm getting extra numbers on the end when I try to do this:
float lat = floor(1000.0 * origin.latitude) / 1000.0;
result: lat: 37.330002
Even converting the number to an int, and then back to a float, doesn't get rid of the numbers right on the end.