with(plots):u := x^3-3*x*y^2-4*x*y-x+y+3;
v := 3*x^2*y-y^3+2*x^2-2*y^2-x-y;window := -2..2:
display(
implicitplot(u=0, x=window, y=window, thickness=2, numpoints=2000, color=blue),
implicitplot(v=0, x=window, y=window, thickness=2, numpoints=2000, color=red));window := -10..10:
display(
implicitplot(u=0, x=window, y=window, thickness=2, numpoints=2000, color=blue),
implicitplot(v=0, x=window, y=window, thickness=2, numpoints=2000, color=red));window := -40..40:
display(
implicitplot(u=0, x=window, y=window, thickness=2, numpoints=2000, color=blue),
implicitplot(v=0, x=window, y=window, thickness=2, numpoints=2000, color=red));restart:interface(showassumed=0):
with(plots):
RotatedBasketball := proc(theta,f,N,NP)
local x,y,RE,IM,RealPlot,ImagPlot:
assume(x,real): assume(y,real):
RE := Re(expand((cos(theta)+I*sin(theta))*f(x+I*y))):
IM := Im(expand((cos(theta)+I*sin(theta))*f(x+I*y))):
RealPlot := implicitplot(RE=0, x=-N..N, y=-N..N, color=blue,
axes=none, numpoints=NP, thickness=2, scaling=constrained):
ImagPlot := implicitplot(IM=0, x=-N..N, y=-N..N, color=red,
axes=none, numpoints=NP, thickness=2, scaling=constrained):
display(RealPlot,ImagPlot):
end:f := z -> z^5+I*z^2+(1-2*I)*z-3;RotatedBasketball(0,f,3,2000);f := z -> z^5+z+1;
RotatedBasketball(0,f,3,2000);f := z -> z^5+6*z^3+3*z^2+5*z-2;
RotatedBasketball(0,f,3,2000);f := z -> z^5+z^4+I*z^3-z^2-(I+1)*z;
RotatedBasketball(0,f,3,2000);RB := theta -> RotatedBasketball(theta,f,2,10000):animate( RB, [theta], theta=0..Pi, frames=100);