Puoi aprire il codice e modificare la funzione: vedi l'Help
You can open the Code and modify the function: see the Help
HELP

function f(x) { y = 1/0; return y }
...
aX = -2; bX = 4; aY = -2.5; bY = 3.5
Dx = 0.5; Dy = 0.5
...
degrees = Math.PI/180
function di(x,y) {if(x==0) {z=270; if(y>0) {z=90}}; if(x<0) {z=Math.atan(y/x)/degrees+180}; if(x>0) {z=Math.atan(y/x)/degrees} ; return z}
a0 = 100*degrees*(1+(Math.random()-0.55)); r0 = 1.2+(Math.random()-0.6)
x0 = 1; y0 = 0; r1 = r0; x1 = x0; y1 = y0
function F(x) {y=x0+r0*Math.cos(x); return y}; function G(x) {y=y0+r0*Math.sin(x); return y}
Qx=[1]; Qy=[0]
Lx=[1,1+r0*Math.cos(a0)]; Ly=[0,r0*Math.sin(a0)]
t1 = a0; t2 = a0+120*degrees
x0 = Math.cos(240*degrees); y0 = Math.sin(240*degrees)
d0 = di(1+r0*Math.cos(a0+120*degrees)-x0,r0*Math.sin(a0+120*degrees)-y0); d0=d0*degrees
r0 = Math.sqrt(Math.pow(x0-1-r0*Math.cos(a0+120*degrees),2)+Math.pow(y0-r0*Math.sin(a0+120*degrees),2))
t1 = d0; t2 = d0+120*degrees
L3x=[x1+r1*Math.cos(a0),Math.cos(120*degrees),x0+r0*Math.cos(d0+120*degrees)]
L3y=[y1+r1*Math.sin(a0),Math.sin(120*degrees),y0+r0*Math.sin(d0+120*degrees)]
L4x=[1+r1*Math.cos(a0), 1, 1+r1*Math.cos(a0+120*degrees), x0, x0+r0*Math.cos(d0+120*degrees), Math.cos(120*degrees)]
L4y=[0+r1*Math.sin(a0), 0, 0+r1*Math.sin(a0+120*degrees), y0, y0+r0*Math.sin(d0+120*degrees), Math.sin(120*degrees)]
C3=C4=C5=C6=C7="blue"
L5x=[( L4x[0] -1)*Math.cos(120*degrees)- L4y[0]*Math.sin(120*degrees)+1,
     ( L4x[1] -1)*Math.cos(120*degrees)- L4y[1]*Math.sin(120*degrees)+1,
     ( L4x[2] -1)*Math.cos(120*degrees)- L4y[2]*Math.sin(120*degrees)+1,
     ( L4x[3] -1)*Math.cos(120*degrees)- L4y[3]*Math.sin(120*degrees)+1,
     ( L4x[4] -1)*Math.cos(120*degrees)- L4y[4]*Math.sin(120*degrees)+1,
     ( L4x[5] -1)*Math.cos(120*degrees)- L4y[5]*Math.sin(120*degrees)+1,
     ( L4x[0] -1)*Math.cos(120*degrees)- L4y[0]*Math.sin(120*degrees)+1]
L5y=[( L4x[0] -1)*Math.sin(120*degrees)+ L4y[0]*Math.cos(120*degrees),
     ( L4x[1] -1)*Math.sin(120*degrees)+ L4y[1]*Math.cos(120*degrees),
     ( L4x[2] -1)*Math.sin(120*degrees)+ L4y[2]*Math.cos(120*degrees),
     ( L4x[3] -1)*Math.sin(120*degrees)+ L4y[3]*Math.cos(120*degrees),
     ( L4x[4] -1)*Math.sin(120*degrees)+ L4y[4]*Math.cos(120*degrees),
     ( L4x[5] -1)*Math.sin(120*degrees)+ L4y[5]*Math.cos(120*degrees),
     ( L4x[0] -1)*Math.sin(120*degrees)+ L4y[0]*Math.cos(120*degrees)]
L6x=[( L3x[0] -1)*Math.cos(120*degrees)- L3y[0]*Math.sin(120*degrees)+1,
     ( L3x[1] -1)*Math.cos(120*degrees)- L3y[1]*Math.sin(120*degrees)+1,
     ( L3x[2] -1)*Math.cos(120*degrees)- L3y[2]*Math.sin(120*degrees)+1]
L6y=[( L3x[0] -1)*Math.sin(120*degrees)+ L3y[0]*Math.cos(120*degrees),
     ( L3x[1] -1)*Math.sin(120*degrees)+ L3y[1]*Math.cos(120*degrees),
     ( L3x[2] -1)*Math.sin(120*degrees)+ L3y[2]*Math.cos(120*degrees)]
L7x=[( L5x[0] -1)*Math.cos(120*degrees)- L5y[0]*Math.sin(120*degrees)+1,
     ( L5x[1] -1)*Math.cos(120*degrees)- L5y[1]*Math.sin(120*degrees)+1,
     ( L5x[2] -1)*Math.cos(120*degrees)- L5y[2]*Math.sin(120*degrees)+1,
     ( L5x[3] -1)*Math.cos(120*degrees)- L5y[3]*Math.sin(120*degrees)+1,
     ( L5x[4] -1)*Math.cos(120*degrees)- L5y[4]*Math.sin(120*degrees)+1,
     ( L5x[5] -1)*Math.cos(120*degrees)- L5y[5]*Math.sin(120*degrees)+1,
     ( L5x[0] -1)*Math.cos(120*degrees)- L5y[0]*Math.sin(120*degrees)+1]
L7y=[( L5x[0] -1)*Math.sin(120*degrees)+ L5y[0]*Math.cos(120*degrees),
     ( L5x[1] -1)*Math.sin(120*degrees)+ L5y[1]*Math.cos(120*degrees),
     ( L5x[2] -1)*Math.sin(120*degrees)+ L5y[2]*Math.cos(120*degrees),
     ( L5x[3] -1)*Math.sin(120*degrees)+ L5y[3]*Math.cos(120*degrees),
     ( L5x[4] -1)*Math.sin(120*degrees)+ L5y[4]*Math.cos(120*degrees),
     ( L5x[5] -1)*Math.sin(120*degrees)+ L5y[5]*Math.cos(120*degrees),
     ( L5x[0] -1)*Math.sin(120*degrees)+ L5y[0]*Math.cos(120*degrees)]