Peppa Pig on Non-Orientable Smooth Manifold
Peppa Pig on Non-Orientable Smooth Manifold
Author: Shenghui Yang
Test code on small samples:
Test code on small samples:
In[]:=
Withsurf=SurfaceData,"ParametricEquations"[1],TableWithpic=GraphicsGridConstantArrayRotate
,kDegree,{9,2},Rasterize@ParametricPlot3D[surf[u,v],{u,-0.5,0.5},{v,-π,π},PlotStyleDirective[Texture[pic]],MeshStyleOpacity[0.05],AxesNone,BoxedFalse,ColorFunctionGrayLevel[0.8],PlotPoints25,ViewPoint{1.5,-0.5,1.5}],{k,{0,45,90}}
Out[]=
,
,
To generate the first gif in the post:
To generate the first gif in the post:
res1=Withsurf=SurfaceData,"ParametricEquations"[1],TableWithpic=GraphicsGridConstantArrayRotate
,kDegree,{9,2},Rasterize@ParametricPlot3D[surf[u,v],{u,-0.5,0.5},{v,-π,π},PlotStyleDirective[Texture[pic]],MeshStyleOpacity[0.05],AxesNone,BoxedFalse,ColorFunctionGrayLevel[0.8],PlotPoints25,ViewPoint{1.5,-0.5,1.5}],{k,Range[0,360,8]~Join~Reverse[Range[0,360,8]]}
In[]:=
Export["anim.gif",res1]
Out[]=
anim.gif
To generate rotating Peppa on a cylinder - animation
To generate rotating Peppa on a cylinder - animation
res2=TableWithsurf={Cos[#1],Sin[#1],#2}&,pic=GraphicsGridConstantArrayRotate
,kDegree,{2,8},Rasterize@ParametricPlot3D[surf[u,v],{u,0,2π},{v,-1,1},PlotStyleDirective[Texture[pic]],MeshStyleOpacity[0.05],AxesNone,BoxedFalse,ColorFunctionGrayLevel[0.8]],{k,Range[0,360,8]~Join~Reverse[Range[0,360,8]]};
In[]:=
Export["anim2.gif",res2]
Out[]=
anim2.gif
To generate Peppa flow on Möbius
To generate Peppa flow on Möbius
res3=Withsurf=SurfaceData,"ParametricEquations"[1],pic=GraphicsGridConstantArrayRotate
,10Degree,{9,2},Table[Rasterize@ParametricPlot3D[surf[u,v],{u,-0.5,0.5},{v,-π+k,π+k},PlotStyleDirective[Texture[pic]],MeshStyleOpacity[0.05],AxesNone,BoxedFalse,ColorFunctionGrayLevel[0.8],PlotPoints25,ViewPoint{1.5,-0.5,1.5}],{k,Range[0,2π,π/20]~Join~Reverse[Range[0,2π,π/20]]}];
To generate Peppa and Wendy texture on Möbius - one frame
To generate Peppa and Wendy texture on Möbius - one frame
res4=Withsurf=SurfaceData,"ParametricEquations"[1],pic=GraphicsGridTranspose@ConstantArrayRotate
,10Degree,12,ConstantArray
,12,Table[ParametricPlot3D[surf[u,v],{u,-0.5,0.5},{v,-π+k,π+k},PlotStyleDirective[Texture[pic]],MeshStyleOpacity[0.05],AxesNone,BoxedFalse,ColorFunctionGrayLevel[0.8],PlotPoints25,ViewPoint{-9,-2,-5}],{k,{0}}];
To generate peppa vs wendy wolf flow on mobius - animation
To generate peppa vs wendy wolf flow on mobius - animation
In[]:=
res5=Withsurf=SurfaceData,"ParametricEquations"[1],pic=GraphicsGridTranspose@ConstantArrayRotate
,10Degree,12,ConstantArray
,12,Table[ParametricPlot3D[surf[u,v],{u,-0.5,0.5},{v,-π+k,π+k},PlotStyleDirective[Texture[pic]],MeshStyleOpacity[0.05],AxesNone,BoxedFalse,ColorFunctionGrayLevel[0.8],PlotPoints25,ViewPoint{-9,-2,-5}],{k,Range[0,3π,π/20]~Join~Reverse[Range[0,3π,π/20]]}];
In[]:=
Export["anim5.gif",res5]
Out[]=
anim5.gif