Simulador del mecanismo de Theo Jansen
Author: Jesús Fernández

El deslizador t sirve para mover todo el mecanismo. Los demás para modificarlo.

Es interesante modificar los deslizadores y probar el efecto que hacen en el mecanismo.

Mecanismo de Theo Jansen
completamente configurable.
El deslizador t hace que se mueva
el conjunto

a = 2.2999999999999994 (slider from 1 to 8, step 0.1)
t = 0.5585053606381855 rad (slider from 0 to 6.283185307179586, step 0.017453292519943295)
b = 0.40000000000000013 (slider from 0.1 to 5, step 0.1)
c1 = 1.6000000000000005 (slider from 0.1 to 5, step 0.1)
c2 = 1 (slider from 0.4 to 5, step 0.1)
c3 = 1.5999999999999996 (slider from 1 to 5, step 0.1)
c4 = 1 (slider from 0.4 to 5, step 0.1)
A = (2, 4)
B = Point(Circle[A, a])
c = Segment(A, B)
C = Midpoint(c)
B' = Rotate(B, t, C)
β = Angle(B, C, B')
d = Circle(C, b)
e = Segment(C, B')
D = Intersect(d, e, 1.0)
f = Circle(D, c1)
g = Circle(A, c2)
E = Intersect(f, g, 2.0)
h = Segment(D, E)
i = Segment(A, E)
j = OrthogonalLine(A, i)
F = Intersect(g, j, 2.0)
k = Segment(A, F)
p = Circle(D, c3)
q = Circle(A, c4)
G = Intersect(p, q, 1.0)
l = Segment(A, G)
m = Line(G, k)
n = Line(F, l)
H = Intersect(m, n)
r = OrthogonalLine(G, m)
s = Segment(D, G)
b1 = Segment(H, G)
e1 = OrthogonalLine(G, b1)
I = Point(e1)
t_1 = Segment(G, I)
d1 = Circle(D, c1)
f1 = Circle(B, c2)
J = Intersect(d1, f1, 1.0)
a1 = Segment(D, J)
g1 = Segment(B, J)
h1 = Circle(D, c3)
k1 = Circle(B, c4)
K = Intersect(h1, k1, 2.0)
p1 = Circle(B, c2)
i1 = OrthogonalLine(B, g1)
L = Intersect(p1, i1, 1.0)
j1 = Segment(B, L)
l1 = Segment(B, K)
m1 = Line(L, l1)
n1 = Line(K, j1)
q1 = OrthogonalLine(K, n1)
M = Point(q1)
N = Intersect(m1, n1)
r1 = Segment(K, M)
s1 = Segment(D, K)
d2 = Circle(B, c2)
h2 = Circle(B, c4)
O = Rotate(D, 240.00000000000003°, C)
γ = Angle(O, C, D)
t1 = Circle(O, c1)
e2 = Circle(A, c2)
P = Intersect(t1, e2, 2.0)
a2 = Segment(O, P)
b2 = Segment(A, P)
f2 = OrthogonalLine(A, b2)
Q = Intersect(e2, f2, 2.0)
g2 = Segment(A, Q)
k2 = Circle(O, c3)
p2 = Circle(A, c4)
R = Intersect(k2, p2, 1.0)
i2 = Segment(O, R)
j2 = Segment(A, R)
l2 = Line(R, k)
m2 = OrthogonalLine(R, l2)
n2 = Line(R, g2)
q2 = Line(Q, j2)
S = Intersect(n2, q2)
r2 = OrthogonalLine(R, n2)
T = Point(r2)
s2 = Segment(R, T)
t2 = Circle(O, c1)
d3 = Circle(B, c2)
U = Intersect(t2, d3, 1.0)
a3 = Segment(O, U)
b3 = Segment(B, U)
e3 = OrthogonalLine(B, b3)
V = Intersect(p1, e3, 1.0)
f3 = Circle(O, c3)
g3 = Circle(B, c4)
W = Intersect(f3, g3, 2.0)
h3 = Segment(B, W)
i3 = Line(V, h3)
j3 = Segment(B, V)
k3 = Line(W, j3)
l3 = OrthogonalLine(W, k3)
Z = Point(l3)
A1 = Intersect(i3, k3)
m3 = Segment(O, W)
n3 = Segment(W, Z)
p3 = Segment(V, A1)
q3 = Segment(A1, W)
r3 = Segment(A1, Z)
s3 = Segment(U, V)
t3 = Segment(J, L)
a4 = Segment(N, K)
b4 = Segment(N, L)
d4 = Segment(N, M)
e4 = Segment(E, F)
f4 = Segment(R, S)
g4 = Segment(S, T)
h4 = Segment(Q, S)
i4 = Segment(F, H)
j4 = Segment(H, I)
k4 = Segment(P, Q)