only transform coordinates if we have to, catch/throw exception on failure (#63)