Maya has a feature called preserve texture. It allows you to transform vertices of an object and basically have the texture "stay in place" in object space. Say I have a plane with unwrapped uvs. With the default implementation if I scale that plane the uv coordinates stay the same, and thus the texture scales with the plane. However with this feature the texture would stay the same size. The texture stays in place also when translating and rotating.
Does this work by transforming the corresponding uvs when we transform the vertices? If so how does one calculate the transformation needed for the corresponding uvs?