pinhole paths support a translation function too