IPhoto
iPhoto ( http://www.apple.com/ilife/iphoto/ ) is a photo management application for Mac OS X. Part of the iLife suite
You can organise photos in a library by 'Places', which displays them located on a map, and guess what? you can use OpenStreetMap!
Changing code of IPhoto - Map: showing OSM Map instead of googlemaps:
File to change: '/Applications/iPhoto.app/Contents/Resources/googleMap.html'
add code: redefining of variable G_PHYSICAL_MAP in function useTerrainMap():
function useTerrainMap()
{
if (gMap.getCurrentMapType() != G_PHYSICAL_MAP)
{var G_PHYSICAL_MAP
copyOSM = new GCopyrightCollection("<a href=\"http://www.openstreetmap.org/\">OpenStreetMap</a>");
copyOSM.addCopyright(new GCopyright(1, new GLatLngBounds(new GLatLng(-90,-180), new GLatLng(90,180)), 0, " "));
tilesMapnik = new GTileLayer(copyOSM, 1, 17, {tileUrlTemplate: 'http://tile.openstreetmap.org/{Z}/{X}/{Y}.png'});
G_PHYSICAL_MAP = new GMapType([tilesMapnik], G_NORMAL_MAP.getProjection(), "OpenStreetMap");
gMap.setMapType(G_PHYSICAL_MAP);
}
return false;
}
Note
This is only valid for iPhoto that follows iLife '09 or later. Older versions of iPhoto might not have this function.
Currently (August 2010), photos tagged in iPhoto or resaved from Preview have their coordinates rounded to 0.01'. This can introduce location error greater than the uncertainty from a GPS unit.