compute pattern offsets at edge level