With CFrame, in order to get a part to move in a certain direction based on it's rotation, I found that I can do CFrame(position)*CFrame(offset) but is there a way to get the offset of the part based on the original position?
Assuming position, offset and newPosition are CFrame
values:
position * offset = newPosition -- The formula you stated on your post
From that formula, we get:
offset = position:inverse() * newPosition