@interact
def plotKnot(s1=slider(1,29,step_size=1,default=2, label="p"), s2=slider(1,29,step_size=1, default=3, label="q"),opac=slider(0.1,1,step_size=0.05,default=0.85,label="Torus Opacity"),chkBox=("Show Torus",False),frame=("Show Frame",False)):
p1 = parametric_plot3d(T(r=1,R=2), (u,0,2*pi), (v,0,2*pi),opacity=opac, color='yellow',aspect_ratio=1,frame=False)
p2 = parametric_plot3d(generalKnot(r=1,R=2, p=s1,q=s2), (t,0,1), thickness=6, color='purple',frame=frame,aspect_ratio=1)
if chkBox == True:
(p1+p2).show()
else:
p2.show()