Google Classroom
GeoGebraGeoGebra Classroom

4-bar linkages: drag and play

  1. Find a set of lengths for the bars AB, BC, AD and CD such that the point E is moving on a straight line (not necessarily on its full movement, just partially). This is not possible.
  2. Learn the order of the appearing curves. They are sextics.
  3. Construct Chebyshev's linkage (1854) by choosing suitable lengths for the bars. AB=4, BC=AD=5, CD=2.
  4. Construct Watt's linkage by putting B=(7,-2) and choosing BC=AD=4 and CD=2.

Sánchez's trick

It is a bit tricky to disallow moving D over the possible domain. Here is how you can achieve that in GeoGebra:
  1. Define a variable to store the path parameter for D in a variable, by entering say ppd=PathParameter[D].
  2. Type i=1.
  3. Make sure that point C is defined as C=Intersect[c,e,i].
  4. You need to edit the Scripting/On Update setting for the point D by using the following piece of code:
  5. if (ggbApplet.getValue("x(E)")) { var ppD = ggbApplet.getValue("ppD"); ggbApplet.evalCommand("ppDok="+ppD); } else { var ppDok = ggbApplet.getValue("ppDok"); ggbApplet.evalCommand("SelectObjects[]"); ggbApplet.evalCommand("SetValue[D,Point[d,"+ppDok+"]]"); ggbApplet.evalCommand("SetValue[i,3-i]"); }
Now the variable ppD will store the current position of D. The script also helps storing a valid value of it as ppDok. The variable i stores the current branch to play with (by dragging D). This trick was created by using J.-V. Sánchez's idea.