I don't understand why this cannot be done ,
One just had to calculate the vector and displace cube by said amount . I think I'm missing something ?
Really, the piece that drove me to eventually give up was getting a vertex or edge to be selected, rather than the whole object. Its not difficult to calculate for simple shapes, but what is really needed is a general solution, that doesn't depend on shapes being regular polygons.