Jansen Linkage for Robot Motion in C++ ImGui

Markus Buchholz
3 min readFeb 26


Human being often thinks out of the box therefore our life is exposed to changes and many inspiration projects. Since some of my previous articles discuss motion and linkages, that transfer rotational motion to linear or other complex forms of movement, this time I will illustrate Jansen linkage which was pioneered by Theo Jensen. His works focus on designing several kinetic sculptures (robots), which mimic organic motion.

There exist several brilliant websites where you can be inspired by the design and usage. Some are here (Theo Jansen web) and here.

The main goal of the following article is to simulate the Jansen linkage motion in C++.
The introduction to the C++ ImGui and information on how to compile and build programs you will find in one of my previous articles.

The source code is on my GitHub.

Jansen linkage model

The kinematical model of discussed linkage can be described as follows,

Kinematics of Jansen linkage (by author)

The mathematical relations which I used in the C++ program can be served as follows,





Here I plotted point G. In the Jansen kinetic sculptures is the point that has contact with the ground. The combination of several similar legs provides linear motion to the rigid body. The motion of point G is transferred to the rotational motion of point A.

Position of point G in Jansen linkage (by author).

I simulated also motion in C++ ImGui. Here is the result.

Jansen linkage. Motion (by author)

Thank you for reading.