In [1]:
var('u v')
Out[1]:
(u, v)
In [2]:
def ploha(u,v):
    yk=-2/15*cos(u)*(3*cos(v)-30*sin(u)+90*cos(u)^4*sin(u)-60*cos(u)^6*sin(u)+5*cos(u)*cos(v)*sin(u))
    zk=1/15*sin(u)*(3*cos(v)-3*cos(u)^2*cos(v)-48*cos(u)^4*cos(v)+48*cos(u)^6*cos(v)-60*sin(u)+5*cos(u)*cos(v)*sin(u)
                         -5*cos(u)^3*cos(v)*sin(u)-80*cos(u)^5*cos(v)*sin(u)+80*cos(u)^7*cos(v)*sin(u))
    xk=2/15*(3+5*cos(u)*sin(u))*sin(v)
    return xk,yk,zk
In [3]:
def klein1(u,v):
    x = 4*(1-cos(u)/2)*cos(u)*cos(v)+6*cos(u)*(1+sin(u))
    y = 4*(1-cos(u)/2)*sin(u)*cos(v)+16*sin(u)
    z = 4*(1-cos(u)/2)*sin(v)
    return x,y,z
In [4]:
def klein2(u,v):
    x = 4*(1-cos(u)/2)*cos(v+pi)+6*cos(u)*(1+sin(u))
    y = 16*sin(u)
    z = 4*(1-cos(u)/2)*sin(v)
    return x,y,z
In [5]:
slika2=parametric_plot3d(klein1(u,v),(u,0,pi), (v,0,2*pi), plot_points=80, color='lemonchiffon')
slika3=parametric_plot3d(klein2(u,v),(u,pi,2*pi), (v,0,2*pi), plot_points=80, color='lemonchiffon')
In [6]:
(slika2+slika3).show(viewer='threejs',online=True,frame=False)
In [ ]: