Penelope Cruz topless with camera at a beach in Virgin Islands