こんにちは、ちょっとややこしい雰囲気になるかもしれませんが、一つの方法としては、
ラック&ピニオンの拘束を使うとできると思います。
考え方としては、直動をそれぞれに配置して、別々に自由度を持つように設定するところまでは、想像頂いた通りで、
そこから直動同士をどう連動させるかですが、添付の方式が一つのアイディアです。
他にもあるかもしれませんが、参考になりましたら幸いです。

Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!